// This method checks the GameScreen.IsActive property, so the game will
// stop updating when the pause menu is active, or if you tab away to a different application.
public override void Update(GameTime gameTime, bool otherScreenHasFocus, bool coveredByOtherScreen)
{
base.Update(gameTime, otherScreenHasFocus, false);
// Gradually fade in or out depending on whether we are covered by the pause screen.
if (coveredByOtherScreen)
{
_pauseAlpha = Math.Min(_pauseAlpha + 1f / 32, 1);
}
else
{
_pauseAlpha = Math.Max(_pauseAlpha - 1f / 32, 0);
}
if (IsActive)
{
_player.Update(gameTime);
_level.Update(gameTime);
_level.CheckDoorCollision(_player);
}
}