public Actor() { theMaster = Master.theMaster; theRenderman = theMaster.Renderer; if (moveSpeed == 0) moveSpeed = radius = density = width = height = 10f; }
public void drawLeaderboard(Game1 cGame, Master cScore) { Start = "Start Game"; Quit = "Exit Game"; cGame.spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend); cGame.spriteBatch.DrawString(Arial, Start, new Vector2(400.0f, 200.0f), new Color((byte)fontColor.R, (byte)fontColor.G, (byte)fontColor.B)); cGame.spriteBatch.DrawString(Arial, Quit, new Vector2(400.0f, 400.0f), new Color((byte)fontColor.R, (byte)fontColor.G, (byte)fontColor.B)); cGame.spriteBatch.End(); }
public void Draw(Game1 cGame, Master cScore) { update(); cGame.spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.NonPremultiplied); cGame.spriteBatch.Draw(backgroundImg, new Vector2(0, 0), Color.White); cGame.spriteBatch.End(); player1Score = "Player 1 Score: " + cScore.returnScore[0]; player2Score = "Player 2 Score: " + cScore.returnScore[1]; cGame.spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend); cGame.spriteBatch.DrawString(Arial, player1Score, new Vector2(325.0f, 300.0f), new Color((byte)fontColor.R, (byte)fontColor.G, (byte)fontColor.B)); cGame.spriteBatch.DrawString(Arial, player2Score, new Vector2(325.0f, 320.0f), new Color((byte)fontColor.R, (byte)fontColor.G, (byte)fontColor.B)); cGame.spriteBatch.End(); }
public void drawLeaderboard(Game1 cGame, GameTime gameTime, Master cScore, int CircleCount, int NeutralCount, int SquareCount, int maxEnemyNumber) { if (!doOnce) { gTimeSeconds = gameTime.TotalGameTime.TotalSeconds; gTimeMinutes = gameTime.TotalGameTime.TotalMinutes; countDownSecs = 60; countDownMins = cScore.GameTimeLeft - 1; doOnce = true; } if (gTimeSeconds + 1 < gameTime.TotalGameTime.TotalSeconds) { if (countDownSecs <= 0 && countDownMins >= 0) countDownSecs = 60; else if (countDownSecs > 0) countDownSecs--; gTimeSeconds = gameTime.TotalGameTime.TotalSeconds; } if (gTimeMinutes + 1 < gameTime.TotalGameTime.TotalMinutes) { countDownMins--; gTimeMinutes = gameTime.TotalGameTime.TotalMinutes; } cScore.GameTimeLeft = countDownMins; if (countDownMins < 10 && countDownSecs < 10) gameTimer = "Time Left: 0" + countDownMins + ":0" + countDownSecs; else if (countDownMins < 10) gameTimer = "Time Left: 0" + countDownMins + ":" + countDownSecs; else if (countDownSecs < 10) gameTimer = "Time Left: " + countDownMins + ":0" + countDownSecs; else gameTimer = "Time Left: " + countDownMins + ":" + countDownSecs; player1Score = "Square Score: " + cScore.returnScore[0]; player2Score = "Circle Score: " + cScore.returnScore[1]; //20 apart on y-axis //fuxk x axis cGame.spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend); cGame.spriteBatch.DrawString(Arial, player1Score, new Vector2(5.0f, 5.0f), new Color((byte)fontColor.R, (byte)fontColor.G, (byte)fontColor.B)); cGame.spriteBatch.DrawString(Arial, player2Score, new Vector2(600.0f, 5.0f), new Color((byte)fontColor.R, (byte)fontColor.G, (byte)fontColor.B)); cGame.spriteBatch.DrawString(Arial, gameTimer, new Vector2(300.0f, 5.0f), new Color((byte)fontColor.R, (byte)fontColor.G, (byte)fontColor.B)); cGame.spriteBatch.Draw(CircleBar, new Rectangle(0, 550, 800 * CircleCount / maxEnemyNumber, 50), Color.White); cGame.spriteBatch.Draw(NeutralBar, new Rectangle(800 * CircleCount / maxEnemyNumber, 550, 800 * NeutralCount / maxEnemyNumber, 50), Color.White); cGame.spriteBatch.Draw(SquareBar, new Rectangle(800 * (CircleCount + NeutralCount) / maxEnemyNumber, 550, 800 * SquareCount / maxEnemyNumber, 50), Color.White); cGame.spriteBatch.End(); }
public void update(GameTime gametime, Master master) { //calculate the transform matrix transform = Matrix.Identity * //translate by negative position Matrix.CreateTranslation(-position.X, -position.Y, 0) * Matrix.CreateScale(scale) * //rotate about z axis //math.createrotationz(1.75f) * //translate by the origin amount Matrix.CreateTranslation(viewportwidth / 2, viewportheight / 2, 0); translate = Matrix.Identity * //translate by negative position Matrix.CreateTranslation(-position.X, -position.Y, 0) * //rotate about z axis //math.createrotationz(1.75f) * //translate by the origin amount Matrix.CreateTranslation(viewportwidth / 2, viewportheight / 2, 0); //delta so the movement seems smoooth float delta = (float)gametime.ElapsedGameTime.TotalSeconds; //get a rectangle which contains all the players Rectangle players = master.playerspace(); //pad the rectangle players.X -= 200; players.Y -= 200; players.Width += 400; players.Height += 400; position = smoothstep(position, new Vector2(players.Center.X, players.Center.Y), movespeed); //create a scale based on the the size of the player rectangle in respect to the original viewport size float xscale = viewportwidth / players.Width; float yscale = viewportheight/ players.Height; //use the largest scaling value, the smaller value scale will still include all the picture from the larger scale float newscale = (xscale < yscale) ? xscale : yscale; //clamp the scale to the min or max newscale = clamp(newscale, minscale, maxscale); //smooth the scaling scale = smoothstep(scale, newscale, scalespeed); //currently not using the rotation, but it is in there for future reference }
public Game1() { graphics = new GraphicsDeviceManager(this); master = new Master(this); Content.RootDirectory = "Content"; }