public void Draw(SpriteBatch spriteBatch) { if (running && !isFininshed) { currentTransition.Draw(spriteBatch); if (currentTransition.IsFininshed) { currentTransition = GetNextTransition(); } } }
public void Update(GameTime gameTime) { if (running && !isFininshed) { currentTransition.Update(gameTime); if (currentTransition.IsFininshed) { currentTransition = GetNextTransition(); } } }
public void Start() { if (running) { return; } foreach (StateTransition transition in transitions) { transition.NextGameState = nextGameState; transition.CurrentGameState = currentGameState; } running = true; currentTransition = transitions[0]; if (!PlayingLastTransition()) { currentTransition.NextTransition = transitions[1]; } currentTransition.Start(); }
public StateTransitionEventArgs(StateTransition sender) { this.sender = sender; }
public TransitionPlayerEventArgs(StateTransition finishedTransition) : base() { this.finishedTransition = finishedTransition; }