コード例 #1
0
        protected override void Draw(GameTime gameTime)
        {
            GraphicsDevice.Clear(Color.CornflowerBlue);

            spriteBatch.Begin();

            if (gameState == GameStates.TitleScreen)
            {
                spriteBatch.Draw(titleScreen,
                                 new Rectangle(0, 0, 800, 600), Color.White);
            }

            if (gameState == GameStates.Playing ||
                gameState == GameStates.WaveComplete ||
                gameState == GameStates.GameOver)
            {
                TileMap.Draw(spriteBatch);
                WeaponManager.Draw(spriteBatch);
                Player.Draw(spriteBatch);
                EnemyManager.Draw(spriteBatch);
                EffectsManager.Draw(spriteBatch);
                GoalManager.Draw(spriteBatch);

                CheckPlayerDeath();

                spriteBatch.DrawString(pericles14, "Score: " +
                                       GameManager.Score.ToString(), new Vector2(30, 5), Color.White);

                spriteBatch.DrawString(pericles14, "Terminals Remaining: " +
                                       GoalManager.ActiveTerminals, new Vector2(520, 5), Color.White);
            }

            if (gameState == GameStates.WaveComplete)
            {
                spriteBatch.DrawString(pericles14, "Beginning Wave " +
                                       (GameManager.CurrentWave + 1).ToString(),
                                       new Vector2(300, 300), Color.White);
            }

            if (gameState == GameStates.GameOver)
            {
                spriteBatch.DrawString(pericles14, "G A M E   O V E R",
                                       new Vector2(300, 300), Color.IndianRed);
            }

            spriteBatch.End();

            base.Draw(gameTime);
        }