/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed) { Exit(); } if (ReadyToPlay) { ReadyToPlay = false; state = State.FleetMenu; } switch (state) { case State.MainMenu: mainMenu.Update(gameTime); break; case State.OptionsMenu: settingsMenu.Update(gameTime); break; case State.LoginMenu: loginMenu.Update(gameTime); break; case State.RegisterMenu: registerMenu.Update(gameTime); break; case State.DeckMenu: deckMenu.Update(gameTime); break; case State.GameWindow: gameWindow.Update(gameTime); break; case State.ShopMenu: shopMenu.Update(gameTime); break; case State.FleetMenu: fleetMenu.Update(gameTime); break; case State.CardsMenu: cardsMenu.Update(gameTime); break; } base.Update(gameTime); }
/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// /// Select - Layer5 added by Matthew Baldock /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { //Allows game to exit. if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape)) { Exit(); } //particleEngine.EmitterLocation = new Vector2(Mouse.GetState().X, Mouse.GetState().Y); particleEngine.Update(gameTime); //Update the current state switch (currentGameState) { case GameState.Login: login_menu.Update(gameTime); break; case GameState.MainMenu: main_menu.Update(gameTime); break; case GameState.Multiplayer: multiplayer_menu.Update(gameTime); break; case GameState.Options: options_menu.Update(gameTime); break; case GameState.Credits: credits_menu.Update(gameTime); break; case GameState.CreateLobby: create_lobby_menu.Update(gameTime); break; case GameState.LobbyBrowser: lobby_browser_menu.Update(gameTime); break; case GameState.Lobby: lobby_menu.Update(gameTime); break; case GameState.Playing: gameplayScreen.Update(gameTime); break; case GameState.Select: shipselectionScreen.update(); break; case GameState.ControlMenu: control_menu.Update(gameTime); break; default: break; } base.Update(gameTime); }
/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape)) { Exit(); } if (ReadyToPlay) { ReadyToPlay = false; state = State.FleetMenu; } switch (state) { case State.MainMenu: mainMenu.Update(gameTime); break; case State.OptionsMenu: settingsMenu.Update(gameTime); break; case State.LoginMenu: loginMenu.Update(gameTime); break; case State.RegisterMenu: registerMenu.Update(gameTime); break; case State.DeckMenu: deckMenu.Update(gameTime); break; case State.GameWindow: gameWindow.Update(gameTime); break; case State.ShopMenu: shopMenu.Update(gameTime); break; case State.FleetMenu: fleetMenu.Update(gameTime); break; case State.CardsMenu: cardsMenu.Update(gameTime); break; } var toRemove = new List <Animation>(); animations.ForEach(p => { if (p.Update()) { toRemove.Add(p); } }); toRemove.ForEach(p => animations.Remove(p)); base.Update(gameTime); }