예제 #1
0
 public override void Draw(TimeSpan delta)
 {
     base.Draw(delta);
     if (StartScreen.IsActive)
     {
         StartScreen.Draw(delta);
     }
     else
     {
         MessageConsole.Draw(delta);
         MenuConsole.Draw(delta);
         MainConsole.Draw(delta);
     }
 }
예제 #2
0
        protected override void Draw(GameTime gameTime)
        {
            switch (ApplicationData.CurrentScreen)
            {
            case ScreenType.Battle: battleScreen.Draw(GraphicsDevice, spriteBatch, Window.ClientBounds); break;

            case ScreenType.Start: startScreen.Draw(GraphicsDevice, spriteBatch); break;

            case ScreenType.GameOver: gameOverScreen.Draw(GraphicsDevice, spriteBatch); break;

            case ScreenType.ManageTeams: manageTeamScreen.Draw(GraphicsDevice, spriteBatch); break;

            case ScreenType.ManageCharacter: manageCharacterScreen.Draw(GraphicsDevice, spriteBatch); break;
            }

            base.Draw(gameTime);
        }
예제 #3
0
        /// <summary>
        /// Called 60 frames/per second and Draw all the
        /// sprites and other drawable images here
        /// </summary>
        protected override void Draw(GameTime gameTime)
        {
            GraphicsDevice.Clear(Color.LawnGreen);

            spriteBatch.Begin();

            switch (GameState)
            {
            case GameStates.Starting:
                startScreen.Draw(spriteBatch, gameTime);
                break;

            case GameStates.PlayingLevel1:
                if (coinsScreen != null)
                {
                    coinsScreen.Draw(spriteBatch, gameTime);
                }
                break;

            case GameStates.PlayingLevel2:
                if (asteroidsScreen != null)
                {
                    asteroidsScreen.Draw(spriteBatch, gameTime);
                }
                break;

            case GameStates.Ending:
                break;

            default:
                break;
            }

            spriteBatch.End();
            base.Draw(gameTime);
        }
예제 #4
0
        // Draw
        protected override void Draw(GameTime gameTime)
        {
            graphics.SynchronizeWithVerticalRetrace = false;

            GraphicsDevice.Clear(Color.DarkOliveGreen);
            spriteBatch.Begin();

            if (GameManager.GameState == GameManager.GameStates.PlayScreen || endScreen.fadein)
            {
                spriteBatch.Draw(Art.Background, Vector2.Zero, Color.DarkGray);
                GameManager.grid.Draw(spriteBatch, Art.DebugFont);
                UiManager.Draw(spriteBatch);
                GameManager.Draw(spriteBatch);
            }

            if (GameManager.GameState == GameManager.GameStates.InfoScreen)
            {
                infoScreen.Draw(spriteBatch);
            }

            if (GameManager.GameState == GameManager.GameStates.StartVideo || GameManager.GameState == GameManager.GameStates.TutScreen)
            {
                if (GameManager.videoPlayer.State != MediaState.Stopped)
                {
                    Texture2D texture = GameManager.videoPlayer.GetTexture();
                    if (texture != null)
                    {
                        spriteBatch.Draw(texture, new Rectangle(0, 0, graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight),
                                         Color.White);
                    }
                }
            }

            if (GameManager.GameState == GameManager.GameStates.StartScreen || startScreen.fadeout)
            {
                startScreen.Draw(spriteBatch);
            }

            if (GameManager.GameState == GameManager.GameStates.LoseScreen || endScreen.fadeout)
            {
                endScreen.Draw(spriteBatch);
            }


#if DEBUG
            // Draw debug text. Shadow on offset, then white text on top for visibility.

            /*if (!float.IsInfinity(1 / (float)gameTime.ElapsedGameTime.TotalSeconds))
             * {
             *  for (int i = 0; i < 2; i++)
             *  {
             *      spriteBatch.DrawString(Art.DebugFont,
             *          "DEBUG" +
             *          "\nFPS: " + (1 / (float)gameTime.ElapsedGameTime.TotalSeconds).ToString("") +
             *          "\nBuild: " + GameManager.BuildState +
             *          "\nEnemySpawn: " + WaveManager.EnemySpawnTimer,
             *          i < 1 ? Vector2.One : Vector2.Zero,     // if (i<1) {Vec.One} else {Vec.Zero}
             *          i < 1 ? Color.Black : Color.White);     // if (i<1) {C.Black} else {C.White}
             *  }
             * }
             *
             * //spriteBatch.DrawString(Art.DebugFont, tanks.ScreenPos.X + " " + tanks.ScreenPos.Y, tanks.ScreenPos, Color.Black);*/
#endif


            // Finish spriteBatch.
            spriteBatch.End();

            base.Draw(gameTime);
        }