Exemple #1
0
 public static void GameOver()
 {
     instance.gameOverAnimator.gameObject.SetActive(true);
     instance.gameOverAnimator.SetTrigger("GameOver");
     state         = StateType.ToGameOver;
     waitStartTime = Time.time;
     SoundController.PlayBGM(SoundController.BgmType.GameOver);
     Graviy.SetAudioListener(false);
 }
Exemple #2
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;
                }
            }
        }
Exemple #3
0
        static IEnumerator ClearCoroutine(ClearObject clearObject)
        {
            // ブラックホールに吸い込まれる
            yield return(clearObject.ToBlackhole());

            Blackhole.instance.ClearDone();
            Graviy.instance.StartEat();

            // 落下
            yield return(clearObject.Fall());

            // 口を閉じてクリア表示
            Graviy.AddEnergy(Graviy.EnergyMax);
            Graviy.instance.CloseMouth();
            GameManager.ShowClear();

            yield return(WaitForSecondsOrClick(WaitNextSeconds));

            // タイムボーナス
            yield return(TimeBonus());

            yield return(WaitForSecondsOrClick(WaitNextSeconds));

            // ライフボーナス
            yield return(LifeBonus());

            yield return(WaitForSecondsOrClick(WaitNextSeconds));

            // アイテムパーフェクトボーナス
            if (GameManager.GetItem >= GameManager.ItemCount)
            {
                GameManager.instance.PerfectBonusText(PerfectBonusMessage);
                GameParams.AddScore(PerfectPoint);
                SoundController.Play(SoundController.SeType.Start);
            }
            else
            {
                GameManager.instance.PerfectBonusText($"{GameManager.ItemCount}{Kosu}コ</size>中{GameManager.GetItem}{Kosu}コ</size>ゲット。{GameManager.ItemCount - GameManager.GetItem}{Kosu}コ</size>とりのがし...");
            }

            yield return(WaitForSecondsOrClick(WaitNextSeconds));

            GameManager.ShowClick();
            CanNext = true;
        }
Exemple #4
0
 void Awake()
 {
     instance = this;
     rb       = GetComponent <Rigidbody2D>();
     anim     = GetComponentInChildren <Animator>();
     anim.SetInteger("State", (int)AnimType.Idle);
     capsuleCollider2D         = GetComponent <CapsuleCollider2D>();
     spRenderer                = GetComponentInChildren <SpriteRenderer>();
     suiyose                   = GetComponent <Suiyose>();
     Energy                    = EnergyMax;
     contactFilter2D.layerMask = LayerMask.GetMask("Map");
     isEating                  = false;
     eatingCount               = 0;
     mouthOffsetRight          = transform.Find("MouthPosition").transform.localPosition;
     mouthOffsetLeft.Set(-mouthOffsetRight.x, mouthOffsetRight.y, 0);
     gameOverLayer = LayerMask.NameToLayer("GameOverPlayer");
     screenLeft.Set(0f, 0f, 1f);
 }
 public override void OnFadeOutDone()
 {
     Graviy.SetAudioListener(true);
     GameParams.SetStartTime(stageTime);
     SceneManager.SetActiveScene(gameObject.scene);
 }