public override void Enter(StateBasedGame container) { startTimer = 4000; pacman.SetStartPositionTile(50, 50); currentState = GAMEPLAYSTATES.START; cam.SetFixVector(Vector2.Zero); cam.CamSpeed = 0.2f; cam.Position = pacman.Position - Globals.CENTER_PACMAN / cam.Scale; MediaPlayer.IsRepeating = false; MediaPlayer.Volume = 1f; cam.ShakeScreen(2, 1); factory.ResetFactory(gameMap.Width, gameMap.Height); survialManager.ResetSurivalMode(); hud.Reset(); }
private void UpdatePlay(int delta, StateBasedGame container) { pacman.Update(Keyboard.GetState(), delta); cam.Update(delta); survialManager.Update(delta); if (Keyboard.GetState().IsKeyDown(Keys.Escape)) { startTimer = 2000; survialManager.NullCombo(); currentState = GAMEPLAYSTATES.END; musicManager.PlayWinMusic(); } //container.EnterState(Globals.MENUSTATE); if (/*musicManager.isSongStopped()*/ false) { startTimer = 2000; currentState = GAMEPLAYSTATES.END; } }
// internal updates private void UpdateStart(int delta) { if (startTimer <= 0) { musicManager.PlayGameplayMusic(); cam.CamSpeed = 0.8f; currentState = GAMEPLAYSTATES.PLAY; } else { if (startTimer >= 4000) { MusicManager.Get().PlaySound("start", 0.5f); startTimer -= delta; } else startTimer -= delta; } cam.Update(delta); }
private void UpdateEnd(int delta) { if (startTimer <= 0) currentState = GAMEPLAYSTATES.ENDRESULT; else { startTimer -= delta; hud.UpdateEnd(delta, startTimer, 2000); } }