【Unity】RPGを作るチュートリアルその122 タイトル画面に戻すイベントを作成
- 2025.08.21
- RPGチュートリアル
- RPG, Unity, ゲーム開発, チュートリアル

シンプルなRPGをUnityで作るチュートリアルシリーズの122回目です。
第121回ではパラメータや初期装備、エンカウント率などを調整しました。
今回はエンディング後にタイトルに戻すイベントを実装したいと思います。
制作環境
MacBook Pro 2023 Apple M2 Max
Unity6 (6000.0.30f1) Silicon
作業内容と順序
シンプルなRPGを作る上でどんな作業が必要か、どんな順番で作っていくと良さそうか、別ページで検討しました。基本的にこの流れに沿って進めていきます。
チュートリアルの一覧
このシリーズ全体の一覧は以下のページにまとめています。
前回の内容
前回はパラメータや初期装備、エンカウント率などを調整しました。
エンディング後にタイトルに戻すイベント
ビルドしてゲームを確認していて気付いたのですが、エンディング後に「このチュートリアルを元に、自分の思い描いた世界を作ってね!」とメッセージを表示した後にそのまま動けるようになったままだったので、フラグ等の問題が出ないようにタイトル画面に戻すイベントを作成したいと思います。
流れとしては画面をフェードアウトさせてシーン遷移を行う形になります。シーン遷移を行うことでシングルトンのクラスなどで不整合を起こしたりしないか確認していきます。
イベントプロセスの作成
まずは「Title」へのシーン遷移を行うクラスを作成していきます。Projectウィンドウから「Assets/Scripts/Event/Process」のフォルダを開き、MonoBehaviourのスクリプトファイルを作成します。名前は [EventProcessSwitchScene] にしました。

作成した「EventProcessSwitchScene」の中身は以下のように記載しました。
Inspectorウィンドウで遷移先のシーンを設定できるようにしています。
イベントの処理内容は単純で、「SceneManager」のLoadScene()のメソッドを呼び出すだけになっています。組み合わせて使っていけるように、画面やBGMのフェードアウトは別のイベントプロセスで行うようにしたいと思います。
イベントプロセスの設定
作成したスクリプトを使ってイベントプロセスを組んでいきましょう。変更したいのは以下のイベントです。
- 「Map_0001_Village」の村長
- 「Map_0003_Dungeon」のボスゴブリン
ボスゴブリンの方はBGMのフェードアウト処理が入っていなくて村に戻ってもダンジョンのBGMが流れてしまっていたので修正したいと思います。
村長のイベント
村長のエンディングのイベントで、画面やBGMのフェードアウト処理、シーン遷移の処理を実装していきます。「Map_0001_Village」の中にある「NPC_Chourou」にて、「EventPage4」の末尾に以下のイベントプロセスを追加します。
ゲームオブジェクト名 | アタッチするスクリプト | 概要 |
StopBgm | EventProcessStopBgm | BGMを停止 |
FadeOut | EventProcessFadeOut | 画面をフェードアウト |
BackToTitle | EventProcessSwitchScene | シーンの遷移 |

それぞれデフォルト値のままでOKなので、プロセス間の繋がりだけ設定していきましょう。
ゲームオブジェクト名 | Next Process |
ShowMessageEnd | StopBgm |
StopBgm | FadeOut |
FadeOut | BackToTitle |
BackToTitle | なし |
ボスゴブリンのイベント
ボスゴブリンのイベントに関しては、勝利後、敗北後ともにBGMを停止させる処理を追加します。そのため、「Post———–」のひとつ後ろに「StopBgm」のゲームオブジェクトを作成し、「EventProcessStopBgm」のスクリプトをアタッチします。

BGMを停止する秒数はデフォルト値のままでOKです。プロセス間の繋がりを設定していきましょう。
ゲームオブジェクト名 | Next Process |
ShowMessageWin2 | StopBgm |
SetFlag | StopBgm |
StopBgm | FadeOut |
村長のイベントプロセスとボスゴブリンのイベントプロセスの設定が終わったら、「Map_0001_Village」と「Map_0003_Dungeon」のゲームオブジェクトにて、それぞれ「Overrides」のプルダウンにて [Apply All] のボタンをクリックして変更を適用します。
動作確認
Prefabへの適用とシーンの保存が完了したら「Title」シーンからゲームを実行します。ボスゴブリン前のセーブデータが残っていると便利です。
- ボスゴブリンを倒した後にBGMが停止すること
- ボスゴブリンに負けた後にBGMが停止すること
- エンディングのイベント後に「Title」シーンに戻ること
- 再度ゲームを実行しても不整合がないこと
を確認します。不整合の確認では、フラグの状態や宝箱の状態などを確かめていきましょう。また、元のセーブデータの情報(ステータスや所持アイテムなど)も残っていないことを確認しましょう。

エディタ上での動作を確認したら、実機ビルドしてそちらでも確認しておくとより安心です。
今回のブランチ
まとめ
今回はエンディング後にタイトルに戻すイベントを実装しました。これで基本的なゲームループや流れについて実装が完了しました。
次回はタイトル画面で空のセーブ枠をロードできてしまう問題を修正します。
ゲーム開発の攻略チャートを作りました!
-
前の記事
【Unity】RPGを作るチュートリアルその121 ゲーム内の各種調整作業 2025.08.20
-
次の記事
記事がありません
コメントを書く