using UnityEngine; using UnityEngine.EventSystems; using DG.Tweening; namespace XDG_Scene { public class XDG_TipFollow : MonoBehaviour, IPointerClickHandler { public Transform m_FollowObj; public Vector3 m_Offset; public Transform _movePos; void Start() { } // Update is called once per frame void Update() { if (m_FollowObj != null) { Vector3 screenPos = Camera.main.WorldToScreenPoint(m_FollowObj.position); if (screenPos.z > 0) { screenPos.z = 0; transform.position = screenPos + m_Offset; } else { transform.position = new Vector3(8888, 8888, 8888); } if (GameManager.Instance) { float distance = Vector3.Distance(m_FollowObj.transform.position, Camera.main.transform.position); if ( distance > 15 && GameManager.Instance.isShowUI)//Ui显示隐藏 { transform.localScale = Vector3.one * 2.1f; } else { transform.localScale = Vector3.zero; } } } } public void OnPointerClick(PointerEventData eventData) { if (_movePos) SceneLoader.instance.Movement(_movePos); } } }