public void Configure(T owner, state_a <T> InitialState) { CurrentState = null; PreviousState = null; GlobalState = null; Owner = owner; ChangeState(InitialState); }
public void ChangeState(state_a <T> NewState) { PreviousState = CurrentState; if (CurrentState != null) { CurrentState.Exit(Owner); } CurrentState = NewState; if (CurrentState != null) { CurrentState.Enter(Owner); } }