チュートリアル

フラグで分岐

アイテムを持っているか、誰々と会ったか、などの状態によって話を分岐させることがあります。LiveNovelでこういったことを実現するには「変数」を使います。
例えば、先ほどの続きを次のようにしたいとします。

①床にバナナが落ちている。どうしようか・・・ ↓
思い切って食べてみよう | 腹を壊すぞ。やめておこう
↓ ②よーし、食べてみよう もぐもぐ・・・。う、うまい | ↓ ③腹を壊すぞ。やめておこう ぐるるぅ～。は、腹が減ってきた・・・
↓ ④授業が始まった・・・ ・・・ 昼になった ↓
バナナを食べた場合 | バナナを食べなかった場合
↓ ⑤あたた・・・腹が痛い・・・ | ↓ ⑥やっと飯の時間だ～

見てのとおり、最初の選択で②を選んでも③を選んでも④につながります。そしてしばらく話が続いた後、バナナを食べたかどうかで⑤と⑥に話が分岐します。
では、まず変数を用意するところから始めます。「変数リスト」ウィンドウを表示してください。そして、「変数」メニューの「追加」を選択します。ダイアログが出ますので、項目を順に設定していきます。
「名前」は変数に付ける名前です。ここでは「バナナを食べた」とします。
「変数タイプ」はどういった値を扱うかといった設定です。以下のような種類があります。

整数 | 小数の扱えない数値
実数 | 小数も扱える数値
フラグ | 扱える値はFALSEとTRUEだけ
文字列 | 文字列

ここでは食べたか食べてないかの状態を保持するだけなので「フラグ」変数を使います。ちなみにFALSEはOFF、TRUEはONという意味です。
「初期値」はゲーム起動時またはリセット時に変数に入れる値です。ここでは「FALSE」にします。
「動作タイプ」には以下の種類があります。

通常 | ゲーム起動時またはリセット時に初期化されます リセット時とは以下のような時です ・プレイヤーがシステムメニューを使ってタイトル画面に戻った時 ・「シーン回想」モードで話を始めた時 ・ゲームが終了してタイトル画面に戻った時
起動時のみ初期化 | ゲーム起動時にだけ初期化されます
ステータス | インストール後、最初にゲームを起動した時にだけ初期化されます。また、ソフト起動時に値を復帰し、ソフト終了時に値を保存します（その間にプレイヤーが行うゲームセーブ・ロードの影響は受けません）

ここでは、ゲームが始まるたびに初期化されてほしいので「通常」タイプにします。
OKをクリックしてダイアログを閉じます。
変数を操作する時は「計算」ノードを使います。「シナリオ」メニューの『「計算」追加』を選択してください。
このようなノードが作成されます。
まず、分りやすいように「名前」を「バナナを食べた=TRUE」にします。
次にノードをダブルクリックして編集ウィンドウを開き、右クリックメニューから「追加」→「計算式」を選択します。そして「バナナを食べた = TRUE」と入力してOKボタンをクリックしてください。
これは「バナナを食べた」と言う名前の変数にTRUEを入れる、という意味です。では、OKをクリックしてください。
食べた場合にだけこの計算を実行させたいので、②のノードからだけこのノードにジャンプさせます。
④のノードを作り、合流するようにそれぞれジャンプさせます。
ここから「バナナを食べた」変数の内容によって⑤と⑥に分岐させるので、「授業中」ノードのジャンプ先は以下のようになります。
最終的にチャートは以下のようになります。
では、ゲームを実行して、正しく分岐するか確かめてください。

←戻る | 進む→