protected override void Update(GameTime gameTime)
{
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape))
{
Exit();
}
KeyboardState pauseButton = Keyboard.GetState();
if (pauseButton.IsKeyDown(Keys.P))
{
_pauseGame = false;
}
CheckLivingEntityCollision(_player);
if (!_pauseGame)
{
if (gc.CurrentLevel == 1 && gc.LevelFinished)
{
gc.LevelFinished = false;
gc.CurrentLevel = 2;
_board = new Board(_spriteBatch, _tileTexture, 59, 25);
_board.CreateNewBossBoard();
_player.Position = new Vector2(50, ScreenHeight - (TileHeight * 2));
_geryon.Position = new Vector2(ScreenWidth - (TileWidth * 2), ScreenHeight - (TileHeight * 2));
}
base.Update(gameTime);
background1.Update(gameTime);
_player.Update(gameTime);
_vortex.Update(gameTime, _player);
_spawn += (float)gameTime.ElapsedGameTime.TotalSeconds;
foreach (Enemy demon in _demonHorde)
{
demon.Update(gameTime, _player);
}
if (gc.CurrentLevel == 1)
{
LoadEnemies();
}
for (int i = 0; i < gc.MaxScoreCount; i++)
{
_coins[i].Update(gameTime, _player);
}
if (gc.CurrentLevel == 2)
{
_geryon.Update(gameTime, _player);
_healthRectangle = new Rectangle(ScreenWidth / 2, ScreenHeight / 10, _geryon.Health, 20);
CheckWinCondition();
}
}
}