예제 #1
0
    /// <summary>
    ///     ''' Draws the current state of the game to the screen.
    ///     ''' </summary>
    ///     ''' <remarks>
    ///     ''' What is drawn depends upon the state of the game.
    ///     ''' </remarks>
    public static void DrawScreen()
    {
        UtilityFunctions.DrawBackground();

        switch (CurrentState)
        {
        case GameState.ViewingMainMenu: {
            MenuController.DrawMainMenu();
            break;
        }

        case GameState.ViewingGameMenu: {
            MenuController.DrawGameMenu();
            break;
        }

        case GameState.AlteringSettings: {
            MenuController.DrawSettings();
            break;
        }

        case GameState.Deploying: {
            DeploymentController.DrawDeployment();
            break;
        }


        case GameState.Discovering: {
            DiscoveryController.DrawDiscovery();
            break;
        }

        case GameState.EndingGame: {
            EndingGameController.DrawEndOfGame();
            break;
        }

        case GameState.ViewingHighScores: {
            HighScoreController.DrawHighScores();
            break;
        }

        case GameState.ViewingInstruction: {
            InstructionController.DrawInstruction();
            break;
        }

        case GameState.Reveal: {
            RevealController.DrawReveal();
            break;
        }

        case GameState.ViewingInstructionImg: {
            InstructionImgController.DrawInstructionImg();
            break;
        }
        }

        UtilityFunctions.DrawAnimations();

        SwinGame.RefreshScreen();
    }