Files
aibis-dream/Assets/Scripts/FixSystemNew/BodyModule/OscilloscopeSystem.cs
T
2025-01-12 11:43:02 +08:00

95 lines
2.6 KiB
C#

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<TMP_Text>();
_state = transform.Find("Screen State Text").GetComponent<TMP_Text>();
_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 + "<br>";
}
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
}