public void FixedUpdate() { if (!GameEnd) { TimerCount = Time.time; // 制限時間処理 if (TimerCount - StartTime > (float)nextPhase) { changeNextPhase(); } // タイムアップでゲームクリア if (currentPhase == TimerPhase.End) { GameObject producer = GameObject.Find("producer"); producer.GetComponent <Animator>().SetBool("Respawn", false); producer.GetComponent <CircleCollider2D>().enabled = false; // Pのコライダーを外す Map.RemoveObject(producer.GetComponent <ProducerMove>().MapPosition); // マップからPを除外 DisableScriptsOn(GameObject.Find("producer")); GameObject.Find("goal_shade").GetComponent <SpriteRenderer>().enabled = false; // パーティ会場の影を消す GameObject.Find("door").GetComponent <SpriteRenderer>().enabled = false; // ドア非表示 IsGameClear = true; GameEnd = true; } // タイムアップ前に小梅ちゃんがゴール or プロデューサーのライフが尽きたら // ゲームオーバー else if (GameObject.Find("koume").GetComponent <KoumeMove>().Mode == KoumeMove.MoveMode.Goal || GameObject.Find("producer").GetComponent <Producer>().Life <= 0) { // 小梅ちゃんとプロデューサーのスクリプトを無効化 // DisableScriptsOn(GameObject.Find("koume")); GameObject producer = GameObject.Find("producer"); producer.GetComponent <CircleCollider2D>().enabled = false; // Pのコライダーを外す Map.RemoveObject(producer.GetComponent <ProducerMove>().MapPosition); // マップからPを除外 DisableScriptsOn(GameObject.Find("producer")); GameOver(); GameObject.Find("full_shade").GetComponent <SpriteRenderer>().enabled = true; // ゲームオーバー表示 GameObject.Find("gameover").GetComponent <SpriteRenderer>().enabled = true; // ゲームオーバー表示 GameEnd = true; } // 1秒ごとにパーティ準備勢を動かす if (Time.time - LastUpdate >= 2.0f) { var mMoveList = new List <Vector2>(Constant.MobMoveList); mMoveList.Shuffle(); GameObject.Find("mirei").transform.position = (Vector3)mMoveList.Pop() + new Vector3(0, 0, 1); GameObject.Find("morikubo").transform.position = (Vector3)mMoveList.Pop() + new Vector3(0, 0, 1); GameObject.Find("shoko").transform.position = (Vector3)mMoveList.Pop() + new Vector3(0, 0, 1); GameObject.Find("sachiko").transform.position = (Vector3)mMoveList.Pop() + new Vector3(0, 0, 1); LastUpdate = Time.time; } } }