Пример #1
0
        private void Update()
        {
            if ((state == StateType.Game) ||
                (state == StateType.NextScene) ||
                (Time.time - waitStartTime < nextSceneWait))
            {
                return;
            }

            if (state == StateType.ToGameOver)
            {
                // ゲームオーバーになって、クリック可能になる秒数が経過したらボタンを表示してハイスコアチェック
                if (GameParams.Stage > 0)
                {
                    gameOverButtonAnimator.SetTrigger("Show");
                }
                else
                {
                    gameOverButtonAnimator.SetTrigger("ShowTitle");
                }
                if (GameParams.CheckHighScore())
                {
                    highScoreAnimator.gameObject.SetActive(true);
                    highScoreAnimator.SetTrigger("Show");
                    if (!GameParams.useDebugKey)
                    {
                        state = StateType.Ranking;
                        StartCoroutine(SceneChanger.ShowRanking(ToGameOver));
                        return;
                    }
                }
                state = StateType.GameOver;
            }
            else if (state == StateType.Clear && ClearSequencer.CanNext)
            {
                if (Input.GetMouseButtonDown(0))
                {
                    Graviy.SetAudioListener(false);
                    SoundController.Play(SoundController.SeType.Start);
                    clickAnimator.SetBool("Show", false);

                    // ステージクリア
                    if (GameParams.NextStage())
                    {
                        SceneChanger.ChangeScene(SceneChanger.SceneType.Ending);
                    }
                    else
                    {
                        SceneChanger.ChangeScene(SceneChanger.SceneType.Game);
                    }
                    state = StateType.NextScene;
                }
            }
        }