using TMPro; using UnityEngine; using DG.Tweening; using System.Collections; namespace AibisDream.FixSystem { public class OscilloscopeSystem : MonoBehaviour { #region 旧的组件索引 private TMP_Text _state; // 显示状态的TextMeshPro组件 private TMP_Text _screenText; // 显示消息的TextMeshPro组件 private SpriteButton _deepinButton; #endregion private void Awake() { FixSystemCenter.SystemDic.Register(this); InitComponentRefs(); } private void InitComponentRefs() { _screenText = transform.Find("Screen Text").GetComponent(); _state = transform.Find("Screen State Text").GetComponent(); _deepinButton = new SpriteButton(transform.Find("Deepin Button").gameObject, false); MessageBoxSetNull(); } private void Update() { _deepinButton.CheckButtonClick(); } #region 旧显示屏接口 public void MessageBoxSetError() { _state.text = "错误"; _state.color = Color.red; // 红色 } public void MessageBoxSetWarning() { _state.text = "警告"; _state.color = new Color(1.0f, 0.55f, 0.0f); // 琥珀色 } public void MessageBoxSetNormal() { _state.text = "正常"; _state.color = Color.blue; // 琥珀色 } public void MessageBoxSetChecking() { _state.text = "检查中"; _state.color = Color.white; // 琥珀色 } public void MessageBoxSetText(string text) { _screenText.color = Color.white; // 默认文本颜色 _screenText.text += text + "
"; } public void MessageBoxSetNull() { _state.text = "未检测到信号"; _state.color = Color.white; // 蓝色 _screenText.text = ""; _screenText.color = Color.white; // 默认文本颜色 } public IEnumerator EnableDeepInButton() { yield return _deepinButton.GetTransform().DOLocalMoveX(0.35f, 0.5f).WaitForCompletion(); _deepinButton.SetActive(true); } public IEnumerator DisableDeepInButton() { yield return _deepinButton.GetTransform().DOLocalMoveX(-0.2f, 0.5f).WaitForCompletion(); _deepinButton.SetActive(false); } #endregion } // // public struct }