/// <summary>
 /// This is called when the game should draw itself.
 /// </summary>
 /// <param name="gameTime">Provides a snapshot of timing values.</param>
 protected override void Draw(GameTime gameTime)
 {
     Background.Draw(gameTime, _spriteBatch);
     _currentState?.Draw(gameTime, _spriteBatch);
     base.Draw(gameTime);
 }