using UnityEngine; namespace BrewMonster { public abstract class CECNPCModelPolicy { protected NPCVisual _npcVisual; public abstract bool PlayModelAction(int iAction, bool bRestart, CECAttackEvent attackevent); public abstract bool IsPlayingAction(); public abstract bool IsPlayingAction(int iActions); public abstract void SetNpcVisual(NPCVisual npcVisual); public abstract bool HasAction(int iAction); public abstract void ClearComActFlag(bool bSignalCurrent); public abstract bool PlayAttackAction(int nAttackSpeed, CECAttackEvent attackevent); public abstract bool GetCHAABB(ref A3DAABB ab); public abstract void StopChannelAction(); public abstract void SetDefaultPickAABBExt(CSNetwork.GPDataType.A3DVECTOR3 vExt); // [中文] 模型是否已加载完毕(用于状态效果 GFX 的显示守卫) // [English] Whether the NPC model is loaded (guard for state-effect GFX display) public abstract bool IsModelLoaded(); // [中文] 在 NPC 模型挂点上播放状态效果 GFX // [English] Play a state-effect GFX on the NPC model at the given hook public abstract void PlayGfx(string szPath, string szHook); // [中文] 移除 NPC 模型上的状态效果 GFX // [English] Remove a state-effect GFX from the NPC model public abstract void RemoveGfx(string szPath, string szHook); } }