セーブしたデータを使って、ゲームの状態を再現するには「ロード処理」が必要!
今回は、Fungusを使ったロードのブロックの作り方と、応用テクニックを紹介するよ♪
✅第⑨回の「セーブ機能の設定と使い方」はこちら↓
ロードブロックを作る
セーブポイントからゲームを再開するためには、Flowchart の中に新しいブロックを作って、
Execute On Event:Save Point Loadedを選ぶSave Point Keys:セーブポイントで設定したKeyを入力する
※複数のキーを指定することもできるよ!

📌 これで、指定したセーブポイントが読み込まれたときに、このブロックが自動で呼び出されるようになるんだ!
ロード時に実行する処理を入れる
ロードされたときにどんな処理を行うか、ブロックの中にコマンドを追加していこう!
たとえば、ぼくのゲームではこうしてるよ👇
✅変数をセットする
Set Variableブロックを使って、ゲームの進行を管理する変数を設定。

👉変数の作成方法は:UnityでFungusを使って会話イベントを作る方法⑤|変数と条件分岐
✅ アイテムやキャラの表示を切り替える
・Fungusで「Call Method」ブロックを使って、C#スクリプトを呼び出す
・C#メゾットからセーブポイント時点の状態に合わせて、
アイテムやキャラクターオブジェクトを表示/非表示に設定。

👉C#スクリプトを呼び出すには:UnityでFungusを使って会話イベントを作る方法②|C#スクリプト連携&クリックイベント
✅ 背景画面を切り替える
シーンがつながるように、ゲーム背景もC#スクリプトから切り替えるようにしてるよ!
共通処理ブロックを作って呼び出す
どのロードにも共通する処理は、1つの共通ブロックにまとめておくのがおすすめ!
たとえば、ぼくのゲームでは・・・👇
✅ 保存された変数を Load Variableブロック で再設定
「Save Variable」コマンドで保存した変数を呼び出して、
ゲームの進行状況によってストーリーを条件分岐できるようにする。

👉変数の保存については:UnityでFungusを使って会話イベントを作る方法⑨|セーブ機能の設定と使い方
✅背景音(BGM)を Play Sound で再生
ゲームの進行状況でBGMを変える為に、変数で条件分岐しているよ!

👉変数と条件分岐については:UnityでFungusを使って会話イベントを作る方法⑤|変数と条件分岐
セーブする方法|セーブポイントを活用しよう!
実は、セーブポイントを設定しただけでは、データはまだ保存されてないんだ…!
ちゃんと「セーブ処理」を行う必要があるよ。
① 自動セーブ(オートセーブ)を使う
Save MenuのインスペクターにあるAuto Save に☑を入れると、自動でセーブされるようになるよ!

② 「SaveMenu」のセーブボタンを押す
セーブポイントを通過した後で、
Canvasにある SaveMenu の中の 「Save」ボタン を押せばセーブできるよ。

③ C#スクリプトでセーブする
ぼくの場合は、セーブポイントを通過したら、C#のメソッドでセーブ処理をしてるよ!
✅ 処理の流れ:
- C#スクリプトからFungusの変数
"セーブ名"を取得 PlayerPrefs.SetString()を使ってUnityに保存- Fungus内のスクリプト「
SaveMenu」 のSave()メソッドを呼び出してFungusでセーブ PlayerPrefs.Save()を使ってUnityのセーブを確定させる
💡 PlayerPrefs って何?
PlayerPrefs は Unity に標準搭載されている 軽量なセーブ機能だよ!
ちょっとした変数や状態を保存するのに便利なんだ〜。
ぼくは「変数(何日目)」「セーブ名(時間)」などを Unity に保存して、タイトル画面に表示できるようにしてるよ!

④ Fungusのセーブボタンは使ってない理由
Fungusの SaveMenuにある「Save」ボタンは、見た目が固定されてるからっていう理由と、
ぼくのゲームではC#スクリプトで『見つけたアイテム』のセーブデータを扱ってるから、
C#のメソッドからFungusのセーブ処理も呼び出して使うことにしたんだ!
「つづきから」ボタンについて
ぼくのゲームのタイトル画面にある「つづきから」ボタンには、
FungusのLoad() メソッドをアタッチしてるよ!

✅ ボタンの切り替え処理
セーブが完了したらC#スクリプトを使って:
- 「はじめから」ボタンを押せないようにする
- 「つづきから」「データ削除」ボタンを押せるようにする
まとめ|FungusとUnityの両方でセーブ!
- FungusのセーブとUnityのPlayerPrefsを組み合わせると、
セーブデータに名前や日時をつけたり、UIに情報を表示できて便利! - セーブ時の演出(アイコン表示など)も C# で自由に制御できるよ!

これでFungusを使った会話イベント制作シリーズは完結だよ!
全10回にわたって、キャラクター・会話・選択肢・変数・セーブ&ロードまでを扱いました。
ここまで読んでくれて、本当にありがとう!
これからも、ゲーム作りに役立つ情報をどんどん発信していくので、
よかったらブックマーク&また遊びにきてね♪
✅Fungusを使って作成したゲームはこちら👇
📝UnityでFungusを使って会話イベントを作る方法シリーズ一覧はこちら👇
①|基本操作とコマンドブロック一覧
②|C#スクリプト連携&クリックイベント
③|キャラクターとステージの設定
④|PortraitとSayコマンドで会話を演出
⑤|変数と条件分岐
⑥|メニューの使用方法・C#と変数の連携
⑦|Say Dialogの設定方法
⑧|会話のスキップ機能を実装しよう!
⑨|セーブ機能の設定と使い方
⑩|ロード処理の設定と応用テクニック




コメント