コード例 #1
0
ファイル: gameState.cs プロジェクト: RanBlade/Portfolio
    // Use this for initialization
    void Start()
    {
        //fix this after testing to proper start states
        currentMstate = MAINSTATES.menu;
        currentGstate = PLAYINGSTATES.playerTurn;

        //create memory for the gamestate containeers
        gameImageBlocks = new List<GameObject>();
        guessedLetters = new List<char>();
        currentWord = new WordLibEntry();
        highScores = new List<LeaderBoardEntry>();

        StartCoroutine(LoadHighScores());

        CreateGameImage();
        LoadGameImage();
        SetGameImageActive(false);

        enterState = false;
        playAgain = PLAYAGAINFLAG.notSelected;
        gameType = NEWGAMETYPE.newGame;

        SwitchMainState(MAINSTATES.menu);
        //SwitchPlayingState(PLAYINGSTATES.newGame);
    }
コード例 #2
0
ファイル: gameState.cs プロジェクト: RanBlade/Portfolio
    // Update is called once per frame
    void Update()
    {
        switch (currentMstate)
        {

            case MAINSTATES.menu:
                {
                    if (enterState)
                    {
                        HideGameUI();
                        SetGameImageActive(false);
                        //FormatHighScore();
                        enterState = false;
                    }
                    break;
                }
            case MAINSTATES.loading:
                {
                    break;
                }
            case MAINSTATES.playing:
                {
                    switch (currentGstate)
                    {
                        case PLAYINGSTATES.newGame:
                            {
                                if (enterState)
                                {
                                    StartNewGame();
                                    enterState = false;
                                    SwitchPlayingState(PLAYINGSTATES.playerTurn);
                                }

                                break;
                            }
                        case PLAYINGSTATES.playerTurn:
                            {
                                if (enterState)
                                {
                                    enterState = false;
                                }
                                if (playerGuessed)
                                {
                                    ProcessGuess();
                                    ConvertGuessedLettersToString();
                                    CheckWinLose();
                                    playerGuessed = false;
                                }
                                TimerUpdate();
                                if (totalSeconds == GameLength)
                                {
                                    //switch to gameOverState
                                    Debug.Log("Game time has expired!");

                                }

                                break;
                            }
                        case PLAYINGSTATES.mainMenu:
                            {
                                break;
                            }
                        case PLAYINGSTATES.win:
                            {
                                if (enterState)
                                {
                                    //GameObject.Find ("Win").GetComponent<CanvasGroup>().alpha = 1;
                                    ToggleWinUI();
                                    ShowHiddenWord();
                                    Debug.Log("YOU WIN!!! CONGRATS!");
                                    enterState = false;
                                }
                                if (playAgain == PLAYAGAINFLAG.yes)
                                {
                                    SwitchPlayingState(PLAYINGSTATES.newGame);
                                    gameType = NEWGAMETYPE.winGame;
                                    ToggleWinUI();
                                    playAgain = PLAYAGAINFLAG.notSelected;
                                }
                                else if (playAgain == PLAYAGAINFLAG.no)
                                {
                                    if (CheckHighScore(gameScore))
                                    {
                                        ToggleWinUI();
                                        SwitchPlayingState(PLAYINGSTATES.HighScore);
                                    }
                                    else
                                    {
                                        ToggleWinUI();
                                        SwitchMainState(MAINSTATES.menu);
                                    }
                                    playAgain = PLAYAGAINFLAG.notSelected;
                                }
                                break;
                            }
                        case PLAYINGSTATES.loss:
                            {
                                if (enterState)
                                {
                                    ToggleLossUI();
                                    ShowHiddenWord();
                                    Debug.Log("You Lose! Sorry try again");
                                    enterState = false;
                                }
                                if (playAgain == PLAYAGAINFLAG.yes)
                                {
                                    SwitchPlayingState(PLAYINGSTATES.newGame);
                                    gameType = NEWGAMETYPE.LoseGame;
                                    ToggleLossUI();
                                    playAgain = PLAYAGAINFLAG.notSelected;
                                }
                                else if (playAgain == PLAYAGAINFLAG.no)
                                {
                                    if (CheckHighScore(gameScore))
                                    {
                                        ToggleLossUI();
                                        SwitchPlayingState(PLAYINGSTATES.HighScore);
                                    }
                                    else
                                    {
                                        ToggleLossUI();
                                        SwitchMainState(MAINSTATES.menu);
                                    }
                                    playAgain = PLAYAGAINFLAG.notSelected;
                                }
                                break;
                            }
                        case PLAYINGSTATES.HighScore:
                            {

                                if (enterState)
                                {
                                    Debug.Log("ENTER YOUR HIGH SCORE YOU BADASS!");
                                    ToggleEnterNameUI();
                                    highScoreNameEntered = false;
                                    highScoreName = null;
                                    enterState = false;

                                }
                                if (highScoreNameEntered)
                                {
                                    ToggleEnterNameUI();
                                    UpdateHighScoreList(highScoreName, gameScore);
                                    FormatHighScore();
                                    StartCoroutine(SaveHighScores());
                                    SwitchMainState(MAINSTATES.menu);
                                }
                                break;
                            }
                    }
                    break;
                }
            case MAINSTATES.pause:
                {
                    break;
                }
            case MAINSTATES.quit:
                {
                    break;
                }
        }
    }
コード例 #3
0
ファイル: gameState.cs プロジェクト: RanBlade/Portfolio
 public void PlayAgain(bool shallWePlayAgain)
 {
     if (shallWePlayAgain)
         playAgain = PLAYAGAINFLAG.yes;
     else if (!shallWePlayAgain)
         playAgain = PLAYAGAINFLAG.no;
     else
         playAgain = PLAYAGAINFLAG.notSelected;
 }