/// <summary> /// 戻るボタンが押されたときの動作 /// </summary> private void OnPressBackButton() { switch (_state) { case StageSelectState.Title: break; case StageSelectState.Opening: break; case StageSelectState.ListView: //ゲームを終了するかきく AudioManager.PlaySE("cancel5"); QuitWindow.IsActive(true); _state = StageSelectState.QuitGameView; break; case StageSelectState.StageContentView: //一覧に戻る AudioManager.PlaySE("click03"); StageContentView.Hide(); _state = StageSelectState.ListView; break; case StageSelectState.QuitGameView: //ゲームを終了するのをやめる AudioManager.PlaySE("click03"); QuitWindow.IsActive(false); _state = StageSelectState.ListView; break; default: throw new ArgumentOutOfRangeException(); } }
//------------------------------------------------------------------------------------------ // ステージの決定 //------------------------------------------------------------------------------------------ public void DecideStage() { if (state != StageSelectState.Playing) { return; } if (!playerController.IsGround()) { return; } state = StageSelectState.Decide; waitTime = 0.5f; // ポーズ不可にする pauseManager.EnablePauseButton(false); // プレイヤーの入力を停止する playerController.EnableControl(false); }
//------------------------------------------------------------------------------------------ // Update //------------------------------------------------------------------------------------------ private void Update() { switch (state) { case StageSelectState.Start: waitTime -= Time.deltaTime; if (waitTime <= 0) { state = StageSelectState.Playing; } break; case StageSelectState.Playing: // ポーズ可能にする pauseManager.EnablePauseButton(true); break; case StageSelectState.Decide: waitTime -= Time.deltaTime; if (waitTime <= 0) { state = StageSelectState.FadeOut; } break; case StageSelectState.FadeOut: waitTime -= Time.deltaTime; if (waitTime <= 0.0f) { FadeManager.fadeColor = Color.clear; FadeManager.FadeOut("PlayScene", 1.5f); wipeCamera.StartFadeOut(player.transform.position, 1.4f); waitTime = 99.0f; } break; default: Debug.Log("StageSelectScene:StateError"); break; } }
private void Awake() { _titleAnimation = Camera.main.GetComponent <PlayableDirector>(); SelectStageGroup.interactable = false; _state = StageSelectState.Title; if (MovieSkip) { var cam = Camera.main; MonitorEffect.color = new Color(0, 0, 0, 0); cam.transform.position = new Vector3(0, 0, 20); cam.transform.rotation = Quaternion.identity; cam.orthographic = true; _state = StageSelectState.ListView; SelectStageGroup.interactable = true; } //ムービー待機開始 StartCoroutine(GameMovieLoop()); }
private void Update() { //アニメーション制御用 if (SetFadeTitleBgm && !_changeSetFadeTitleBgm) { _changeSetFadeTitleBgm = true; Debug.Log("FadeTitleBGM"); AudioManager.FadeOut(5.0f); } if (SetPlaySelectStageBgm && !_changeSetPlaySelectStageBgm) { _changeSetPlaySelectStageBgm = true; Debug.Log("FadeStageSelectBGM"); AudioManager.FadeIn(3.0f, "bgm_maoudamashii_cyber29"); } if (_state == StageSelectState.Title && Input.GetMouseButtonDown(0)) { _titleAnimation.Play(); _state = StageSelectState.Opening; //アニメーションを止める StopCoroutine(_clickClickAnimationCoroutine); ClickStartText.color = new Color(0, 0, 0, 0); } if (!SetEnableButton || _changeSetEnableButton) { return; } _changeSetEnableButton = true; _state = StageSelectState.ListView; SelectStageGroup.interactable = true; }
/// <summary> /// ステージ選択のウィンドウを表示する /// </summary> /// <param name="button"></param> public void ShowStageWindow(StageMoveButton button) { StageContentView.Show(button); _state = StageSelectState.StageContentView; }