using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GameObjectTips : MonoBehaviour
{
[Header("需要被跟随的物体")]
public Transform TargetGameobject;
[Header("跟随物体的UI")]
public RectTransform TargetIndicateTips;
public Camera UI_Camera;
public Canvas UI_Canvas;
public float yAxisoffset = 20;
bool isFollow;
void Update()
{
if (isFollow)
{
UpdateNamePosition();
}
}
void UpdateNamePosition()
{
if (TargetGameobject==null)
{
return;
}
Vector2 mouseDown = Camera.main.WorldToScreenPoint(TargetGameobject.transform.position);
Vector2 mouseUGUIPos = new Vector2();
bool isRect = RectTransformUtility.ScreenPointToLocalPointInRectangle(UI_Canvas.transform as RectTransform, mouseDown, UI_Camera, out mouseUGUIPos);
if (isRect)
{
TargetIndicateTips.anchoredPosition = new Vector2(mouseUGUIPos.x, mouseUGUIPos.y + yAxisoffset);
}
}
public void FollowTarget(Transform _Target,bool _FollowState)
{
isFollow = _FollowState;
TargetIndicateTips.gameObject.SetActive(isFollow);
if (isFollow)
{
TargetGameobject = _Target;
}
else
{
TargetGameobject = null;
}
}
public void FollowTarget(bool _FollowState)
{
isFollow = _FollowState;
if (_FollowState)
{
}
else
{
TargetIndicateTips.gameObject.SetActive(isFollow);
}
}
}
|