108 lines
3.3 KiB
C#
108 lines
3.3 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;
|
|
private BodyModuleSystem _bodyModuleSystem;
|
|
|
|
#endregion
|
|
|
|
#region 状态
|
|
|
|
public bool isScanning;
|
|
public bool isPlaying;
|
|
public bool canScan;
|
|
|
|
#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();
|
|
|
|
_deepinButton.OnButtonDown += HandleDeepInButtonClick;
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
_deepinButton.CheckButtonClick();
|
|
}
|
|
|
|
public void MessageBoxSetError()
|
|
{
|
|
_state.text = "错误";
|
|
_state.color = Color.red; // 红色
|
|
// _screenText.text = message;
|
|
// _screenText.color = Color.white; // 默认文本颜色
|
|
}
|
|
|
|
private void HandleDeepInButtonClick()
|
|
{
|
|
_bodyModuleSystem.HandleDeepIn();
|
|
}
|
|
|
|
public void MessageBoxSetWarning()
|
|
{
|
|
_state.text = "警告";
|
|
_state.color = new Color(1.0f, 0.55f, 0.0f); // 琥珀色
|
|
// _screenText.text = message;
|
|
// _screenText.color = Color.white; // 默认文本颜色
|
|
}
|
|
public void MessageBoxSetNormal()
|
|
{
|
|
_state.text = "正常";
|
|
_state.color = Color.blue; // 琥珀色
|
|
// _screenText.text = message;
|
|
// _screenText.color = Color.white; // 默认文本颜色
|
|
}
|
|
public void MessageBoxSetChecking()
|
|
{
|
|
_state.text = "检查中";
|
|
_state.color = Color.white; // 琥珀色
|
|
// _screenText.text = string.Empty;
|
|
// _screenText.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);
|
|
|
|
}
|
|
}
|
|
} |