/// <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.CornflowerBlue); // TODO: Add your drawing code here Globals.spriteBatch.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend); if (Globals.gameState == 0) { mainMenu.Draw(); } else if (Globals.gameState == 1) { gamePlay.Draw(); } else if (Globals.gameState == 2) { worldMap.Draw(); } Globals.normalEffect.Parameters["xSize"].SetValue((float)cursor.myModel.Bounds.Width); Globals.normalEffect.Parameters["ySize"].SetValue((float)cursor.myModel.Bounds.Height); Globals.normalEffect.Parameters["xDraw"].SetValue((float)((int)cursor.dims.X)); Globals.normalEffect.Parameters["yDraw"].SetValue((float)((int)cursor.dims.Y)); Globals.normalEffect.Parameters["filterColor"].SetValue(Color.White.ToVector4()); Globals.normalEffect.CurrentTechnique.Passes[0].Apply(); cursor.Draw(new Vector2(Globals.mouse.newMousePos.X, Globals.mouse.newMousePos.Y), new Vector2(0, 0), Color.White); Globals.spriteBatch.End(); base.Draw(gameTime); }
public virtual void Draw() { bkg.Draw(Vector2.Zero); for (int i = 0; i < buttons.Count; i++) { buttons[i].Draw(new Vector2(600, 400 + 55 * i)); } }
public virtual void Draw() { bkg.Draw(Vector2.Zero); for (int i = 0; i < levels.Count; i++) { levels[i].Draw(Vector2.Zero); } }
public virtual void Draw(Vector2 OFFSET) { Globals.normalEffect.Parameters["xSize"].SetValue(1.0f); Globals.normalEffect.Parameters["ySize"].SetValue(1.0f); Globals.normalEffect.Parameters["xDraw"].SetValue(1.0f); Globals.normalEffect.Parameters["yDraw"].SetValue(1.0f); Globals.normalEffect.Parameters["filterColor"].SetValue(Color.Black.ToVector4()); Globals.normalEffect.CurrentTechnique.Passes[0].Apply(); barBKG.Draw(OFFSET, new Vector2(0, 0), Color.Black); Globals.normalEffect.Parameters["filterColor"].SetValue(color.ToVector4()); Globals.normalEffect.CurrentTechnique.Passes[0].Apply(); bar.Draw(OFFSET + new Vector2(boarder, boarder), new Vector2(0, 0), color); }
public void Draw(World WORLD) { Globals.normalEffect.Parameters["xSize"].SetValue(1.0f); Globals.normalEffect.Parameters["ySize"].SetValue(1.0f); Globals.normalEffect.Parameters["xDraw"].SetValue(1.0f); Globals.normalEffect.Parameters["yDraw"].SetValue(1.0f); Globals.normalEffect.Parameters["filterColor"].SetValue(Color.White.ToVector4()); Globals.normalEffect.CurrentTechnique.Passes[0].Apply(); string tempStr = "Gold: " + WORLD.user.gold; Vector2 strDims = font.MeasureString(tempStr); Globals.spriteBatch.DrawString(font, tempStr, new Vector2(40, 40), Color.Black); tempStr = "Score: " + GameGlobals.score; strDims = font.MeasureString(tempStr); Globals.spriteBatch.DrawString(font, tempStr, new Vector2(Globals.screenWidth / 2 - strDims.X / 2, Globals.screenHeight - 40), Color.Black); if (WORLD.user.hero.dead || WORLD.user.spawnPoints.Equals(0)) { tempStr = "Press Enter or click Button to Restart!"; strDims = font.MeasureString(tempStr); Globals.spriteBatch.DrawString(font, tempStr, new Vector2(Globals.screenWidth / 2 - strDims.X / 2, Globals.screenHeight / 2), Color.Black); resetBtn.Draw(new Vector2(Globals.screenWidth / 2, Globals.screenHeight / 2 + 100)); } if (WORLD.user.gold > 50 || WORLD.user.buildings.Count <= 0) { tempStr = "You won click enter to play again!"; strDims = font.MeasureString(tempStr); Globals.spriteBatch.DrawString(font, tempStr, new Vector2(Globals.screenWidth / 2 - strDims.X / 2, Globals.screenHeight / 2), Color.Black); resetBtn.Draw(new Vector2(Globals.screenWidth / 2, Globals.screenHeight / 2 + 100)); } healthBar.Draw(new Vector2(20, Globals.screenHeight - 50)); if (GameGlobals.paused && WORLD.user.gold < 50) { pauseOverlay.Draw(Vector2.Zero); } }
public virtual void DrawGrid(Vector2 OFFSET) { if (showGrid) { Vector2 topLeft = GetSlotFromPixel(new Vector2(0, 0), Vector2.Zero); Vector2 botRight = GetSlotFromPixel(new Vector2(Globals.screenWidth, Globals.screenHeight), Vector2.Zero); Globals.normalEffect.Parameters["filterColor"].SetValue(Color.White.ToVector4()); Globals.normalEffect.CurrentTechnique.Passes[0].Apply(); for (int j = (int)topLeft.X; j <= botRight.X && j < slots.Count; j++) { for (int k = (int)topLeft.Y; k <= botRight.Y && k < slots[0].Count; k++) { if (currentHoverSlot.X == j && currentHoverSlot.Y == k) { Globals.normalEffect.Parameters["filterColor"].SetValue(Color.Red.ToVector4()); Globals.normalEffect.CurrentTechnique.Passes[0].Apply(); } else if (slots[j][k].filled) { Globals.normalEffect.Parameters["filterColor"].SetValue(Color.DarkGray.ToVector4()); Globals.normalEffect.CurrentTechnique.Passes[0].Apply(); } else { Globals.normalEffect.Parameters["filterColor"].SetValue(Color.White.ToVector4()); Globals.normalEffect.CurrentTechnique.Passes[0].Apply(); } gridImg.Draw(OFFSET + physicalStartPos + new Vector2(j * slotDims.X, k * slotDims.Y)); } } } for (int i = 0; i < gridItems.Count; i++) { gridItems[i].Draw(OFFSET); } }