/// <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(); } // TODO: Add your update logic here KeyboardState state = Keyboard.GetState(); player.Update(gameTime, map, shift); player.DetectMove(state, GamePad.GetState(PlayerIndex.One), map, gameTime, shotTexture); player.UpdateShift(ref shift); //Console.WriteLine(player.IsAlive); if (shift.Y < Constants.WindowVertTileNum - mapSize.Y) { shift.Y = Constants.WindowVertTileNum - mapSize.Y; } for (int i = 0; i < map.Count; i++) { map[i].Update(gameTime, map, shift); } previousState = state; base.Update(gameTime); }