diff --git a/Assets/PerfectWorld/Scripts/Common/TickInvoker.cs.meta b/Assets/PerfectWorld/Scripts/Common/TickInvoker.cs.meta index a8d4bbbea2..156a7ffae5 100644 --- a/Assets/PerfectWorld/Scripts/Common/TickInvoker.cs.meta +++ b/Assets/PerfectWorld/Scripts/Common/TickInvoker.cs.meta @@ -1,3 +1,11 @@ fileFormatVersion: 2 guid: 94ae88742bf5484ea9a61c2f850f9e18 -timeCreated: 1772424967 \ No newline at end of file +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: -20 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/PerfectWorld/Scripts/Managers/EC_Object.cs b/Assets/PerfectWorld/Scripts/Managers/EC_Object.cs index b1ea428c4b..aa41a59a7f 100644 --- a/Assets/PerfectWorld/Scripts/Managers/EC_Object.cs +++ b/Assets/PerfectWorld/Scripts/Managers/EC_Object.cs @@ -14,7 +14,7 @@ using UnityEngine; // /////////////////////////////////////////////////////////////////////////// -public partial class CECObject : MonoBehaviour, ITickable +public partial class CECObject : MonoBehaviour { protected static int ALPHA_HASH = Shader.PropertyToID("_Alpha"); protected Quaternion targetRotation; @@ -77,7 +77,6 @@ public partial class CECObject : MonoBehaviour, ITickable public virtual void SetUpCECObject() { - TickInvoker.Instance.RegisterTickable(this); m_dwBornStamp = 0; m_bBornInSight = false; //m_bSelectable = false; @@ -95,11 +94,6 @@ public partial class CECObject : MonoBehaviour, ITickable m_vecGroundNormal = Normalize(m_vecGroundNormal * 0.85f + m_vecGroundNormalSet * 0.15f); return true; } - protected virtual void OnDestroy() - { - TickInvoker.Instance.UnregisterTickable(this); - } - // Set absolute forward and up direction public virtual void SetDirAndUp(Vector3 vDir, Vector3 vUp) { diff --git a/Assets/PerfectWorld/Scripts/Players/CECHostNavigatePlayer.cs b/Assets/PerfectWorld/Scripts/Players/CECHostNavigatePlayer.cs index 88f59eb123..49e0edb128 100644 --- a/Assets/PerfectWorld/Scripts/Players/CECHostNavigatePlayer.cs +++ b/Assets/PerfectWorld/Scripts/Players/CECHostNavigatePlayer.cs @@ -7,7 +7,7 @@ using Cysharp.Threading.Tasks; namespace BrewMonster.Scripts { // CECHostNavigatePlayer class - Basic implementation for navigation player // CECHostNavigatePlayer类 - 导航玩家的基本实现 - public class CECHostNavigatePlayer : CECClonePlayer + public class CECHostNavigatePlayer : CECClonePlayer, ITickable { protected CECNavigateCtrl m_pNavigateCtrl; // Force navigate // 强制导航 protected CECHostPlayer m_pHostPlayer = null; // Reference to host player // 对宿主玩家的引用 diff --git a/Assets/PerfectWorld/Scripts/UI/HUDPlayer.cs b/Assets/PerfectWorld/Scripts/UI/HUDPlayer.cs index 060f487618..c9c106874d 100644 --- a/Assets/PerfectWorld/Scripts/UI/HUDPlayer.cs +++ b/Assets/PerfectWorld/Scripts/UI/HUDPlayer.cs @@ -47,6 +47,7 @@ namespace BrewMonster EventBus.Unsubscribe(UpdateHostPlayerInfoUI); EventBus.Unsubscribe(UpdateNameHostPlayer); EventBus.Unsubscribe(UpdateNeededExp); + TickInvoker.Instance.UnregisterTickable(this); } public bool Tick(uint dwDeltaTime)