From a28f22f38a7c6a0c97f9b1ad565639d192f1da4b Mon Sep 17 00:00:00 2001 From: shenjianxing <”315615051@qq.com“> Date: Wed, 22 Jan 2025 10:33:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=B7=B3=E6=AD=A5=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E9=AB=98=E4=BA=AE=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scripts/Actions/AnimationAction.cs | 8 +++-- Assets/Scripts/Actions/HighLightAction.cs | 1 + Assets/Scripts/OpeartionHelper.meta | 8 +++++ .../OpeartionHelper/OnStepChanged.meta | 8 +++++ .../OnStepChanged/HighLightOnStepChanged.cs | 30 +++++++++++++++++++ .../HighLightOnStepChanged.cs.meta | 11 +++++++ 6 files changed, 64 insertions(+), 2 deletions(-) create mode 100644 Assets/Scripts/OpeartionHelper.meta create mode 100644 Assets/Scripts/OpeartionHelper/OnStepChanged.meta create mode 100644 Assets/Scripts/OpeartionHelper/OnStepChanged/HighLightOnStepChanged.cs create mode 100644 Assets/Scripts/OpeartionHelper/OnStepChanged/HighLightOnStepChanged.cs.meta diff --git a/Assets/Scripts/Actions/AnimationAction.cs b/Assets/Scripts/Actions/AnimationAction.cs index c212e4a6..e3c9f60c 100644 --- a/Assets/Scripts/Actions/AnimationAction.cs +++ b/Assets/Scripts/Actions/AnimationAction.cs @@ -32,6 +32,7 @@ namespace QFramework string deviceName; float totalTime; + GameObject obj; public static AnimationAction Allocate(string path, Dictionary datas, System.Action OnFinished = null) { var retNode = mPool.Allocate(); @@ -51,7 +52,6 @@ namespace QFramework TweenerCore animDot; public void OnStart() { - GameObject obj = null; if (string.IsNullOrEmpty(deviceName)) { obj = Utility.FindObj(path); @@ -149,10 +149,14 @@ namespace QFramework { if (!Deinited) { + if (obj != null) + { + anim?.Stop(); + } animDot?.Kill(); - anim?.Stop(); OnFinished = null; Deinited = true; + obj = null; mPool.Recycle(this); } } diff --git a/Assets/Scripts/Actions/HighLightAction.cs b/Assets/Scripts/Actions/HighLightAction.cs index 7efe534f..c8da574f 100644 --- a/Assets/Scripts/Actions/HighLightAction.cs +++ b/Assets/Scripts/Actions/HighLightAction.cs @@ -72,6 +72,7 @@ namespace QFramework var effect = obj.GetOrAddComponent(); effect.outlineColor = color; effect.highlighted = true; + obj.GetOrAddComponent(); if (string.IsNullOrEmpty(isIndependent) == false) { switch (isIndependent) diff --git a/Assets/Scripts/OpeartionHelper.meta b/Assets/Scripts/OpeartionHelper.meta new file mode 100644 index 00000000..bc3452ca --- /dev/null +++ b/Assets/Scripts/OpeartionHelper.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 27089718485c08142b8d696ce13b2a78 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/OpeartionHelper/OnStepChanged.meta b/Assets/Scripts/OpeartionHelper/OnStepChanged.meta new file mode 100644 index 00000000..140f53af --- /dev/null +++ b/Assets/Scripts/OpeartionHelper/OnStepChanged.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7a69538f7c29aeb47804364936ea1c5c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/OpeartionHelper/OnStepChanged/HighLightOnStepChanged.cs b/Assets/Scripts/OpeartionHelper/OnStepChanged/HighLightOnStepChanged.cs new file mode 100644 index 00000000..bdbaedb4 --- /dev/null +++ b/Assets/Scripts/OpeartionHelper/OnStepChanged/HighLightOnStepChanged.cs @@ -0,0 +1,30 @@ +using HighlightPlus; +using QFramework; +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using static OperationController; + +public class HighLightOnStepChanged : MonoBehaviour +{ + + private void Awake() + { + TypeEventSystem.Global.Register(OnStepChanged); + } + + private void OnStepChanged(StepStatusOnChange change) + { + var effect = GetComponent(); + if (effect != null) + { + effect.highlighted = false; + } + } + + private void OnDestroy() + { + TypeEventSystem.Global.UnRegister(OnStepChanged); + } +} diff --git a/Assets/Scripts/OpeartionHelper/OnStepChanged/HighLightOnStepChanged.cs.meta b/Assets/Scripts/OpeartionHelper/OnStepChanged/HighLightOnStepChanged.cs.meta new file mode 100644 index 00000000..5b80256d --- /dev/null +++ b/Assets/Scripts/OpeartionHelper/OnStepChanged/HighLightOnStepChanged.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8dea558b3c0de5a48906a5a7f7806258 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: