| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class ShuiWeiCtrl : MonoBehaviour{    private RectTransform rect;    private Camera _camera;        private Text valueText;    private Text nameText;        public Transform targetTransForm;        public void Init()    {        _camera = CameraManager.instance.mainCamera;        rect = this.GetComponent<RectTransform>();        rect.anchoredPosition = new Vector2(2000, 0);        valueText = this.transform.Find("valueText").GetComponent<Text>();        nameText = this.transform.Find("nameText").GetComponent<Text>();    }    public void SetData(string name,string swValue,Transform target)    {        nameText.text = name;        string swStr = swValue.ToString();        if (swStr.Equals(""))        {            swStr = "-";        }        valueText.text = $"{swStr} <size=12><color=FFFFFF>m</color></size>";        targetTransForm = target;    }        void Update()    {        if (targetTransForm != null)        {            if (IsObjectInCameraView(targetTransForm, _camera))            {                rect.transform.position=_camera.WorldToScreenPoint(targetTransForm.position);            }            else            {                rect.transform.position = new Vector3(2000, 0, 0);            }        }    }        bool IsObjectInCameraView(Transform objectTransform, Camera camera)    {        Vector3 objectScreenPosition = camera.WorldToScreenPoint(objectTransform.position);        return objectScreenPosition.z > 0 &&               objectScreenPosition.x > 0 &&               objectScreenPosition.x < Screen.width &&               objectScreenPosition.y > 0 &&               objectScreenPosition.y < Screen.height;    }}
 |