using Snxxz.UI; using System.Collections; using System.Collections.Generic; using UnityEngine; public class SMB_ShowBase : StateMachineBehaviour { protected ShowActor owner; public sealed override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { base.OnStateEnter(animator, stateInfo, layerIndex); int _instId = animator.GetInteger(GAStaticDefine.Param_ActorInstID); owner = BossShowModel.Instance.GetShowActorInstance(_instId); if (owner == null) { return; } OnEnter(owner, animator, stateInfo, layerIndex); owner = null; } public sealed override void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { base.OnStateUpdate(animator, stateInfo, layerIndex); int _instId = animator.GetInteger(GAStaticDefine.Param_ActorInstID); owner = BossShowModel.Instance.GetShowActorInstance(_instId); if (owner == null) { return; } OnUpdate(owner, animator, stateInfo, layerIndex); owner = null; } public sealed override void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { base.OnStateExit(animator, stateInfo, layerIndex); int _instId = animator.GetInteger(GAStaticDefine.Param_ActorInstID); owner = BossShowModel.Instance.GetShowActorInstance(_instId); if (owner == null) { return; } OnExit(owner, animator, stateInfo, layerIndex); owner = null; } protected virtual void OnEnter(ShowActor owner, Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { } protected virtual void OnUpdate(ShowActor owner, Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { } protected virtual void OnExit(ShowActor owner, Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { } }