Closed cxg83843652 closed 1 year ago
================================第一个报错===================================
GameFramework.GameFrameworkException: Entity is invalid.
at GameFramework.Entity.EntityManager.HideEntity (GameFramework.Entity.IEntity entity, System.Object userData) [0x0000a] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Library/UGF/GameFramework/Entity/EntityManager.cs:708
at GameFramework.Entity.EntityManager.HideEntity (GameFramework.Entity.IEntity entity) [0x00001] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Library/UGF/GameFramework/Entity/EntityManager.cs:696
at UnityGameFramework.Runtime.EntityComponent.HideEntity (UnityGameFramework.Runtime.Entity entity) [0x00001] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Library/UGF/UnityGameFramework/Runtime/Entity/EntityComponent.cs:522
at ET.Client.EntityComponentSystem.HideEntity (ET.Client.EntityComponent self, ET.UGFEntity entity) [0x00001] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Game/ET/Code/HotfixView/Client/Module/Entity/EntityComponentSystem.cs:48
at ET.Client.EntityComponentSystem.HideAllEntities (ET.Client.EntityComponent self) [0x00017] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Game/ET/Code/HotfixView/Client/Module/Entity/EntityComponentSystem.cs:60
at ET.Client.EntityComponentSystem+EntityComponentDestroySystem.Destroy (ET.Client.EntityComponent self) [0x00001] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Game/ET/Code/HotfixView/Client/Module/Entity/EntityComponentSystem.cs:26
at ET.DestroySystem1[T].ET.IDestroySystem.Run (ET.Entity o) [0x00001] in /Users/******/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Library/ET/Runtime/Core/Module/EventSystem/IDestroySystem.cs:19 at ET.EntitySystemSingleton.Destroy (ET.Entity component) [0x00067] in /Users/******/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Library/ET/Runtime/Core/Module/EventSystem/EntitySystemSingleton.cs:360 UnityEngine.Debug:LogError (object) ET.UnityLogger:Error (string) (at Assets/Scripts/Game/ET/Loader/UnityLogger.cs:29) ET.Logger:Error (System.Exception) (at Assets/Scripts/Library/ET/Runtime/Core/Module/Log/Logger.cs:94) ET.Log:Error (System.Exception) (at Assets/Scripts/Library/ET/Runtime/Core/Module/Log/Log.cs:38) ET.EntitySystemSingleton:Destroy (ET.Entity) (at Assets/Scripts/Library/ET/Runtime/Core/Module/EventSystem/EntitySystemSingleton.cs:364) ET.Entity:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Entity.cs:506) ET.Entity:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Entity.cs:484) ET.Scene:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Scene.cs:45) ET.Entity:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Entity.cs:460) ET.Entity:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Entity.cs:484) ET.Scene:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Scene.cs:45) ET.Entity:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Entity.cs:460) ET.Entity:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Entity.cs:484) ET.Scene:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Scene.cs:45) ET.Root:Dispose () (at Assets/Scripts/Library/ET/Runtime/Core/Module/Entity/Root.cs:16) ET.Singleton
11<GameFramework.Procedure.IProcedureManager>,bool) (at Assets/Scripts/Game/Procedure/ProcedureET.cs:18) GameFramework.Fsm.Fsm
11<GameFramework.Procedure.IProcedureManager>:Shutdown () (at Assets/Scripts/Library/UGF/GameFramework/Fsm/Fsm.cs:553) GameFramework.Fsm.FsmManager:InternalDestroyFsm (GameFramework.TypeNamePair) (at Assets/Scripts/Library/UGF/GameFramework/Fsm/FsmManager.cs:404) GameFramework.Fsm.FsmManager:DestroyFsm<GameFramework.Procedure.IProcedureManager> (GameFramework.Fsm.IFsm
1
========================================第二个=======================================================
Entity '[-1]Assets/Res/Entity/PlayerShip.prefab' OnHide with exception 'System.NullReferenceException: Object reference not set to an instance of an object at ET.Client.AUGFEntityEvent.OnHide (ET.UGFEntity entity, System.Boolean isShutdown, System.Object userData) [0x00001] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Game/ET/Code/ModelView/Client/Module/Entity/AUGFEntityEvent.cs:24 at ET.ETMonoEntity.OnHide (System.Boolean isShutdown, System.Object userData) [0x00001] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Game/ET/Loader/UGF/Entity/ETMonoEntity.cs:80 at UnityGameFramework.Runtime.Entity.OnHide (System.Boolean isShutdown, System.Object userData) [0x00002] in /Users/**/Downloads/GameDevelopmentKit-2.0-WithDemo/Unity/Assets/Scripts/Library/UGF/UnityGameFramework/Runtime/Entity/Entity.cs:183 '. UnityEngine.Debug:LogError (object) UnityGameFramework.Runtime.DefaultLogHelper:Log (GameFramework.GameFrameworkLogLevel,object) (at Assets/Scripts/Library/UGF/UnityGameFramework/Runtime/Utility/DefaultLogHelper.cs:40) GameFramework.GameFrameworkLog:Error<int, string, System.Exception> (string,int,string,System.Exception) (at Assets/Scripts/Library/UGF/GameFramework/Base/Log/GameFrameworkLog.cs:1677) UnityGameFramework.Runtime.Log:Error<int, string, System.Exception> (string,int,string,System.Exception) (at Assets/Scripts/Library/UGF/UnityGameFramework/Runtime/Utility/Log.cs:1679) UnityGameFramework.Runtime.Entity:OnHide (bool,object) (at Assets/Scripts/Library/UGF/UnityGameFramework/Runtime/Entity/Entity.cs:187) GameFramework.Entity.EntityManager:InternalHideEntity (GameFramework.Entity.EntityManager/EntityInfo,object) (at Assets/Scripts/Library/UGF/GameFramework/Entity/EntityManager.cs:1219) GameFramework.Entity.EntityManager:HideAllLoadedEntities (object) (at Assets/Scripts/Library/UGF/GameFramework/Entity/EntityManager.cs:732) GameFramework.Entity.EntityManager:HideAllLoadedEntities () (at Assets/Scripts/Library/UGF/GameFramework/Entity/EntityManager.cs:719) GameFramework.Entity.EntityManager:Shutdown () (at Assets/Scripts/Library/UGF/GameFramework/Entity/EntityManager.cs:193) GameFramework.GameFrameworkEntry:Shutdown () (at Assets/Scripts/Library/UGF/GameFramework/Base/GameFrameworkEntry.cs:40) UnityGameFramework.Runtime.BaseComponent:OnDestroy () (at Assets/Scripts/Library/UGF/UnityGameFramework/Runtime/Base/BaseComponent.cs:244)
Generator 创建的 Entity 我需要使用一个 UGFEntityEventAttribute 的特性标记 并且 Assets/Scripts/Game/ET/Loader/UGF/UGFEventComponent.cs 中需要修改为
HashSet<Type> types = EventSystem.Instance.GetTypes(typeof(UGFEntityEventAttribute));
foreach (Type type in types)
{
IUGFEntityEvent ugfEntityEvent = Activator.CreateInstance(type) as IUGFEntityEvent;
this.EntityEvents.Add(type, ugfEntityEvent);
}
因为创建的脚本用原来的代码识别不到
能发一下报错信息吗?