今回は、変数を使ってイベントを分岐させる方法を解説するね!
アイテムを持ってるかどうかや、選択肢によってストーリーを変える…
そんなゲームらしい処理も、Fungusの「変数」と「条件分岐」で簡単に作れるよ♪

ぼくのゲーム「ゆーちゃんの脱出」でもたくさん使っているから、
その実例も紹介しながら進めていくね!
✅第④回の「キャラクター表示や会話コマンドの使い方」はこちら↓
Fungusで変数を作成する方法
Flowchartで変数を追加する
まずは、変数を作ってみよう!
Flowchartを選択すると、インスペクターに「Variables(変数)」という項目があるんだ。

ここで「+」を押すと、変数の型(タイプ)を選べるよ。

よく使う変数の型
たとえば、アイテムを持ってるかどうかで分岐したい場合は、「Boolean(ブール値)」を使うよ。
これはオン・オフ(☑あり or なし)だけを判断するタイプなんだ。
- アイテム持ってる →
true - 持ってない →
false
「Var」のところに、自分でわかりやすい変数名を入力しよう!

変数の初期値とチェックボックス
変数名の横にある☑チェックは、初期値を設定する場所。

例えば「ゲーム開始時はアイテム持ってない」なら、☑を外しておくと、false(持ってない)になるよ!
変数のスコープ(範囲)
変数には、以下の3つの範囲(スコープ)があるんだ。
- Private:このFlowchart内だけで使える
- Public:他のオブジェクトからアクセスできる
- Global:他のFlowchartでも共通で使える(全体共通の変数)

ゲーム全体で共通の状態(例:アイテム所持フラグ)を管理したいときは、「Global」にしておくと便利だよ!
他の型の変数もあるよ!
Fungusでは、他にもいろいろな型が使えるんだ:
Integer:整数(スコア、回数など)Float:小数(スピードなど)String:文字(名前やセリフの一部など)GameObject:ゲーム内のオブジェクトを入れられるよ
変数の値を変える方法
Set Variableコマンドの使い方
変数を作ったら、フローチャートウィンドウのブロックから「Set Variable」コマンドを追加して値を変更できるよ!

Any Var→ 値を変更したい変数を選ぶData→ 新しく設定したい値を入力(Booleanの場合はオン・オフ)Operation→ 値をどう変えるかを選ぶ
たとえば変数の型がInteger(整数)の場合:
=:そのまま代入する+:足す-:引く=!:否定(Boolean型などでも使うよ)

ぼくのゲーム「ゆーちゃんの脱出」では、いろんなフラグ管理に使ってたんだ~!
たとえば、ドアを開けたら 変数「DoorOpened」= true にしたり、お友達と会話した回数をカウントしたりしたよ✨
変数を使って条件分岐する
IfブロックとElse Ifブロック
「If」ブロックは、「もし●●だったら…」という条件で処理を分けるブロック。

条件に当てはまらなかったときは、*「Else If」*を使ってさらに分岐できるよ!
- 1つ目の条件:
If - 2つ目以降の条件:
Else If - どの条件にも当てはまらないとき:
Else(必要に応じて)
処理を別ブロックにまとめる方法
処理をスッキリさせたいときは、「Call」ブロックを使おう!

Target Block:実行したいブロックを指定Target Flowchart:Flowchartが1つなら空欄でOK!
Callされたブロックは、ちゃんと矢印でつながるから分かりやすいね♪

👉ブロックの色変更についてはこちら:①|基本操作とコマンドブロック一覧
ネストの注意
Ifの中にさらにIfを入れる(ネスト)もOK。でも、最後に「End」ブロックを入れ忘れないでね!


ぼくのゲーム、「ゆーちゃんの脱出」では、
こんなにたくさんの変数を使ってイベントを分岐させてるよ~!

まとめ
Fungusの変数は、「アイテムを持ってるかどうか」や「イベントの進行度」みたいに、
プレイヤーの行動によってストーリーを変えるときにとっても便利なんだ!
👇次の記事では、選択肢メニューやスキップボタンの作り方、C#との連携も紹介するよ♪




コメント