/// <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) { GraphicsDevice.Clear(Color.White); spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Immediate, SaveStateMode.None, Matrix.Identity); graphics.GraphicsDevice.SamplerStates[0].MagFilter = TextureFilter.Point; graphics.GraphicsDevice.SamplerStates[0].MinFilter = TextureFilter.Point; graphics.GraphicsDevice.SamplerStates[0].MipFilter = TextureFilter.Point; if (menu.currentScreen == heart.MenuClass.Screen.Game) { spriteBatch.Draw(backGround, Vector2.Zero, new Rectangle(0, 0, 1280, 800), Color.White); if (joke == true) { spriteBatch.Draw(lolText, new Rectangle(0, 0, graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight), Color.White); } hc.Draw(spriteBatch, gameTime); sc.Draw(spriteBatch); expIsNow = itemSprite1.Draw(spriteBatch); bc.Draw(spriteBatch); } if (menu.currentScreen == heart.MenuClass.Screen.Pause) { UpdateInput(); spriteBatch.Draw(backGround, Vector2.Zero, new Rectangle(0, 0, 1280, 800), Color.White); if (joke == true) { spriteBatch.Draw(lolText, new Rectangle(0, 0, graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight), Color.White); } hc.Draw(spriteBatch, gameTime); sc.Draw(spriteBatch); expIsNow = itemSprite1.Draw(spriteBatch); bc.Draw(spriteBatch); menu.Draw(spriteBatch); } if (menu.currentScreen == heart.MenuClass.Screen.Title) { menu.Draw(spriteBatch); } if (menu.currentScreen == heart.MenuClass.Screen.Info) { menu.Draw(spriteBatch); } if (menu.currentScreen == heart.MenuClass.Screen.GameOver) { menu.Draw(spriteBatch); } if (menu.currentScreen == heart.MenuClass.Screen.Score) { menu.Draw(spriteBatch); } spriteBatch.End(); base.Draw(gameTime); }