using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine; using DG.Tweening; public class ClampAmmetersInteractive : MonoBehaviour { public bool isInteractive; public GameObject g1; public string selChildName; public float linearMeasure;//默认的大小 public List floats; public string Fuan; public string unit; private void Start() { if (!transform.GetComponent()) { transform.AddComponent(); } //Fuan = ClampAmmetersManager.Instance.Init(selChildName); } [ContextMenu("运行")] public void Init() { //g1 = transform.GetChild(0).GetComponent().gameObject; //selChildName = g1.name; Fuan = ClampAmmetersManager.Instance.Init(selChildName); } private void OnMouseDown() { //Debug.Log("ok"); if (GameManager.Instance.temp == null) return; if (GameManager.Instance.temp.transform.name.Equals("钳形电流表(Clone)")) { if (g1) { GameManager.Instance.DianFuIm.gameObject.SetActive(true); GameManager.Instance.temp.transform.parent = g1.transform; GameManager.Instance.temp.transform.DOLocalRotate(new Vector3(47.52f, 0, 53.88f), 0.25f); GameManager.Instance.temp.transform.DOScale(new Vector3(50, 50, 50), 0.25f); GameManager.Instance.temp.transform.DOLocalMove(new Vector3(1.42f, -6.02f, 8.35f), 0.25f); float abs = Mathf.Abs(GameManager.Instance.QianStopValve.currentValue); if (abs >= 1 && abs <= 3) { float dianyliu = float.Parse(Fuan); GameManager.Instance.DianFuTex.text = dianyliu + " " + unit; } else { GameManager.Instance.DianFuTex.text = "-" + unit; } for (int i = 0; i < floats.Count; i++) { if (floats[(int)(GameManager.Instance.QianStopValve.Sum / 10)] > linearMeasure) { GetComponent().CompletedorNot = true; } } } } if (GameManager.Instance.temp.transform.name.Equals("钳形电流表_大(Clone)")) { if (g1) { GameManager.Instance.DianFuIm.gameObject.SetActive(true); GameManager.Instance.temp.transform.parent = g1.transform; GameManager.Instance.temp.transform.DOLocalRotate(new Vector3(207.21f, -257.72f, -135.6f), 0.25f); GameManager.Instance.temp.transform.DOScale(new Vector3(15, 15, 15), 0.25f); GameManager.Instance.temp.transform.DOLocalMove(new Vector3(-0.2f, -2.8f, 1.02f), 0.25f); float dianyliu = float.Parse(Fuan); GameManager.Instance.DianFuTex.text = dianyliu + " " + unit; for (int i = 0; i < floats.Count; i++) { if (floats[(int)(GameManager.Instance.QianStopValve.Sum / 10)] > linearMeasure) { GetComponent().CompletedorNot = true; } } } } } private void Update() { if (Input.GetKeyDown("t")) { Debug.Log(GameManager.Instance.DianFuTex.text + "==== GameManager.Instance.DianFuTex.text"); } } }