/// <summary> /// Use this function to announce a succesfull pass in the last state. /// It can help in making the game more difficult over time. /// </summary> /// <param name="caller">The caller. Can be used as identifier for different /// state difficulties.</param> public virtual void Proceed(GameState caller) { currentState++; }
/// <summary> /// Pushes a new state on the stack. /// </summary> /// <param name="state">The new state.</param> public void PushState(GameState state) { if (!IsEmpty()) { Peek().Deactivate(); } states.Add(state); top++; state.Activate(); }