Beispiel #1
0
 public State()
 {
     this.OnInit      = null;
     this.OnUpdate    = null;
     this.OnTerminate = null;
     StateStatus      = 0;
 }
Beispiel #2
0
        /// <summary>
        /// Update the state and trigger corresponding event
        /// </summary>
        public virtual void UpdateState(E newState)
        {
            // Prevent
            if ((preventReupdateSameState == true) &&
                (newState.Equals(CurrentState)))
            {
                LogConsoleWarning("Preventing reupdating same state : <color=gray>" + newState.ToString() + "</color>");
                return;
            }

            LastState    = CurrentState;
            CurrentState = newState;

            if (StateUpdateEvent != null)
            {
                StateUpdateEvent.Invoke(new StateBEHandle <E>(newState, LastState));
            }
        }
Beispiel #3
0
 public bool OnUpdate(StateUpdateEvent evnt)
 {
     mOnUpdateCalledCount++;
     return(false);
 }
Beispiel #4
0
 override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     StateUpdateEvent.Invoke();
 }
 public GameState()
 {
     OnStateChange = new StateUpdateEvent();
     CurrentState  = new State();
     lastState     = CurrentState;
 }