public override void Update(GameTime gameTime) { KeyboardState keyState = Keyboard.GetState(); if (delayedAction.eventHappened(gameTime, keyState.IsKeyDown(Keys.Down) || keyState.IsKeyDown(Keys.Up) || keyState.IsKeyDown(Keys.Left) || keyState.IsKeyDown(Keys.Right) || (keyState.IsKeyDown(Keys.Enter) && !keyState.IsKeyDown(Keys.RightAlt)))) { if (keyState.IsKeyDown(Keys.Down)) { chosenMenuItem++; chosenMenuItem = chosenMenuItem % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Up)) { chosenMenuItem--; chosenMenuItem = (chosenMenuItem + menuItems.Count()) % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Left) && chosenMenuItem == 2) { Difficulty--; Difficulty = (Constants.Difficulties)(((int)Difficulty + Constants.DifficultiesString.Count()) % Constants.DifficultiesString.Count()); } else if (keyState.IsKeyDown(Keys.Right) && chosenMenuItem == 2) { Difficulty++; Difficulty = (Constants.Difficulties)((int)Difficulty % Constants.DifficultiesString.Count()); //chosenMenuItem = (Difficulty + menuItems.Count()) % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Enter)) { switch (chosenMenuItem) { case 0: myGame.mediator.fireEvent(MyEvent.G_StartGame); break; case 1: myGame.mediator.fireEvent(MyEvent.G_HelpScreen); break; case 2: myGame.mediator.fireEvent(MyEvent.G_Exit); break; } } } base.Update(gameTime); }
/// <summary> /// Allows the game component to update itself. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> public override void Update(GameTime gameTime) { if (checkSilencePeriod(gameTime)) return; KeyboardState keyState = Keyboard.GetState(); if (delayedAction.eventHappened(gameTime, (keyState.IsKeyDown(Keys.Down) || keyState.IsKeyDown(Keys.Up) || keyState.IsKeyDown(Keys.Left) || keyState.IsKeyDown(Keys.Right) || (keyState.IsKeyDown(Keys.Enter)) && !keyState.IsKeyDown(Keys.RightAlt)))) { if (keyState.IsKeyDown(Keys.Down)) { chosenMenuItem++; chosenMenuItem = chosenMenuItem % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Up)) { chosenMenuItem--; chosenMenuItem = (chosenMenuItem + menuItems.Count()) % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Left) && chosenMenuItem == 3) { Difficulty--; Difficulty = (Constants.Difficulties)(((int)Difficulty + Constants.DifficultiesString.Count()) % Constants.DifficultiesString.Count()); } else if ((keyState.IsKeyDown(Keys.Right) || keyState.IsKeyDown(Keys.Enter)) && chosenMenuItem == 3) { Difficulty++; Difficulty = (Constants.Difficulties)((int)Difficulty % Constants.DifficultiesString.Count()); //chosenMenuItem = (Difficulty + menuItems.Count()) % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Enter)) { switch (chosenMenuItem) { case 0: if (continueEnabled) { myGame.paused = false; myGame.resume(); } break; case 1: myGame.mediator.fireEvent(MyEvent.G_StartGame); break; case 2: myGame.mediator.fireEvent(MyEvent.G_HelpScreen); break; case 4: myGame.mediator.fireEvent(MyEvent.G_CreditScreen); break; case 5: myGame.mediator.fireEvent(MyEvent.G_Exit); break; } } } base.Update(gameTime); }
/// <summary> /// Allows the game component to update itself. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> public override void Update(GameTime gameTime) { if (checkSilencePeriod(gameTime)) { return; } KeyboardState keyState = Keyboard.GetState(); if (delayedAction.eventHappened(gameTime, (keyState.IsKeyDown(Keys.Down) || keyState.IsKeyDown(Keys.Up) || keyState.IsKeyDown(Keys.Left) || keyState.IsKeyDown(Keys.Right) || (keyState.IsKeyDown(Keys.Enter)) && !keyState.IsKeyDown(Keys.RightAlt)))) { if (keyState.IsKeyDown(Keys.Down)) { chosenMenuItem++; chosenMenuItem = chosenMenuItem % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Up)) { chosenMenuItem--; chosenMenuItem = (chosenMenuItem + menuItems.Count()) % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Left) && chosenMenuItem == 3) { Difficulty--; Difficulty = (Constants.Difficulties)(((int)Difficulty + Constants.DifficultiesString.Count()) % Constants.DifficultiesString.Count()); } else if ((keyState.IsKeyDown(Keys.Right) || keyState.IsKeyDown(Keys.Enter)) && chosenMenuItem == 3) { Difficulty++; Difficulty = (Constants.Difficulties)((int)Difficulty % Constants.DifficultiesString.Count()); //chosenMenuItem = (Difficulty + menuItems.Count()) % menuItems.Count(); } else if (keyState.IsKeyDown(Keys.Enter)) { switch (chosenMenuItem) { case 0: if (continueEnabled) { myGame.paused = false; myGame.resume(); } break; case 1: myGame.mediator.fireEvent(MyEvent.G_StartGame); break; case 2: myGame.mediator.fireEvent(MyEvent.G_HelpScreen); break; case 4: myGame.mediator.fireEvent(MyEvent.G_CreditScreen); break; case 5: myGame.mediator.fireEvent(MyEvent.G_Exit); break; } } } base.Update(gameTime); }