public override void Update(GameTime gameTime) { level.Update(gameTime); if (Game.IsActive) { // Check if user wishes to return to menu if (InputHandler.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.Escape)) { if (MessageBox.Show("Return to the menu?", "Return to Menu", MessageBoxButtons.YesNo, System.Windows.Forms.MessageBoxIcon.Question) == DialogResult.Yes) { Main.SetState(typeof(ProfilerMenu)); SetBotPosition(new Coord2(0, 0)); SetPlayerPosition(new Coord2(1, 0)); } } // Check for mouse clicks if (InputHandler.IsMouseInWindow(GraphicsDevice.Viewport.Bounds)) { // Check for mouse clicks if (InputHandler.IsMouseButtonPressed(MouseButton.LeftButton) || InputHandler.IsMouseButtonPressed(MouseButton.RightButton)) { ClearAll(); Coord2 mp = new Coord2(InputHandler.MousePosition().X / level.Map.TileSize, InputHandler.MousePosition().Y / level.Map.TileSize); if (level.Map.ValidPosition(mp)) { if (InputHandler.IsMouseButtonPressed(MouseButton.LeftButton)) { if (level.Bot.GridPosition != mp) { level.SetPlayerPosition(mp); } } else { if (level.Player.GridPosition != mp) { level.SetBotPosition(mp); } } } } // Update mouse position mousePos = new Point(InputHandler.MousePosition().X / level.Map.TileSize, InputHandler.MousePosition().Y / level.Map.TileSize); } // Check for hide/show instructions if (InputHandler.IsKeyPressed(Microsoft.Xna.Framework.Input.Keys.Tab)) { showInstructions = !showInstructions; } } base.Update(gameTime); }
public override void Update(GameTime gameTime) { if (isActive) { foreach (Button b in buttons) { b.Update(); if (b.IsPressed) { if (b.Command == MenuCommand.OpenDijkstra || b.Command == MenuCommand.OpenAStar || b.Command == MenuCommand.OpenScentAlgorithm) { LoadMap(); if (b.Command == MenuCommand.OpenDijkstra) { LevelHandler.SetPathfindingAlgorithm(PathfinderAlgorithm.Dijkstra); } else if (b.Command == MenuCommand.OpenAStar) { LevelHandler.SetPathfindingAlgorithm(PathfinderAlgorithm.AStar); } else if (b.Command == MenuCommand.OpenScentAlgorithm) { LevelHandler.SetPathfindingAlgorithm(PathfinderAlgorithm.ScentMap); } else { Console.WriteLine("Menu.cs: Error, attempted to set unrecognized pathfinding algorithm. Defaulting to Dijkstra."); LevelHandler.SetPathfindingAlgorithm(PathfinderAlgorithm.Dijkstra); } Main.SetState(typeof(LevelHandler)); } else if (b.Command == MenuCommand.OpenMapFile) { OpenMap(); } else if (b.Command == MenuCommand.OpenTestConfig) { if (LoadMap()) { RunTestConfig(); } } else { Console.WriteLine("Unrecognized menu button command called.\n"); } } } } else { testConfigBox.Activate(); // If not active, keep focus on the configuration box } base.Update(gameTime); }
public override void Update(GameTime gameTime) { level.Update(gameTime); // Check if user wishes to return to menu if (InputHandler.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.Escape)) { if (MessageBox.Show("Return to the menu?", "Return to Menu", MessageBoxButtons.YesNo, System.Windows.Forms.MessageBoxIcon.Question) == DialogResult.Yes) { Main.SetState(typeof(Menu)); } } base.Update(gameTime); }
/// <summary> /// Update function for this component. /// </summary> public override void Update(GameTime gameTime) { if (isActive) { foreach (Button b in buttons) { b.Update(); if (b.IsPressed) { if (b.Command == MenuCommand.OpenDijkstra || b.Command == MenuCommand.OpenAStar || b.Command == MenuCommand.OpenScentMap) { if (LoadMap()) { if (b.Command == MenuCommand.OpenDijkstra) { LevelHandler.SetPathfindingAlgorithm(PathfinderAlgorithm.Dijkstra); } else if (b.Command == MenuCommand.OpenAStar) { LevelHandler.SetPathfindingAlgorithm(PathfinderAlgorithm.AStar); } else if (b.Command == MenuCommand.OpenScentMap) { LevelHandler.SetPathfindingAlgorithm(PathfinderAlgorithm.ScentMap); } else { Console.WriteLine("Menu.cs: Error, attempted to set unrecognized pathfinding algorithm. Defaulting to Dijkstra."); LevelHandler.SetPathfindingAlgorithm(PathfinderAlgorithm.Dijkstra); } Main.SetState(typeof(LevelHandler)); } } else if (b.Command == MenuCommand.OpenMapFile) { OpenMap(); } else if (b.Command == MenuCommand.OpenTestConfig) { if (LoadMap()) { RunTestConfig(); } } else if (b.Command == MenuCommand.OpenGenerateMap) { RunGenerateMap(); } else { Console.WriteLine("Unrecognized menu button command called.\n"); } } } } else { if (InputHandler.IsMouseButtonPressed(MouseButton.LeftButton) && game.IsActive) { if (mapGenActive) { if (Form.ActiveForm != mapGen) { mapGen.Activate(); SystemSounds.Exclamation.Play(); } } if (configTestActive && !testActive) { if (Form.ActiveForm != testConfigBox) { testConfigBox.Activate(); SystemSounds.Exclamation.Play(); } } } } base.Update(gameTime); }