public void ChangeState(AbstractGameState state) { if(state == null) throw new InvalidOperationException("State can't be null"); if (activeState != null) activeState.DeactivateState(this); state.ActivateState(this); activeState = state; }
public void Update() { if (activeState == null) { PauseGameSimulation(); // Reset! activeState = StartState; StartState.ActivateState(this); } }