Ejemplo n.º 1
0
        /*************************************
         * Check menu input
         *************************************/
        private void checkMenuInput(MenuGUI gui_menu)
        {
            KeyboardState newState = Keyboard.GetState();

            // Is Enter key pressed
            if (newState.IsKeyDown(Keys.Enter))
            {
                // If not down last update, key has just been pressed.
                if (!oldState.IsKeyDown(Keys.Enter))
                {
                    if (gui_menu.getActiveItem() == 1)
                    {
                        if (gamePaused == true)
                        {
                            playingInstance.Play();
                            gamePaused = false;
                        }
                        else
                        {
                            startNewGame();
                        }
                    }
                    else if (gui_menu.getActiveItem() == 2)
                    {
                        if (currentGameState == GameState.GameEnded || gamePaused == true)
                        {
                            titleInstance.Play();
                            gamePaused = false;
                            currentGameState = GameState.MainMenu;
                        }
                        else if (currentGameState == GameState.GameStarted && game.gameOver == true)
                        {
                            titleInstance.Play();
                            game.gameOver = false;
                            currentGameState = GameState.MainMenu;
                        }
                        else
                        {
                            this.Exit();
                        }
                    }
                }
            }

            // Is Down key pressed
            if (newState.IsKeyDown(Keys.Down))
            {
                // If not down last update, key has just been pressed.
                if (!oldState.IsKeyDown(Keys.Down))
                {
                    gui_menu.activeItemDown();
                }
            }

            // Is Up key pressed
            if (newState.IsKeyDown(Keys.Up))
            {
                // If not down last update, key has just been pressed.
                if (!oldState.IsKeyDown(Keys.Up))
                {
                    gui_menu.activeItemUp();
                }
            }

            // Set oldState
            oldState = newState;
        }