示例#1
0
    //ゲームのメインループを行うコルーチン
    private IEnumerator GameLoop()
    {
        yield return(StartCoroutine(RoundStarting()));   //ラウンド開始時の処理を行うコールチン

        yield return(StartCoroutine(RoundPlaying()));    //ゲームプレイ時の処理を行うコールチン

        yield return(StartCoroutine(RoundEnding()));     //ラウンド終了時の処理を行うコールチン

        //最終レベルかどうかを確認
        if (levelDesigner.ReturnCurrentLevel() < gameEndLevel)
        {
            //最終レベルではない時、ループ処理
            StartCoroutine(GameLoop());
        }
        else
        {
            //最終レベルの時
            mainText.text            = gameEndText;             //ゲーム終了を知らせるテキスト表示
            GameEndBackImage.enabled = true;                    //ゲーム終了時の背景画像を表示
            mainText.fontSize        = gameEndFontSize;         //フォントサイズを変更
            GetComponent <RetryManager>().StartRetrySystem();   //リトライ用ボタンをアクティブにする命令を出す

            if (PhotonNetwork.isMasterClient)
            {
                GameObject instanceLevelDedigner = GameObject.Find(levelDesignerPrefab.name + "(Clone)");
                PhotonNetwork.Destroy(instanceLevelDedigner);
            }
        }
    }