public void ChangeState(AbstractState inState) { //clean up the current state if (states != null) { if (states.Count > 0) { states[states.Count - 1].Cleanup(); states.RemoveAt (states.Count - 1); } } //store and initialize the new state states.Add(inState); states[states.Count - 1].Init(); }
public void ChangeState(StateManager game, AbstractState state) { game.ChangeState(state); }
public void PushState(AbstractState inState) { //pause the current state if (states.Count > 0) { states[states.Count - 1].Pause(); } //store and initialize the new state states.Add (inState); states[states.Count - 1].Init (); }