ゲーム中に選択肢が出てきて、プレイヤーの選んだ内容でストーリーが変化する――
そんなイベントをFungusで作ってみたいと思ったことはありませんか?
この記事では、Fungusの「Menu」コマンドを使った選択肢イベントの作り方と、
C#スクリプトからFungusの変数を取得・設定して分岐処理する方法を紹介します!
✅第⑤回の「変数を使ってイベントを分岐させる方法」はこちら↓
選択肢メニューを使って条件分岐する
Menuコマンドで選択肢を表示

Fungusでは、選択肢メニューを使って条件分岐ができるよ!

Menuコマンドを追加Textに、表示したい選択肢のテキストを入力Target Blockで、選択肢ごとにジャンプ先のブロックを指定
👇実際のゲーム画面では、こんな風に選択肢が表示されるんだよ~!

Menu Dialogのカスタマイズ
選択肢ボタンの見た目を変えたいときは、
「ツール」→「Fungus」→「作成」→「Menu Dialog」
をヒエラルキーに追加して、好きなスタイルに変更しよう!
ぼくのゲーム「ゆーちゃんの脱出」では使ってないけど、他の作品で使うときの参考にしてね♪
C#スクリプトからFungusの変数を使う
Fungusの変数を取得する
C#スクリプトからFungusの変数を読んで、条件分岐に使うこともできるよ!
■ 文字列型の変数(String)
flowchart.GetStringVariable(“変数名”);
使用例:
//itemにFungusの変数”haveItem” を取得して代入
string item = flowchart.GetStringVariable(“haveItem”);
■ 整数型の変数(Integer)
flowchart.GetIntegerVariable(“変数名”);
使用例:
// timeにFungusの変数"タイム"を取得して代入int time = flowchart.GetIntegerVariable("タイム");
■ 真偽値型の変数(Boolean)
flowchart.GetBooleanVariable(“変数名”);
使用例:
//sanpoにFungusの変数”散歩”を取得して代入bool sanpo = flowchart.GetBooleanVariable("散歩");

↑Fungusの変数 ”散歩”(True/False)でストーリーを分岐する為に活用
Fungusの変数をC#から設定する
C#側からFungusの変数を変更することもできるよ!
■ 文字列型の変数を設定
flowchart.SetStringVariable(“変数名”, 変数);
使用例:
//Fungusの変数 "haveItem" を C#の変数"item" に設定する
flowchart.SetStringVariable("haveItem", item);
これで、Fungusの変数 haveItem に、C#から指定した値が渡せるようになるよ✨

↑現在持ってるアイテム「うさぎのぬいぐるみ」をFungusに渡して、
ストーリーを分岐させるために活用。
まとめ
今回は、Fungusの「Menu」ブロックを使って選択肢を表示する方法と、
C#スクリプトでFungusの変数を取得・設定して分岐処理する方法を紹介したよ!
- Menuブロックを使えば、簡単に選択肢によるストーリー分岐が作れる
- C#スクリプトからもFungusの変数を操作して、複雑な条件分岐が可能
- プレイヤーの行動や取得アイテムによってストーリーが変わる演出が作れる!
会話イベントをより自由に、そしてインタラクティブにしたい人には、
FungusとC#の組み合わせはとても強力なツールになるよ!
👇次の記事では、Say Dialogの設定方法を紹介するよ!




コメント