private void SetDebugMenu()
 {
     m_option = OptionMode.DebugMainMenu;
     List<INamedItem> itemList = new List<INamedItem>() { new TextElement("Create Item"), new TextElement("Create Monster"), new TextElement("Heal Player"),
         new TextElement("Map Debug Settings"),  new TextElement("Kill Monsters on Floor"), new TextElement("Add Skill Points"), new TextElement("Add All Skills"), new TextElement("Exit") };
     m_gameInstance.SendPaintersRequest(new ShowListSelectionWindow(true, itemList, false, "Debug Options"));
 }
 private void SetCreateLevelMenu(int totalLevels)
 {
     m_option = OptionMode.SelectLevel;
     List<INamedItem> mapSettings = new List<INamedItem>();
     for (int i = 0; i <= totalLevels; ++i)
         mapSettings.Add(new TextElement(i.ToString()));
     m_gameInstance.SendPaintersRequest(new ShowListSelectionWindow(true, mapSettings, false, "Level To Spawn"));
 }
 private void CreateMapDebugSettings()
 {
     m_option = OptionMode.MapDebugging;
     List<INamedItem> mapSettings = new List<INamedItem>() { new TextElement("Debug Map Moveable"), new TextElement("Debug FOV"), new TextElement("Toggle FOV") };
     m_gameInstance.SendPaintersRequest(new ShowListSelectionWindow(true, mapSettings, false, "Map Debug Settings"));
 }
 private void SetMonsterMenu()
 {
     m_option = OptionMode.CreateMonster;
     m_gameInstance.SendPaintersRequest(new ShowListSelectionWindow(true, (List<INamedItem>)m_engine.Debugger.DebugRequest("GetAllMonsterList", null), false, "Monster To Spawn"));
 }
        private void MapDebuggingSelectedDelegate(INamedItem item)
        {
            if (item == null)
                return;

            switch (item.DisplayName)
            {
                case "Debug Map Moveable":
                    m_gameInstance.SendPaintersRequest(new ToggleDebuggingMoveable(m_engine));
                    m_gameInstance.UpdatePainters();
                    break;
                case "Debug FOV":
                    m_gameInstance.SendPaintersRequest(new ToggleDebuggingFOV(m_engine));
                    m_gameInstance.UpdatePainters();
                    break;
                case "Toggle FOV":
                    m_gameInstance.SendPaintersRequest(new SwapFOVEnabledStatus());
                    m_gameInstance.UpdatePainters();
                    break;
            }
            m_option = OptionMode.DebugMainMenu;
            Escape();
        }   
 public DebugDialogKeyboardHandler()
 {
     m_option = OptionMode.DebugMainMenu;
 }
 private void CreateLevelSelectedDelegate(INamedItem item)
 {
     if (item == null)
         return;
     if (m_spawnItem)
         m_engine.Debugger.DebugRequest("SpawnItem", new Pair<string, int>(m_toSpawnName, int.Parse(item.DisplayName, CultureInfo.InvariantCulture)));
     else
         m_engine.Debugger.DebugRequest("SpawnMonster", new Pair<string, int>(m_toSpawnName, int.Parse(item.DisplayName, CultureInfo.InvariantCulture)));
     m_option = OptionMode.DebugMainMenu;
     Escape();
 }
        public static string LeesString(string label, int maxLength, OptionMode optionMode)
        {
            var ok = false;

#nullable enable
 public OptionConfiguration()
 {
     Mode = OptionMode.Default;
 }
Exemple #10
0
        protected override void Update(GameTime gameTime)
        {
            inputState.Update();
            gameTicksPerSecond = this.TargetElapsedTime.Milliseconds / 1000.0f;

            switch (currentState)
            {
            case GameState.SplashScreen:
                if (inputState.MenuCancel)
                {
                    currentState = GameState.ExitScreen;
                }
                else
                {
                    currentState = GameState.TitleScreen;
                }

                break;

            case GameState.TitleScreen:
                titleScreen.NextPosition(gameTicksPerSecond);

                if (inputState.MenuSelect || inputState.MenuCancel)
                {
                    currentState = GameState.MainMenu;
                }

                break;

            case GameState.MainMenu:
                ResetGame();

                if (inputState.MenuCancel)
                {
                    currentState = GameState.TitleScreen;
                }

                if (inputState.MenuUp)
                {
                    mainMenuMode--;
                    if (mainMenuMode < MenuMode.SinglePlayer)
                    {
                        mainMenuMode = MenuMode.SinglePlayer;
                    }
                }
                if (inputState.MenuDown)
                {
                    mainMenuMode++;
                    if (mainMenuMode > MenuMode.Exit)
                    {
                        mainMenuMode = MenuMode.Exit;
                    }
                }
                if (inputState.MenuSelect)
                {
                    switch (mainMenuMode)
                    {
                    case MenuMode.MultiPlayer:
                        gameScreen.GameMode = GameMode.MultiPlayer;
                        currentState        = GameState.Running;
                        break;

                    case MenuMode.SinglePlayer:
                        gameScreen.GameMode = GameMode.SinglePlayer;
                        currentState        = GameState.Running;
                        break;

                    case MenuMode.Option:
                        currentState = GameState.SettingsMenu;
                        break;

                    case MenuMode.Exit:
                        currentState = GameState.ExitScreen;
                        break;
                    }
                }
                break;

            case GameState.SettingsMenu:
                if (inputState.MenuCancel)
                {
                    currentState = GameState.MainMenu;
                }

                if (inputState.MenuUp)
                {
                    optionMenuMode--;
                    if (optionMenuMode < OptionMode.AdjustScreen)
                    {
                        optionMenuMode = OptionMode.AdjustScreen;
                    }
                }

                if (inputState.MenuDown)
                {
                    optionMenuMode++;
                    if (optionMenuMode > OptionMode.MainMenu)
                    {
                        optionMenuMode = OptionMode.MainMenu;
                    }
                }

                if (inputState.MenuSelect)
                {
                    switch (optionMenuMode)
                    {
                    case OptionMode.AdjustScreen:
                        currentState = GameState.ScalingScreen;
                        break;

                    case OptionMode.MainMenu:
                        currentState = GameState.MainMenu;
                        break;
                    }
                }
                break;

            case GameState.ScalingScreen:
                if (inputState.MenuCancel)
                {
                    currentState = GameState.MainMenu;
                }

                if (inputState.DirectionUp)
                {
                    screenOffset.Y--;
                }

                if (inputState.DirectionDown)
                {
                    screenOffset.Y++;
                }

                if (inputState.DirectionLeft)
                {
                    screenOffset.X--;
                }

                if (inputState.DirectionRight)
                {
                    screenOffset.X++;
                }

                if (inputState.DirectionClick)
                {
                    screenOffset = screenOffsetOrigin;
                }

                if (inputState.OtherDirectionUp)
                {
                    scalingFactor -= .001f;
                }

                if (inputState.OtherDirectionDown)
                {
                    scalingFactor += .001f;
                }

                if (inputState.OtherDirectionLeft)
                {
                    scalingFactor -= .01f;
                }

                if (inputState.OtherDirectionRight)
                {
                    scalingFactor += .01f;
                }

                if (inputState.OtherDirectionClick)
                {
                    scalingFactor = scalingFactorOrigin;
                }

                if (inputState.MenuSelect)
                {
                    pongConfig.ScalingFactor = scalingFactor;
                    pongConfig.ScreenOffset  = screenOffset;
                    pongConfig.Save(GetStorageDevice());
                    currentState = GameState.MainMenu;
                }

                break;

            case GameState.Running:
                startedGame = true;

                if (inputState.PauseGame)
                {
                    currentState = GameState.Paused;
                }

                if (GamePad.GetState(PlayerIndex.One).DPad.Up == ButtonState.Pressed
#if !ZUNE
                    || Keyboard.GetState().IsKeyDown(Keys.W)
#endif
                    )
                {
                    gameScreen.RedPaddleDirection = PaddleDirection.Up;
                }
                else if (GamePad.GetState(PlayerIndex.One).DPad.Down == ButtonState.Pressed
#if !ZUNE
                         || Keyboard.GetState().IsKeyDown(Keys.S)
#endif
                         )
                {
                    gameScreen.RedPaddleDirection = PaddleDirection.Down;
                }
                else
                {
                    gameScreen.RedPaddleDirection = PaddleDirection.Stop;
                }

                if (GamePad.GetState(PlayerIndex.Two).DPad.Up == ButtonState.Pressed
#if !ZUNE
                    || Keyboard.GetState().IsKeyDown(Keys.Up)
#endif
                    )
                {
                    gameScreen.BluePaddleDirection = PaddleDirection.Up;
                }
                else if (GamePad.GetState(PlayerIndex.Two).DPad.Down == ButtonState.Pressed
#if !ZUNE
                         || Keyboard.GetState().IsKeyDown(Keys.Down)
#endif
                         )
                {
                    gameScreen.BluePaddleDirection = PaddleDirection.Down;
                }
                else
                {
                    gameScreen.BluePaddleDirection = PaddleDirection.Stop;
                }

                gameScreen.NextPosition(gameTicksPerSecond);

                break;

            case GameState.GameOver:
                if (inputState.MenuCancel || inputState.MenuSelect)
                {
                    currentState = GameState.MainMenu;
                }
                break;

            case GameState.Paused:
                if (inputState.MenuSelect)
                {
                    currentState = GameState.Running;
                }

                if (inputState.MenuCancel)
                {
                    currentState = GameState.MainMenu;
                }

                break;

            case GameState.ExitScreen:
                if (inputState.MenuCancel)
                {
                    currentState = GameState.MainMenu;
                }

                if (
                    GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed
#if ZUNE
                    || inputState.MenuSelect
#endif
                    )
                {
                    this.Exit();
                }

                break;
            }

            base.Update(gameTime);
        }
Exemple #11
0
 public OptionItem(OptionMode mode, IDHCPOption option)
 {
     this.Mode   = mode;
     this.Option = option;
 }