Exemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (_currentScreen == Screen.START)
        {
            //highlight Start text
            if (_controller.GetButtonDown(VirtualKey.UP) && !_startFadeText.IsFading)
            {
                _startFadeText.Fade();
                _creditsFadeText.Stop(1, 0.15f);
                StartGameText.color = Color.yellow;
                CreditsText.color   = Color.white;
                MenuBipAudio.PlayEffect();
            }

            //highlight Credits text
            if (_controller.GetButtonDown(VirtualKey.DOWN) && !_creditsFadeText.IsFading)
            {
                _creditsFadeText.Fade();
                _startFadeText.Stop(1, 0.15f);
                CreditsText.color   = Color.yellow;
                StartGameText.color = Color.white;
                MenuBipAudio.PlayEffect();
            }

            //player pressed submit
            if (_controller.GetButtonDown(VirtualKey.SUBMIT))
            {
                //Go to credits
                if (_creditsFadeText.IsFading)
                {
                    _creditsFadeText.Stop(1, 0.15f);
                    CreditsText.color = Color.white;
                    StartPage.Fade(1, 0, 0, 0.3f);
                    CreditsPage.Fade(0, 1, 0.3f, 0.3f);
                    _currentScreen = Screen.CREDITS;
                }

                //Go to player selection
                else
                {
                    _creditsFadeText.Stop(1, 0.15f);
                    CreditsText.color = Color.white;
                    StartPage.Fade(1, 0, 0, 0.3f);
                    EggsAnimator.SetTrigger("PopIn");
                    _currentScreen = Screen.PLAYER_SELECTION;
                    SelectPlayerLabel.Fade(0, 1, 0.5f, 0.3f);
                }

                LogoAnimator.SetTrigger("Reduce");
                MenuConfirmAudio.PlayEffect();
            }
        }
        else if (_currentScreen == Screen.CREDITS)
        {
            //player pressed back
            if (_controller.GetButtonDown(VirtualKey.BACK))
            {
                //Go to start
                _startFadeText.Fade();
                StartGameText.color = Color.yellow;
                LogoAnimator.SetTrigger("Enlarge");
                CreditsPage.Fade(1, 0, 0, 0.2f);
                StartPage.Fade(0, 1, 0.3f, 0.3f);

                _currentScreen = Screen.START;
                MenuBackAudio.PlayEffect();
            }
        }
        else if (_currentScreen == Screen.PLAYER_SELECTION)
        {
            //Go to Start and close eggs
            if (_controller.GetButtonDown(VirtualKey.BACK))
            {
                _startFadeText.Fade();
                StartGameText.color = Color.yellow;

                for (int i = _playerNum - 1; i >= 0; i--)
                {
                    PlayerEggsAnim[i].SetTrigger("Close");
                }

                LogoAnimator.SetTrigger("Enlarge");
                EggsAnimator.SetTrigger("PopOut");
                StartPage.Fade(0, 1, 1f, 0.3f);
                SelectPlayerLabel.Fade(1, 0, 0, 0.2f);
                _currentScreen = Screen.START;
                _playerNum     = 0;
                MenuBackAudio.PlayEffect();
            }

            //open new egg
            if (_controller.GetButtonDown(VirtualKey.RIGHT))
            {
                if (_playerNum < DadaInput.ControllerCount)
                {
                    PlayerEggsAnim[_playerNum].SetTrigger("Crack");
                    _playerNum++;
                    MenuBipAudio.PlayEffect();
                }
            }

            //close egg
            if (_controller.GetButtonDown(VirtualKey.LEFT))
            {
                if (_playerNum > 0)
                {
                    _playerNum--;
                    PlayerEggsAnim[_playerNum].SetTrigger("Close");
                    MenuBipAudio.PlayEffect();
                }
            }

            //Smash eggs and show Levels
            if (_controller.GetButtonDown(VirtualKey.SUBMIT) && _playerNum > 0)
            {
                EggsAnimator.SetTrigger("Smash");

                for (int i = 0; i < CowLevels.Length; i++)
                {
                    CowLevels[i].SetBool("IsDancing", false);
                    CowLevels[i].SetTrigger("Appear");

                    CowLevels[i].transform.parent.gameObject.SetActive(true);
                }

                CowLevels[0].SetBool("IsDancing", true);
                SelectPlayerLabel.Fade(1, 0, 0, 0.1f);
                SelectLevelLabel.Fade(0, 1, 0.5f, 0.3f);
                MenuConfirmAudio.PlayEffect();
                _currentScreen = Screen.LEVEL_SELECTION;
            }
        }
        else if (_currentScreen == Screen.LEVEL_SELECTION)
        {
            //Go to Start and close eggs
            if (_controller.GetButtonDown(VirtualKey.BACK))
            {
                MenuBackAudio.PlayEffect();
                EggsAnimator.SetTrigger("UnSmash");

                SelectLevelLabel.Fade(1, 0, 0, 0.1f);
                SelectPlayerLabel.Fade(0, 1, 0.5f, 0.3f);

                for (int i = 0; i < CowLevels.Length; i++)
                {
                    CowLevels[i].SetTrigger("Disappear");
                }

                for (int i = 0; i < _playerNum; i++)
                {
                    PlayerEggsAnim[i].SetTrigger("Crack");
                }

                _levelNum      = 0;
                _currentScreen = Screen.PLAYER_SELECTION;
            }

            //make next cowlevel dance
            if (_controller.GetButtonDown(VirtualKey.RIGHT))
            {
                if (_levelNum + 1 < CowLevels.Length)
                {
                    CowLevels[_levelNum].SetBool("IsDancing", false);
                    CowLevels[_levelNum + 1].SetBool("IsDancing", true);
                    MenuChangeLevelsAudio.PlayEffect();
                    _levelNum++;
                }
            }

            ///make previous cowlevel dance
            if (_controller.GetButtonDown(VirtualKey.LEFT))
            {
                if (_levelNum > 0)
                {
                    CowLevels[_levelNum].SetBool("IsDancing", false);
                    CowLevels[_levelNum - 1].SetBool("IsDancing", true);
                    MenuChangeLevelsAudio.PlayEffect();
                    _levelNum--;
                }
            }

            //go to mode selection
            if (_controller.GetButtonDown(VirtualKey.SUBMIT))
            {
                for (int i = 0; i < CowLevels.Length; i++)
                {
                    if (i != _levelNum)
                    {
                        CowLevels[i].SetTrigger("Disappear");
                    }
                }

                //Go to start
                _teamFadeText.Fade();
                _allvsFadeText.Stop(1, 0.15f);
                TeamModeText.color     = Color.yellow;
                AllVsAllModeText.color = Color.white;
                ModePage.Fade(0, 1, 0.5f, 0.3f);
                SelectLevelLabel.Fade(1, 0, 0, 0.2f);
                _isTeamMode = true;
                MenuConfirmAudio.PlayEffect();
                _currentScreen = Screen.MODE_SELECTION;
            }
        }
        else if (_currentScreen == Screen.MODE_SELECTION)
        {
            //highlight team mode text
            if (_controller.GetButtonDown(VirtualKey.LEFT) && !_teamFadeText.IsFading)
            {
                _teamFadeText.Fade();
                _allvsFadeText.Stop(1, 0.15f);
                TeamModeText.color     = Color.yellow;
                AllVsAllModeText.color = Color.white;
                _isTeamMode            = true;
                MenuBipAudio.PlayEffect();
            }

            //highlight Credits text
            if (_controller.GetButtonDown(VirtualKey.RIGHT) && !_creditsFadeText.IsFading)
            {
                _allvsFadeText.Fade();
                _teamFadeText.Stop(1, 0.15f);
                AllVsAllModeText.color = Color.yellow;
                TeamModeText.color     = Color.white;
                _isTeamMode            = false;
                MenuBipAudio.PlayEffect();
            }

            if (_controller.GetButtonDown(VirtualKey.BACK))
            {
                MenuBackAudio.PlayEffect();
                ModePage.Fade(1, 0, 0, 0.2f);
                SelectLevelLabel.Fade(0, 1, 0.3f, 0.2f);

                for (int i = 0; i < CowLevels.Length; i++)
                {
                    if (i != _levelNum)
                    {
                        CowLevels[i].SetTrigger("Appear");
                    }
                }
                _currentScreen = Screen.LEVEL_SELECTION;
            }

            if (_controller.GetButtonDown(VirtualKey.SUBMIT))
            {
                BlackScreen.Fade();
                MenuConfirmAudio.PlayEffect();
                Invoke("BeginGame", 0.6f);
                _currentScreen = Screen.BLACKSCREEN;
            }
        }
    }
Exemplo n.º 2
0
    void Update()
    {
        bool startPressed = DadaInput.GetButtonDown(VirtualKey.START);


        //Pause game
        if (!_isPaused && startPressed && !_gameEnded)
        {
            Time.timeScale = 0.0000001f;
            _isPaused      = true;
            _pauseScreen.gameObject.SetActive(true);
        }
        else if (_isPaused)
        {
            //resume game
            if (startPressed)
            {
                Time.timeScale = 1;
                _isPaused      = false;
                _pauseScreen.gameObject.SetActive(false);
            }
            else if (DadaInput.GetButtonDown(VirtualKey.SELECT))
            {
                Time.timeScale = 1;
                _isPaused      = false;
                DadaGame.Reset();
                Application.LoadLevel("MainScreen");
            }
        }

        //game ended.
        if (_gameEnded)
        {
            if (_controller1.GetButtonDown(VirtualKey.LEFT) && !_restartYes.IsFading)
            {
                _restartYes.Fade();
                _restartNo.Stop(1, 0);
                _restartYes.GetComponent <Text>().color = _teams[_winningTeam].TeamColor;
                _restartNo.GetComponent <Text>().color  = Color.white;
            }

            if (_controller1.GetButtonDown(VirtualKey.RIGHT) && !_restartNo.IsFading)
            {
                _restartNo.Fade();
                _restartYes.Stop(1, 0);
                _restartNo.GetComponent <Text>().color  = _teams[_winningTeam].TeamColor;
                _restartYes.GetComponent <Text>().color = Color.white;
            }

            if (_controller1.GetButtonDown(VirtualKey.SUBMIT))
            {
                if (_restartYes.IsFading)
                {
                    Application.LoadLevel(Application.loadedLevelName);
                }
                else
                {
                    Application.LoadLevel("MainScreen");
                }
            }
        }
    }