private void Update() { if (Input.GetKeyDown(KeyCode.Escape)) { gameMainMenu.Show(!gameMainMenuObject.activeSelf); } }
private void onGameStateChanged(GameState newState) { switch (newState) { case GameState.StartUp: mainMenuControl.Hide(); highscoreControl.Hide(); creditsControl.Hide(); pauseControl.Hide(); victoryControl.Hide(); gameOverControl.Hide(); hud.Hide(); audioPlayer.PlayEvent("audio/music/menu"); break; case GameState.Menu: mainMenuControl.Show(); highscoreControl.Hide(); creditsControl.Hide(); pauseControl.Hide(); victoryControl.Hide(); gameOverControl.Hide(); hud.Hide(); audioPlayer.PauseCategory("ingame"); audioPlayer.UnpauseCategory("menu"); break; case GameState.Highscore: mainMenuControl.Hide(); highscoreControl.Show(); creditsControl.Hide(); pauseControl.Hide(); victoryControl.Hide(); gameOverControl.Hide(); hud.Hide(); audioPlayer.PauseCategory("ingame"); audioPlayer.UnpauseCategory("menu"); break; case GameState.Credits: mainMenuControl.Hide(); highscoreControl.Hide(); creditsControl.Show(); pauseControl.Hide(); victoryControl.Hide(); gameOverControl.Hide(); hud.Hide(); creditsControl.Start(); audioPlayer.PauseCategory("ingame"); audioPlayer.UnpauseCategory("menu"); break; case GameState.Loading: mainMenuControl.Hide(); highscoreControl.Hide(); creditsControl.Hide(); pauseControl.Hide(); victoryControl.Hide(); gameOverControl.Hide();; hud.Hide(); audioPlayer.PlayEvent("audio/music/ingame"); OnDetach(); break; case GameState.Running: mainMenuControl.Hide(); highscoreControl.Hide(); creditsControl.Hide(); pauseControl.Hide(); victoryControl.Hide(); gameOverControl.Hide(); hud.Show(); audioPlayer.PauseCategory("menu"); audioPlayer.UnpauseCategory("ingame"); break; case GameState.Paused: pauseControl.Show(); victoryControl.Hide(); gameOverControl.Hide(); hud.Hide(); audioPlayer.PauseCategory("ingame"); audioPlayer.PauseCategory("menu"); break; case GameState.Victory: int remainingLifes = 0; if (playerEntity != null) // Happens on a draw { remainingLifes = playerEntity[HealthBehavior.Key_Lifes]; } int totalScore = 100 * remainingLifes + playerEntity[CollectsPointsBehavior.Key_PointsCollected]; victoryControl.CurrentScore = totalScore; mainMenuControl.Hide(); highscoreControl.Hide(); creditsControl.Hide(); pauseControl.Hide(); victoryControl.Show(); gameOverControl.Hide(); hud.Hide(); audioPlayer.StopCategory("ingame"); audioPlayer.PlayEvent("audio/game/win"); break; case GameState.GameOver: mainMenuControl.Hide(); highscoreControl.Hide(); creditsControl.Hide(); pauseControl.Hide(); victoryControl.Hide(); gameOverControl.Show(); hud.Hide(); audioPlayer.StopCategory("ingame"); audioPlayer.PlayEvent("audio/game/lose"); break; case GameState.Quit: audioPlayer.StopCategory("menu"); RenderForm.Close(); break; } }