/// <summary> /// Awakeを継承する際は、最後にbase.Awake()を呼び出すこと。 /// </summary> public void Awake() { #if UNITY_EDITOR if (SceneChanger.IsBooting) { return; } #endif SceneChanger.AwakeDone(this); }
void updateTitle() { if (GameParams.IsActionAndWaterButtonDown) { SoundController.Play(SoundController.SeType.Decision); if (!IsContinue) { GameParams.SetNewGame(); } else { GameParams.SetContinue(); } SceneChanger.ChangeScene(SceneChanger.SceneType.StageSelect); return; } if (Input.GetButtonDown("Esc")) { #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #else Application.Quit(); #endif return; } // 動画再生チェック if ((Time.time - startTime) > movieInterval) { StartMovie(); return; } // クリアステージがなければ変更なし if (GameParams.ClearedStageCount == 0) { return; } if (Input.GetAxisRaw("Horizontal") > 0) { SoundController.Play(SoundController.SeType.MoveCursor); IsContinue = true; startTime = Time.time; } else if (Input.GetAxisRaw("Horizontal") < 0) { SoundController.Play(SoundController.SeType.MoveCursor); IsContinue = false; startTime = Time.time; } }
private void Update() { if (Fade.IsFading || SceneChanger.NextScene != SceneChanger.SceneType.None || SceneChanger.NowScene != SceneChanger.SceneType.Title) { return; } if (GameParams.IsActionAndWaterButtonDown) { SoundController.Play(SoundController.SeType.Decision); if (!IsContinue) { GameParams.SetNewGame(); } else { GameParams.SetContinue(); } SceneChanger.ChangeScene(SceneChanger.SceneType.StageSelect); return; } if (Input.GetButtonDown("Esc")) { #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #else Application.Quit(); #endif return; } // クリアステージがなければ変更なし if (GameParams.ClearedStageCount == 0) { return; } if (Input.GetAxisRaw("Horizontal") > 0) { SoundController.Play(SoundController.SeType.MoveCursor); IsContinue = true; } else if (Input.GetAxisRaw("Horizontal") < 0) { SoundController.Play(SoundController.SeType.MoveCursor); IsContinue = false; } }
private void Update() { if (Fade.IsFading) { return; } if (GameParams.IsActionAndWaterButtonDown) { SoundController.Play(SoundController.SeType.Click); SceneChanger.ChangeScene(SceneChanger.SceneType.StageSelect); } }
IEnumerator StoryMovie(VideoType vtype) { yield return(AnimProc(CanvasAnimStateType.FadeOut)); videoPlayer.enabled = true; videoPlayer.clip = videoClips[(int)vtype]; videoPlayer.Play(); movieImage.enabled = true; // 動画開始を待つ while (videoPlayer.time <= 0.0001f) { yield return(null); } // フェードイン yield return(AnimProc(CanvasAnimStateType.FadeIn)); // 動画終了を待つ while (videoPlayer.isPlaying) { yield return(null); } // 最終ステージならクレジットロールへ if (GameParams.NowClearStage == GameParams.StageMax - 1) { yield return(CreditRoll()); SceneChanger.ChangeScene(SceneChanger.SceneType.Title); yield break; } // ビデオプレイヤーをフェードアウトさせる float fadeTime = 0; Color col = movieImage.color; while (fadeTime < videoFadeSeconds) { fadeTime += Time.deltaTime; float alpha = (1f - fadeTime / videoFadeSeconds); col.a = alpha; movieImage.color = col; yield return(null); } movieImage.enabled = false; SelectNextStage(); nextState = StateType.PlayerControl; }
private void Update() { #if DEBUG if (Input.GetKeyDown(KeyCode.S)) { // エンディングへ SceneChanger.ChangeScene(SceneChanger.SceneType.StageSelect); } else if (Input.GetKeyDown(KeyCode.E)) { // エンディングへ SceneChanger.ChangeScene(SceneChanger.SceneType.Ending); } #endif }
private void Update() { if (Input.GetButtonDown("Esc")) { // ステージ選択へ GameParams.Instance.toStageSelect = StageSelectManager.ToStageSelectType.Back; SceneChanger.ChangeScene(SceneChanger.SceneType.StageSelect); } #if USE_DEBUG_CLEARKEY if (Input.GetKey(KeyCode.C) && Input.GetKey(KeyCode.L)) { StartClear(); } #endif }
void UpdatePlayerControl() { float cursor = Input.GetAxisRaw("Horizontal") + Input.GetAxisRaw("Vertical"); if ((cursor < -0.5f) && (lastCursor > -0.5f)) { GameParams.PrevSelectStage(); } else if ((cursor > 0.5f) && (lastCursor < 0.5f)) { GameParams.NextSelectStage(); } lastCursor = cursor; if (GameParams.IsActionAndWaterButtonDown) { SceneChanger.ChangeScene(SceneChanger.SceneType.Game); } }
IEnumerator storyMovie() { // 動画開始を待つ while (videoPlayer.time <= 0.0001f) { yield return(null); } movieFadeImage.enabled = false; // 動画終了を待つ while (videoPlayer.isPlaying) { yield return(null); } // クレジット再生 if (nextState == StateType.CreditRoll) { yield return(CreditRoll()); SceneChanger.ChangeScene(SceneChanger.SceneType.Title); yield break; } // ビデオプレイヤーをフェードアウトさせる float fadeTime = 0; Color col = movieImage.color; while (fadeTime < videoFadeSeconds) { fadeTime += Time.deltaTime; float alpha = (1f - fadeTime / videoFadeSeconds); col.a = alpha; movieImage.color = col; yield return(null); } movieImage.enabled = false; SoundController.PlayBGM(SoundController.BgmType.StageSelect); state = nextState; }
/// <summary> /// Awakeを継承する際は、最後にbase.Awake()を呼び出すこと。 /// </summary> public void Awake() { SceneChanger.AwakeDone(this); }
IEnumerator StoryCutin(VideoType type) { // 画像表示 audioSource.clip = SoundController.Instance.seList[(int)SoundController.SeType.NarrationStage5 + (int)type]; yield return(AnimProc(CanvasAnimStateType.FadeOut)); yield return(new WaitForSeconds(NarrationBeforeMarginSeconds)); audioSource.Play(); // ナレーションの終了、あるいは、操作待ち while (audioSource.isPlaying && !GameParams.IsActionAndWaterButtonDown) { yield return(null); } audioSource.Stop(); // 終了待ち float startTime = Time.time; while (((Time.time - startTime) < NarrationAfterMarginSeconds) && !GameParams.IsActionAndWaterButton) { yield return(null); } // Stage5なら、フェードアウトしてすぐにプレイヤー操作へ if (type == VideoType.Stage5) { yield return(AnimProc(CanvasAnimStateType.FadeIn)); waitMovieFade.sprite = null; SelectNextStage(); nextState = StateType.PlayerControl; yield break; } // エンディングムービー videoPlayer.enabled = true; videoPlayer.clip = videoClips[(int)type]; videoPlayer.Play(); movieImage.enabled = true; // 動画開始を待つ while (videoPlayer.time <= 0.0001f) { yield return(null); } // フェードイン yield return(AnimProc(CanvasAnimStateType.FadeIn)); waitMovieFade.sprite = null; // 動画終了を待つ while (videoPlayer.isPlaying) { yield return(null); } // クレジットロールへ yield return(CreditRoll()); SceneChanger.ChangeScene(SceneChanger.SceneType.Title); }
/// <summary> /// クリア処理をして、ステージ選択シーンへ移行します。 /// 飛び立つアニメから、完了時に呼び出します。 /// </summary> public void ClearAndStageSelect() { GameParams.StageClear(); SceneChanger.ChangeScene(SceneChanger.SceneType.StageSelect); }
void Restart() { SceneChanger.ChangeScene(SceneChanger.SceneType.Game); }
private void OnDestroy() { SceneChanger.SetSubCamera(); }