public void Draw(SpriteBatch spriteBatch, Player player, Wavelist waveList) { spriteBatch.Draw(UItexture, UIposition, Color.White); string text = string.Format("Gold : {0} Lives : {1} Wave number : {2} Number of waves: {3}", player.Money, player.Lives, waveList.Round, waveList.NumWaves); spriteBatch.DrawString(UIfont, text, UItextPosition, Color.White); }
protected override void Update(GameTime gameTime) { if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape)) { Exit(); } switch (CurrentGameState) { case GameState.MainMenu: playButton.Update(gameTime); if (playButton.isClicked == true) { CurrentGameState = GameState.DifficultySelect; } playButton.Update(gameTime); break; case GameState.DifficultySelect: hardButton.Update(gameTime); mediumButton.Update(gameTime); easyButton.Update(gameTime); Texture2D enemyTexture = Content.Load <Texture2D>("enemy"); if (hardButton.isClicked == true) { CurrentGameState = GameState.Playing; waveList = new Wavelist(player, level, 20, enemyTexture); } else if (mediumButton.isClicked == true) { CurrentGameState = GameState.Playing; waveList = new Wavelist(player, level, 15, enemyTexture); } else if (easyButton.isClicked == true) { CurrentGameState = GameState.Playing; waveList = new Wavelist(player, level, 10, enemyTexture); } break; case GameState.Playing: if (player.Lives < 1) { CurrentGameState = GameState.Lost; player.Update(gameTime, null); } else if (waveList.Waves.Count == 0) { player.Lives = 0; CurrentGameState = GameState.Win; player.Update(gameTime, null); } else { player.Update(gameTime, waveList.Enemies); waveList.Update(gameTime); } break; case GameState.Lost: resetButton.Update(gameTime); if (resetButton.isClicked) { CurrentGameState = GameState.MainMenu; } break; case GameState.Win: resetButton1.Update(gameTime); if (resetButton1.isClicked) { CurrentGameState = GameState.MainMenu; } break; } base.Update(gameTime); }