public override void update() { // restrict the hero's movement to the boundary bool holdVisibility = invisible; invisible = false; foreach (Obstacle b in boundaries) { b.checkCollisions(); } // update base character object (collisions, etc.) base.update(); invisible = holdVisibility; // update hero's weapons selectWeapon(); if (KeyboardDevice.isKeyTapped(Microsoft.Xna.Framework.Input.Keys.F)) { weapon.fire(); } foreach (Weapon w in weaponRack) { w.update(); } }
private void checkControl() { KeyboardDevice.update(); if (KeyboardDevice.isKeyDown(Keys.Escape)) { Exit(); } switch (state) { case State.BEGIN: if (KeyboardDevice.isKeyTapped(Keys.A)) { state = State.PLAYING; startScreen.remove(); } break; case State.PAUSED: if (KeyboardDevice.isKeyTapped(Keys.A)) { state = State.PLAYING; pauseScreen.remove(); } if (KeyboardDevice.isKeyTapped(Keys.Q)) { state = State.BEGIN; world.remove(); world = new GameWorld(); pauseScreen.remove(); } break; case State.PLAYING: if (KeyboardDevice.isKeyTapped(Keys.A)) { state = State.PAUSED; } else if (world.gameOver()) { state = State.GAMEOVER; } break; case State.GAMEOVER: if (KeyboardDevice.isKeyTapped(Keys.A)) { state = State.BEGIN; world.remove(); world = new GameWorld(); gameOverScreen.remove(); } break; } }
private void selectWeapon() { if (KeyboardDevice.isKeyTapped(Microsoft.Xna.Framework.Input.Keys.D1)) { weapon = weaponRack[0]; } else if (KeyboardDevice.isKeyTapped(Microsoft.Xna.Framework.Input.Keys.D2)) { weapon = weaponRack[1]; } else if (KeyboardDevice.isKeyTapped(Microsoft.Xna.Framework.Input.Keys.D3)) { weapon = weaponRack[2]; } else if (KeyboardDevice.isKeyTapped(Microsoft.Xna.Framework.Input.Keys.D4)) { weapon = weaponRack[3]; } if (KeyboardDevice.isKeyTapped(Microsoft.Xna.Framework.Input.Keys.D5)) { weapon = weaponRack[4]; } }
private void checkControl() { // pause game speed if (KeyboardDevice.isKeyTapped(Keys.W)) { stop = !stop; if (stop) { Console.WriteLine("Entering debug mode - press 'W' to resume game"); Speed = 0f; } else { Console.WriteLine("Exiting debug mode"); Speed = SpeedReference; } } if (KeyboardDevice.isKeyTapped(Keys.P)) { eManager.killAll(); } }