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);
     }
 }