void Update() { if (!changeSceneFlg) { if (!st.GetCloseEnd()) { // これだとステセレとかでタイトル戻れない //if (!st.GetCloseEnd() && (!sf.IsFadeEnd() || SceneManager.GetActiveScene().name == "StageSelect")) { // これだとオープニング流れない、ステセレでタイトル戻れない //if (!st.GetCloseEnd() && !sf.IsFadeEnd()){ // これだとオープニング流れない、ステセレでEXエリア行けない if (flg && sf.IsFadeEnd()) { changeSceneFlg = true; } return; } else { changeSceneFlg = true; } } else { switch (changeSceneMode) { // 次のステージへ case CHANGE_SCENE_MODE.NEXT: { int area, stage; area = Area.GetAreaNumber(); stage = Area.GetStageNumber(); /*stage++; * * if (stage == (int)StageInfo.STAGE.STAGE_MAX) { * area++; * stage = 1; * if (area == (int)StageInfo.AREA.AREA_MAX) { * endGameFlg = true; * } * } * * string loadSceneName = "Stage" + area.ToString() + "-" + stage.ToString(); * * if (!endGameFlg) { * // 次のステージを読み込む * // 後で修正 * SceneManager.LoadScene(loadSceneName, LoadSceneMode.Single); * } * else { * // 最終ステージクリア後の処理 * }*/ // 次のステージがない場合はResult.cs側で「次のステージへ」ボタンを非アクティブにするのでここでの判定はいらない string nextSceneName = Area.GetNextStageSceneName(area, stage); // 次のステージを読み込む SceneManager.LoadScene(nextSceneName, LoadSceneMode.Single); } break; // リトライ case CHANGE_SCENE_MODE.RETRY: // 現在のシーンを再読込 SceneManager.LoadScene(SceneManager.GetActiveScene().name, LoadSceneMode.Single); break; // チュートリアル case CHANGE_SCENE_MODE.TUTORIAL: // チュートリアルシーンを読み込み SceneManager.LoadScene("Tutorial-1", LoadSceneMode.Single); break; // ステージセレクト case CHANGE_SCENE_MODE.STAGESELECT: // ステセレシーンを読み込み SceneManager.LoadScene(stageSelectScene, LoadSceneMode.Single); break; // タイトル case CHANGE_SCENE_MODE.TITLE: // タイトルシーンを読み込み SceneManager.LoadScene(titleScene, LoadSceneMode.Single); break; // エンディング case CHANGE_SCENE_MODE.ESCAPE: // エンディングを読み込み SceneManager.LoadScene("Ending", LoadSceneMode.Single); break; default: break; } } }