资源清理
This commit is contained in:
@@ -59,13 +59,6 @@ namespace AibisDream.FixSystem
|
||||
|
||||
public void PlugIn()
|
||||
{
|
||||
// // 插入就在示波器显示图片
|
||||
// if (!_bodyModuleSystem.inHotErr)
|
||||
// {
|
||||
// StartCoroutine(FixSystemCenter.SystemDic.Get<IOscilloscopeSystem>()
|
||||
// ?.ShowScanImage(data.ScreenPic, data.checkPoints));
|
||||
// }
|
||||
|
||||
if (DialogController.Instance)
|
||||
// 然后触发Yarn节点
|
||||
DialogController.Instance.StartDialogNode(_bodyModuleSystem.inHotErr ? "系统发热" : data.PlugInNodeName);
|
||||
@@ -73,12 +66,6 @@ namespace AibisDream.FixSystem
|
||||
|
||||
public void PlugOut()
|
||||
{
|
||||
FixSystemCenter.SystemDic.Get<IOscilloscopeSystem>()?.HideScanImage();
|
||||
|
||||
_bodyModuleSystem.oscilloscopeSystem.MessageBoxSetNull();
|
||||
StartCoroutine(_bodyModuleSystem.oscilloscopeSystem.DisableDeepInButton());
|
||||
|
||||
// TODO 触发Yarn节点(似乎目前没有拔出对话?)
|
||||
}
|
||||
|
||||
public void DeepIn()
|
||||
@@ -169,7 +156,6 @@ namespace AibisDream.FixSystem
|
||||
[Header("功能参数")] public bool cantStopRunning;
|
||||
|
||||
public string showPicPath;
|
||||
public CheckPoint[] checkPoints;
|
||||
|
||||
// 只读
|
||||
[JsonIgnore] public string PlugInNodeName => string.Format(PlugInNodeTemplate, moduleName);
|
||||
@@ -200,18 +186,4 @@ namespace AibisDream.FixSystem
|
||||
set => socketPos = new SerializableVector3(value);
|
||||
}
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public struct CheckPoint
|
||||
{
|
||||
public string id;
|
||||
private SerializableVector3 _serializablePos3;
|
||||
|
||||
[JsonIgnore]
|
||||
public Vector3 PointPos
|
||||
{
|
||||
get => _serializablePos3.ToVector3();
|
||||
set => _serializablePos3 = new SerializableVector3(value);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -17,7 +17,6 @@ namespace AibisDream.FixSystem
|
||||
public CableSystem CableSystem { get; private set; }
|
||||
public GameObject bodyModulePrefab;
|
||||
[HideInInspector] public Transform bodyModuleGroup;
|
||||
[HideInInspector] public OscilloscopeSystem oscilloscopeSystem;
|
||||
[HideInInspector] public HeatMapController heatMapController;
|
||||
|
||||
#endregion
|
||||
@@ -60,7 +59,6 @@ namespace AibisDream.FixSystem
|
||||
BodyModules = transform.GetComponentsInChildren<BodyModule>().ToList();
|
||||
CableSystem = transform.Find("Cable System").GetComponent<CableSystem>();
|
||||
bodyModuleGroup = transform.Find("Body Module Group");
|
||||
oscilloscopeSystem = transform.Find("Oscilloscope System").GetComponent<OscilloscopeSystem>();
|
||||
if (transform.Find("HeatMapController"))
|
||||
{
|
||||
heatMapController = transform.Find("HeatMapController").GetComponent<HeatMapController>();
|
||||
|
||||
@@ -7,9 +7,6 @@ namespace AibisDream
|
||||
public static class BodyModuleYarnCommand
|
||||
{
|
||||
private static BodyModuleSystem BodyModuleSystem => FixSystemCenter.SystemDic.Get<BodyModuleSystem>();
|
||||
private static OscilloscopeSystem OscilloscopeSystem => FixSystemCenter.SystemDic.Get<OscilloscopeSystem>();
|
||||
|
||||
|
||||
private static PunchTapeSystem PunchTapeSystem => FixSystemCenter.SystemDic.Get<PunchTapeSystem>();
|
||||
|
||||
[YarnCommand("SetModuleState_CantStopRunning")]
|
||||
@@ -42,12 +39,12 @@ namespace AibisDream
|
||||
var _UFModule = BodyModuleSystem.FindBodyModuleByName("UF").transform.GetComponent<UFModule>();
|
||||
_UFModule.RemoveUFModule();
|
||||
BodyModuleSystem.FindBodyModuleByName("UF").SetSocketAvailable(false);
|
||||
|
||||
}
|
||||
|
||||
[YarnCommand("Temp_RemoveUFCover")]
|
||||
public static void Temp_RemoveUFCover()
|
||||
{ BodyModuleSystem.CableSystem.ResetPlug();
|
||||
{
|
||||
BodyModuleSystem.CableSystem.ResetPlug();
|
||||
var _UFModule = BodyModuleSystem.FindBodyModuleByName("UF").transform.GetComponent<UFModule>();
|
||||
_UFModule.RemoveUFCover();
|
||||
}
|
||||
@@ -70,7 +67,7 @@ namespace AibisDream
|
||||
[YarnCommand("Temp_InstallChip")]
|
||||
public static void Temp_InstallChip()
|
||||
{
|
||||
var _chipModule = BodyModuleSystem.FindBodyModuleByName("Color").transform.GetComponent<ChipModule>();
|
||||
var _chipModule = BodyModuleSystem.FindBodyModuleByName("Color").transform.GetComponent<ChipModule>();
|
||||
_chipModule.InstallChipModule();
|
||||
}
|
||||
|
||||
@@ -80,10 +77,11 @@ namespace AibisDream
|
||||
var _chipModule = BodyModuleSystem.FindBodyModuleByName("Color").transform.GetComponent<ChipModule>();
|
||||
_chipModule.RemoveChipModule();
|
||||
}
|
||||
|
||||
[YarnCommand("Temp_InstallUFColor")]
|
||||
public static void Temp_InstallUFChip()
|
||||
{
|
||||
var _chipModule = BodyModuleSystem.FindBodyModuleByName("UF").transform.GetComponent<UFModule>();
|
||||
var _chipModule = BodyModuleSystem.FindBodyModuleByName("UF").transform.GetComponent<UFModule>();
|
||||
_chipModule.InstallUFColor();
|
||||
}
|
||||
|
||||
@@ -115,70 +113,10 @@ namespace AibisDream
|
||||
targetModule.Alarm(enable);
|
||||
}
|
||||
|
||||
[YarnCommand("MessageBoxSetError")]
|
||||
public static void MessageBoxSetError()
|
||||
{
|
||||
OscilloscopeSystem.MessageBoxSetError();
|
||||
}
|
||||
|
||||
[YarnCommand("MessageBoxSetWarning")]
|
||||
public static void MessageBoxSetWarning()
|
||||
{
|
||||
OscilloscopeSystem.MessageBoxSetWarning();
|
||||
}
|
||||
|
||||
[YarnCommand("MessageBoxSetNormal")]
|
||||
public static void MessageBoxSetNormal()
|
||||
{
|
||||
OscilloscopeSystem.MessageBoxSetNormal();
|
||||
}
|
||||
|
||||
[YarnCommand("MessageBoxSetChecking")]
|
||||
public static void MessageBoxSetChecking()
|
||||
{
|
||||
OscilloscopeSystem.MessageBoxSetChecking();
|
||||
}
|
||||
|
||||
[YarnCommand("MessageBoxSetNull")]
|
||||
public static void MessageBoxSetNull()
|
||||
{
|
||||
OscilloscopeSystem.MessageBoxSetNull();
|
||||
}
|
||||
|
||||
[YarnCommand("MessageBoxSetText")]
|
||||
public static void MessageBoxSetText(string text)
|
||||
{
|
||||
OscilloscopeSystem.MessageBoxSetText(text);
|
||||
}
|
||||
|
||||
[YarnCommand("EnableDeepInButton")]
|
||||
public static void EnableDeepInButton()
|
||||
{
|
||||
OscilloscopeSystem.StartCoroutine(OscilloscopeSystem.EnableDeepInButton());
|
||||
}
|
||||
|
||||
[YarnCommand("DisableDeepInButton")]
|
||||
public static void DisableDeepInButton()
|
||||
{
|
||||
OscilloscopeSystem.StartCoroutine(OscilloscopeSystem.DisableDeepInButton());
|
||||
}
|
||||
|
||||
[YarnCommand("PrintPunchTapes")]
|
||||
public static IEnumerator PrintPunchTapes(int count)
|
||||
{
|
||||
yield return PunchTapeSystem.StartCoroutine(PunchTapeSystem.PrintPunchTapes(count));
|
||||
}
|
||||
|
||||
[YarnCommand("HidePunchTapeGroup")]
|
||||
public static IEnumerator HidePunchTapeGroup()
|
||||
{
|
||||
yield return PunchTapeSystem.StartCoroutine(PunchTapeSystem.Temp_HidePunchTapeGroup());
|
||||
}
|
||||
|
||||
[YarnCommand("ShowPunchTapeGroup")]
|
||||
public static void ShowPunchTapeGroup()
|
||||
{
|
||||
PunchTapeSystem.Temp_showPunchTapeGroup();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,148 +0,0 @@
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using DG.Tweening;
|
||||
using System.Collections;
|
||||
using Yarn.Unity;
|
||||
|
||||
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();
|
||||
|
||||
_deepinButton.OnButtonDown += HandleDeepInButtonClick;
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
_deepinButton.CheckButtonClick();
|
||||
}
|
||||
|
||||
#region 旧显示屏接口
|
||||
|
||||
public void MessageBoxSetError()
|
||||
{
|
||||
_state.text = "错误";
|
||||
_state.color = Color.red; // 红色
|
||||
}
|
||||
|
||||
private void HandleDeepInButtonClick()
|
||||
{
|
||||
FixSystemCenter.SystemDic.Get<BodyModuleSystem>().HandleDeepIn();
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 示波器接口。暂时能想到的就是这几个对外接口
|
||||
/// 用示波器显示对话的部分额外实现IDialogView接口。这部分方案定下来之后老丁来实现。
|
||||
/// </summary>
|
||||
public interface IOscilloscopeSystem
|
||||
{
|
||||
/// <summary>
|
||||
/// 展示示波器上的图片和检测点位
|
||||
/// </summary>
|
||||
/// /// <param name="moduleImage">显示在示波器里的图片</param>
|
||||
/// <param name="checkPoints">检查点信息</param>
|
||||
public IEnumerator ShowScanImage(Sprite moduleImage, CheckPoint[] checkPoints);
|
||||
|
||||
/// <summary>
|
||||
/// 聚焦到某个点上
|
||||
/// </summary>
|
||||
/// <param name="checkPointId">检查点</param>
|
||||
public IEnumerator FocusOnPoint(string checkPointId);
|
||||
|
||||
/// <summary>
|
||||
/// 停止聚焦
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public IEnumerator StopFocus();
|
||||
|
||||
/// <summary>
|
||||
/// 隐藏显示屏上的图像
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public void HideScanImage();
|
||||
}
|
||||
|
||||
public static class OscilloscopeYarnCommand
|
||||
{
|
||||
private static IOscilloscopeSystem OscilloscopeSystem => FixSystemCenter.SystemDic.Get<IOscilloscopeSystem>();
|
||||
|
||||
[YarnCommand("focus_on_point")]
|
||||
public static IEnumerator FocusOnPoint(string checkPointId)
|
||||
{
|
||||
return OscilloscopeSystem?.FocusOnPoint(checkPointId);
|
||||
}
|
||||
|
||||
[YarnCommand("stop_focus")]
|
||||
public static IEnumerator StopFocus()
|
||||
{
|
||||
return OscilloscopeSystem?.StopFocus();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,3 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a2e20b111511460a8f3a151bd470da9d
|
||||
timeCreated: 1731328037
|
||||
@@ -1,3 +1,4 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using DG.Tweening;
|
||||
using UnityEngine;
|
||||
@@ -16,13 +17,16 @@ public class PunchTapeSystem : MonoBehaviour
|
||||
public float[]
|
||||
stepPatterns = { 0.3f, 0.5f, 0.2f, 0.4f, 0.6f }; // Pattern of intervals to simulate rhythmic printing
|
||||
|
||||
public GameObject tempPunchTapeGroup;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
FixSystemCenter.SystemDic.Register(this);
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
FixSystemCenter.SystemDic.Unregister<PunchTapeSystem>();
|
||||
}
|
||||
|
||||
public IEnumerator PrintPunchTapes(int tapeCount)
|
||||
{
|
||||
blackPanel.SetActive(true);
|
||||
@@ -66,20 +70,4 @@ public class PunchTapeSystem : MonoBehaviour
|
||||
.WaitForCompletion();
|
||||
blackPanel.SetActive(false);
|
||||
}
|
||||
|
||||
public void Temp_showPunchTapeGroup()
|
||||
{
|
||||
tempPunchTapeGroup.SetActive(true);
|
||||
}
|
||||
|
||||
public IEnumerator Temp_HidePunchTapeGroup()
|
||||
{
|
||||
foreach (SpriteRenderer s in tempPunchTapeGroup.GetComponentsInChildren<SpriteRenderer>())
|
||||
{
|
||||
s.DOFade(0, 0.5f);
|
||||
}
|
||||
|
||||
yield return new WaitForSeconds(0.5f);
|
||||
tempPunchTapeGroup.SetActive(false);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user