From 13bf57e84aa6093c4a38239b9a68de1a032eec92 Mon Sep 17 00:00:00 2001 From: Ding Yuntian <1491671119@qq.com> Date: Wed, 15 Jan 2025 14:17:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FixSystemNew/BodyModule/BodyModule.cs | 43 ++++++++++++++----- .../BodyModule/BodyModuleSystem.cs | 1 - .../FixSystemNew/BodyModule/CableSystem.cs | 3 +- .../BodyModule/OscilloscopeSystem.cs | 2 +- .../Scripts/FixSystemNew/BodyModule/Plug.cs | 2 + .../Scripts/Framework/OtherKit/CameraKit.cs | 3 -- 6 files changed, 37 insertions(+), 17 deletions(-) diff --git a/Assets/Scripts/FixSystemNew/BodyModule/BodyModule.cs b/Assets/Scripts/FixSystemNew/BodyModule/BodyModule.cs index be87ea634..b9cf324ad 100644 --- a/Assets/Scripts/FixSystemNew/BodyModule/BodyModule.cs +++ b/Assets/Scripts/FixSystemNew/BodyModule/BodyModule.cs @@ -59,6 +59,13 @@ namespace AibisDream.FixSystem public void PlugIn() { + // 插入就在示波器显示图片 + if (!_bodyModuleSystem.inHotErr) + { + StartCoroutine(FixSystemCenter.SystemDic.Get() + ?.ShowScanImage(data.ScreenPic, data.checkPoints)); + } + if (DialogController.Instance) // 然后触发Yarn节点 DialogController.Instance.StartDialogNode(_bodyModuleSystem.inHotErr ? "系统过热" : data.PlugInNodeName); @@ -66,6 +73,8 @@ namespace AibisDream.FixSystem public void PlugOut() { + FixSystemCenter.SystemDic.Get()?.HideScanImage(); + _bodyModuleSystem.oscilloscopeSystem.MessageBoxSetNull(); StartCoroutine(_bodyModuleSystem.oscilloscopeSystem.DisableDeepInButton()); @@ -78,8 +87,6 @@ namespace AibisDream.FixSystem DialogController.Instance.StartDialogNode(data.DeepInNodeName); } - - public Vector3 GetSocketPos() { return socketPos.position; @@ -141,14 +148,6 @@ namespace AibisDream.FixSystem } } - // public void HideModule(bool enable) - // { - // if (targetSpriteRenderer != null && highlightMaterial != null) - // { - // targetSpriteRenderer.material = enable ? highlightMaterial : originalMaterial; - // } - // } - #endregion } @@ -166,7 +165,11 @@ namespace AibisDream.FixSystem public SerializableVector3 modulePos; public SerializableVector3 socketPos; - public bool cantStopRunning; + // 功能信息 + [Header("功能参数")] public bool cantStopRunning; + + public string showPicPath; + public CheckPoint[] checkPoints; // 只读 [JsonIgnore] public string PlugInNodeName => string.Format(PlugInNodeTemplate, moduleName); @@ -178,6 +181,10 @@ namespace AibisDream.FixSystem get => !string.IsNullOrEmpty(modulePicPath) ? ResourceKit.LoadSpriteFromPsd(modulePicPath) : null; set => modulePicPath = ResourceKit.SaveSprite(value); } + + [JsonIgnore] + public Sprite ScreenPic => + !string.IsNullOrEmpty(showPicPath) ? ResourceKit.LoadSpriteFromPsd(showPicPath) : null; [JsonIgnore] public Vector3 ModulePos @@ -193,4 +200,18 @@ 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); + } + } } \ No newline at end of file diff --git a/Assets/Scripts/FixSystemNew/BodyModule/BodyModuleSystem.cs b/Assets/Scripts/FixSystemNew/BodyModule/BodyModuleSystem.cs index a46e18b36..80a6ca83e 100644 --- a/Assets/Scripts/FixSystemNew/BodyModule/BodyModuleSystem.cs +++ b/Assets/Scripts/FixSystemNew/BodyModule/BodyModuleSystem.cs @@ -3,7 +3,6 @@ using AibisDream.Framework; using AibisDream.Kit; using Cinemachine; using UnityEngine; -using UnityEngine.Events; namespace AibisDream.FixSystem { diff --git a/Assets/Scripts/FixSystemNew/BodyModule/CableSystem.cs b/Assets/Scripts/FixSystemNew/BodyModule/CableSystem.cs index 43c14c4f1..825fb0d1e 100644 --- a/Assets/Scripts/FixSystemNew/BodyModule/CableSystem.cs +++ b/Assets/Scripts/FixSystemNew/BodyModule/CableSystem.cs @@ -23,7 +23,8 @@ namespace AibisDream.FixSystem public bool isActive = true; [HideInInspector] public ISocket curSocket; - + [HideInInspector] public BodyModule curBodyModule; + #endregion private void Awake() diff --git a/Assets/Scripts/FixSystemNew/BodyModule/OscilloscopeSystem.cs b/Assets/Scripts/FixSystemNew/BodyModule/OscilloscopeSystem.cs index ae36ab327..23d7a4746 100644 --- a/Assets/Scripts/FixSystemNew/BodyModule/OscilloscopeSystem.cs +++ b/Assets/Scripts/FixSystemNew/BodyModule/OscilloscopeSystem.cs @@ -126,7 +126,7 @@ namespace AibisDream.FixSystem /// 隐藏显示屏上的图像 /// /// - public IEnumerator HideScanImage(); + public void HideScanImage(); } public static class OscilloscopeYarnCommand diff --git a/Assets/Scripts/FixSystemNew/BodyModule/Plug.cs b/Assets/Scripts/FixSystemNew/BodyModule/Plug.cs index cc2b2ad49..ca99b9c1b 100644 --- a/Assets/Scripts/FixSystemNew/BodyModule/Plug.cs +++ b/Assets/Scripts/FixSystemNew/BodyModule/Plug.cs @@ -64,6 +64,7 @@ namespace AibisDream.FixSystem { // 插入模块时触发插入事件 EnumEventSystem.Global.Send(EventEnum.PlugIn); + _cableSystem.curBodyModule = bodyModule; } } @@ -83,6 +84,7 @@ namespace AibisDream.FixSystem { // 从模块拔出时触发事件 EnumEventSystem.Global.Send(EventEnum.PlugOut); + _cableSystem.curBodyModule = null; } _cableSystem.curSocket = null; diff --git a/Assets/Scripts/Framework/OtherKit/CameraKit.cs b/Assets/Scripts/Framework/OtherKit/CameraKit.cs index 8428eb5de..c0123ec14 100644 --- a/Assets/Scripts/Framework/OtherKit/CameraKit.cs +++ b/Assets/Scripts/Framework/OtherKit/CameraKit.cs @@ -1,7 +1,6 @@ using System; using System.Collections; using System.Collections.Generic; -using System.Linq; using AibisDream.FixSystem; using AibisDream.Kit; using Cinemachine; @@ -35,8 +34,6 @@ namespace AibisDream.Framework public float initOrthoSize; } - public Camera uiCamera; - #endregion private CameraKit()