public Game1() { graphics = new GraphicsDeviceManager(this); Content.RootDirectory = "Content"; graphics.PreferredBackBufferWidth = 1024; graphics.PreferredBackBufferHeight = 768; Window.Title = "Infinity TD"; input = new InputHandler(this); Components.Add(input); IsMouseVisible = false; gameManager = new GameStateManager(this); Components.Add(gameManager); TitleIntroState = new TitleIntroState(this); StartMenuState = new StartMenuState(this); OptionsMenuState = new OptionsMenuState(this); PlayingState = new PlayingState(this); PausedState = new PausedState(this); soundManager = new SoundManager(this); gameManager.ChangeState(TitleIntroState.Value); }
public bool WasButtonPressed(int playerIndex, InputHandler.ButtonType button) { int pi = playerIndex; switch(button) { case InputHandler.ButtonType.A: { return (gamePadsState[pi].Buttons.A == ButtonState.Pressed && prevGamePadsState[pi].Buttons.A == ButtonState.Released); } case InputHandler.ButtonType.B: { return (gamePadsState[pi].Buttons.B == ButtonState.Pressed && prevGamePadsState[pi].Buttons.B == ButtonState.Released); } case InputHandler.ButtonType.Back: { return (gamePadsState[pi].Buttons.Back == ButtonState.Pressed && prevGamePadsState[pi].Buttons.Back == ButtonState.Released); } case InputHandler.ButtonType.LeftShoulder: { return (gamePadsState[pi].Buttons.LeftShoulder == ButtonState.Pressed && prevGamePadsState[pi].Buttons.LeftShoulder == ButtonState.Released); } case InputHandler.ButtonType.LeftStick: { return (gamePadsState[pi].Buttons.LeftStick == ButtonState.Pressed && prevGamePadsState[pi].Buttons.LeftStick == ButtonState.Released); } case InputHandler.ButtonType.RightShoulder: { return (gamePadsState[pi].Buttons.RightShoulder == ButtonState.Pressed && prevGamePadsState[pi].Buttons.RightShoulder == ButtonState.Released); } case InputHandler.ButtonType.RightStick: { return (gamePadsState[pi].Buttons.RightStick == ButtonState.Pressed && prevGamePadsState[pi].Buttons.RightStick == ButtonState.Released); } case InputHandler.ButtonType.Start: { return (gamePadsState[pi].Buttons.Start == ButtonState.Pressed && prevGamePadsState[pi].Buttons.Start == ButtonState.Released); } case InputHandler.ButtonType.X: { return (gamePadsState[pi].Buttons.X == ButtonState.Pressed && prevGamePadsState[pi].Buttons.X == ButtonState.Released); } case InputHandler.ButtonType.Y: { return (gamePadsState[pi].Buttons.Y == ButtonState.Pressed && prevGamePadsState[pi].Buttons.Y == ButtonState.Released); } case InputHandler.ButtonType.DPadUp: { return (gamePadsState[pi].DPad.Up == ButtonState.Pressed && prevGamePadsState[pi].DPad.Up == ButtonState.Released); } case InputHandler.ButtonType.DPadDown: { return (gamePadsState[pi].DPad.Down == ButtonState.Pressed && prevGamePadsState[pi].DPad.Down == ButtonState.Released); } default: throw (new ArgumentException()); } }