using BigSpace.Logic; using BigSpace.XRCore.Base; using BigSpace.XRCore.Event; using System.Collections; using System.Collections.Generic; using UnityEngine; public class ArrowMgr : MonoSingleton { public Transform m_arrow; public Transform m_target; bool isRun = false; // Start is called before the first frame update void Start() { GlobalEventMgr.Listen(GameEvent.EventShowLeavePlayByPosition, GameDataManage_EventShowLeavePlayByPosition); GlobalEventMgr.Listen(GameEvent.EventShowCheckLeavePlay, GameDataManage_EventShowCheckLeavePlay); GlobalEventMgr.Listen(GameEvent.EventHideLeavePlay, GameDataManage_EventHideLeavePlay); } // Update is called once per frame void Update() { if (isRun) { if (m_target != null) m_arrow.LookAt(m_target); } } private void GameDataManage_EventShowLeavePlayByPosition(Vector3 v3) { m_arrow.gameObject.SetActive(true); LinerMgr.Instance.ShowArrow(true, m_target); isRun = true; } //Ö÷¶¯¼ì²â³ö½ç private void GameDataManage_EventShowCheckLeavePlay(int index) { m_arrow.gameObject.SetActive(true); LinerMgr.Instance.ShowArrow(true, m_target); isRun = true; } private void GameDataManage_EventHideLeavePlay() { m_arrow.gameObject.SetActive(false); LinerMgr.Instance.ShowArrow(false, m_target); isRun = false; } }