/// <summary> /// Selected label were chosed. /// </summary> /// <param name="i_GameTime"></param> private void selectionChosed(GameTime i_GameTime) { if (ScreenMode.HasFlag(eScreenMode.Running)) { switch (m_menuCollection.Selected) { case 0: DisplaySettingsScreen displaySettings = new DisplaySettingsScreen(ScreensManager); ScreensManager.MoveTo(displaySettings); break; case 2: SoundSettingsScreen soundSettings = new SoundSettingsScreen(ScreensManager); ScreensManager.MoveTo(soundSettings); break; case 3: GameScreen startGame = StageScreen.GetStages(ScreensManager); ScreensManager.MoveTo(startGame); break; case 4: Close(); break; } if (m_menuCollection.Selected != 1) { playSound(); } } }
/// <summary> /// Starting the game from the given stage screen. /// </summary> /// <param name="i_GameTime">Game Time.</param> private void startGame(GameTime i_GameTime) { ScreensManager.RootScreen = new MainMenuScreen(ScreensManager); KeyboardManager keyboardManager = ScreensManager.KeyboardManager; GameScreen startTimer = StageScreen.GetStages(ScreensManager); ScreensManager.MoveTo(startTimer); }
/// <summary> /// Allows the game to perform any initialization it needs to before starting to run. /// This is where it can query for any required services and load any non-graphic /// related content. Calling base.Initialize will enumerate through any components /// and initialize them as well. /// </summary> protected override void Initialize() { // TODO: Add your initialization logic here LoadContent(); WelcomeScreen welcomeScreen = new WelcomeScreen(m_screensManager); m_screensManager.MoveTo(welcomeScreen); }
/// <summary> /// Going to next stage screen. /// </summary> private void nextStage() { clearStageComponents(); SoundManager soundManager = Game.Services.GetService(typeof(SoundManager)) as SoundManager; soundManager.PlaySoundEffect(eSounds.LevelWin); StageScreen nextStage = new StageScreen(ScreensManager, m_level + 1, m_spaceships); string stageString = string.Format("Stage: {0}", m_level + 1); TimerScreen timerScreen = new TimerScreen(nextStage, 3, stageString); Enemy.LevelUp(); bool v_EraseLastStage = true; ScreensManager.MoveTo(timerScreen, v_EraseLastStage); }
/// <summary> /// Acting for keyboard state. /// </summary> /// <param name="i_KeyboardState">Keyboard state.</param> protected override void actForKeyboardState(KeyboardState i_KeyboardState) { if (i_KeyboardState.IsKeyDown(Keys.Escape)) { ScreensManager.Quit(); } else if (i_KeyboardState.IsKeyDown(Keys.Home)) { bool v_EraseThisScreen = true; GameScreen startTimer = StageScreen.GetStages(ScreensManager); ScreensManager.MoveTo(startTimer, v_EraseThisScreen); } else if (i_KeyboardState.IsKeyDown(Keys.N)) { ScreensManager.MoveBackToRootScreen(); } }
/// <summary> /// Going to game over screen. /// </summary> private void stageFailed() { clearStageComponents(); SoundManager soundManager = Game.Services.GetService(typeof(SoundManager)) as SoundManager; soundManager.PlaySoundEffect(eSounds.GameOver); string scores = string.Format("Player 1: {0}", m_spaceships[0].Score); for (int i = 1; i < m_spaceships.Length; i++) { scores = string.Format("{0}{1}Player {2}: {3}", scores, Environment.NewLine, i + 1, m_spaceships[i].Score); } bool v_EraseThisScreen = true; GameOverScreen gameOver = new GameOverScreen(this, scores); ScreensManager.MoveTo(gameOver, v_EraseThisScreen); }
/// <summary> /// Going to pausing screen. /// </summary> /// <param name="gameTime"></param> private void pause(GameTime gameTime) { DarkScreenCover pauseScreen = new DarkScreenCover(this); ScreensManager.MoveTo(pauseScreen); }