複雑な流れのイベントを作る

イベントの[実行内容]は、上から順番に実行されていきますが、その流れを変えたいことがあります。例えば、途中を飛ばしたり、前の方に戻ってもう一度繰り返したり、そういったことを行う場合です。

ここでは、そういった処理が必要になるケースと、その場合の処理のやり方を紹介します。

イベントコマンド[ラベル]と[ラベルジャンプ]

イベントコマンド[ラベル]で、[実行内容]のその場所に、任意の名前を付けることが出来ます。

そしてイベントコマンド[ラベルジャンプ]を行うと、指定した名前のラベルの場所にジャンプし、そこから実行を続けることになります。

「ラベル」が「ラベルジャンプ」の後にある場合、[ラベルジャンプ]を実行すると、そこまで飛ばして進みます。「ラベル」が、「ラベルジャンプ」の前にある場合は、そこまで戻ります。

イベント作成例

次の例は、ラベルを使った会話イベントです。

赤枠で囲った部分により、一つの質問が終わった後、「他にご相談は?」と表示した後、質問をする処理の前まで戻して、再び同じ質問を繰り返しています。

ただしこれだけだと、何度も同じ質問が繰り返されるため、「特にない」を選択した時、青枠で囲った部分の処理を実行して、終了する処理に進みます。


●選択肢が表示される


●上2つを選ぶと、この表示の後、再び選択肢が表示される


●「特にない」を選ぶと、会話を終わらせることができる

イベントコマンド[ループ]と[ループの中断]

イベントコマンド[ループ]を選択すると、以下のように、「ループ」と「以上繰り返し」が実行内容に追加されます。

この中にイベントコマンドを入れると、そのイベントコマンドを何度でも繰り返すことになります。しかし、何度でも繰り返されると、いつまでたっても抜けることが出来ません。しかし、ループの中で、[ループの中断]が実行されると、次に進むことが出来るようになります。

イベント作成例

「もうループを抜ける?」と聞かれ、「はい」と答えるまで、同じ質問が繰り返されるケースを考えましょう。

選択肢で「いいえ」を選ぶと、メッセージ表示後、[以上繰り返し]になり、[ループ]の最初の部分まで戻り、同じ処理を繰り返します。

選択肢で「はい」を選ぶと、[ループの中断]になり、[以上繰り返し]の次の行からイベントが実行されます。


●ループを抜けるか聞いてくる


●「いいえ」を選び続けると、メッセージ表示後、何度でも同じ質問を繰り返される


●「はい」を選ぶとループが中断される。

この処理はいろんな応用が可能です。よく使われる例として、悪者が「許してくれ」とプレイヤーに許しを乞う場面で、「はい」「いいえ」の選択肢が出るのですが、プレイヤーが「はい」と答えるまで、何度でもループして話が進まない展開を作る時などです。

[ループ]は[ラベル][ラベルジャンプ]で代替可能

さて、今の例ではループを使いましたが、実は同じ動作を、ループを使わずにラベルで行うことも可能です。試しにラベルに置き換えてみます。

これでも同じ動作をすることがお分かりでしょうか。

どちらを使うかについては、好みの問題や、拡張のしやすさなどがあるため、一概にどちらがいいとは言えません。両方覚えて、自分に合うと思った方をケースバイケースで使ってみてください。

まとめ

今回は簡単な例を挙げるにとどめましたが、これらの処理をうまく使うことで、複雑なイベントを組むことが可能になります。

とはいえ、具体的にどう使うものなのか、現時点ではいまいちピンとこない人も多いでしょう。

そこでまずは他の作品にある仕掛けのデータを見て、どういう風にこれらのイベントコマンドが使われているのか、参考にするといいでしょう。それらの使い方を参考にしながら、少しずつ、自分の物にしていってください。