//--------------------------------------------------------------- /* * @brief リセット処理 */ //--------------------------------------------------------------- private bool OnEasyReset() { bool ret = false; const int RESET_FADEOUTSTART = 0; const int RESET_FADEOUTWAIT = 1; const int RESET_FADEINWAIT = 3; VRUIManager uiManager = cameraMngr.FpsCameraObj.GetComponent <VRUIManager>(); switch (m_subStep) { // フェードアウト開始 case RESET_FADEOUTSTART: GameSceneManager.Instance.StartFadeOut(24); m_subStep = RESET_FADEOUTWAIT; break; case RESET_FADEOUTWAIT: if (!GameSceneManager.Instance.IsFade) { /* * ToDo リセット処理 */ playerObj.GetComponent <CharAction>().ResetPosition(true); uiManager.ScrGoalUI.StopGoalUI(); socicalCamRoot.GetComponent <DisplayCameraManager>().OnEasyReset(); m_bPlayJingleOneShot = false; GameSceneManager.Instance.StartFadeIn(24); m_subStep = RESET_FADEINWAIT; } break; case RESET_FADEINWAIT: if (!GameSceneManager.Instance.IsFade) { ret = true; } break; } return(ret); }
//--------------------------------------------------------------- /* * @brief ステージの状態を更新 */ //--------------------------------------------------------------- void UpdateStageState() { VRUIManager uiManager = cameraMngr.FpsCameraObj.GetComponent <VRUIManager>(); if (GameSceneManager.Instance.NowLoading) { return; } switch (m_state) { case StageState.STATE_PREPARE: if (!m_bPlayJingleOneShot) { bgmObject.GetComponent <BGMCtrl>().PlayJingle(); m_bPlayJingleOneShot = true; } if (m_counterSec >= 3) { uiManager.ScrCountDown.StartCountDown(); ChangeState(StageState.STATE_READY); } break; case StageState.STATE_READY: if (uiManager.ScrCountDown.LetsBonyage) { // 最初は自動で吹っ飛ぶ playerObj.GetComponent <CharAction>().FirstBlowoff(); bgmObject.GetComponent <BGMCtrl>().PlayBGM(); ChangeState(StageState.STATE_INGAME); } break; case StageState.STATE_INGAME: if (playerObj.GetComponent <CharAction>().IsGoal) { bgmObject.GetComponent <BGMCtrl>().StopBGM(); uiManager.ScrGoalUI.StartGoalUI(); ChangeState(StageState.STATE_GOAL); } else if (playerObj.GetComponent <CharAction>().IsGameOver) { ChangeState(StageState.STATE_GAMEOVER); } break; case StageState.STATE_GOAL: // とりあえず10秒ほど経過したら if (m_counterSec > 10) { ChangeState(StageState.STATE_RESET); } break; case StageState.STATE_RESET: bool resetDone = OnEasyReset(); if (resetDone) { ChangeState(StageState.STATE_PREPARE); } break; default: break; } }