フロー制御
「フロー制御」に関するイベントコマンドです。
フロー制御 †
条件分岐 †
特定の条件を満たす場合にのみ処理を行う部分を作成します。
- 設定項目
分岐の条件は「スイッチ」~「ボタン」のうち一つを選択- スイッチ
指定したスイッチを分岐の条件とする- ON
スイッチがONのとき条件を満たすと判断する - OFF
スイッチがOFFのとき条件を満たすと判断する
- ON
- 変数
指定した変数を分岐の条件とする
・比較対象は[定数]か[変数]から指定する
定数を選択した場合、-9999999~99999999の範囲で指定する
-9999999と入力したあとカーソル移動でそれ以下の値を入力することも一応可能- =
指定した変数と比較対象の値が一致するとき条件を満たすと判断する - >=
指定した変数が比較対象の値以上のとき条件を満たすと判断する - <=
指定した変数が比較対象の値以下のとき条件を満たすと判断する - >
指定した変数が比較対象の値より大きいとき条件を満たすと判断する - <
指定した変数が比較対象の値未満のとき条件を満たすと判断する - !=
指定した変数と比較対象の値が不一致のとき条件を満たすと判断する
- =
- セルフスイッチ
指定したセルフスイッチを分岐の条件とする- ON
セルフスイッチがONのとき条件を満たすと判断する - OFF
セルフスイッチがOFFのとき条件を満たすと判断する
- ON
- タイマー
タイマーの残り時間を分岐の条件とする
・比較する値は0分0秒~99分59秒の範囲で指定する
・タイマーは再セットするまでは最後に停止した残り時間を保持するため
タイマーで分岐させる際、必ずしも停止する直前に行うことはない
・タイマーの残り時間と指定した時間が一致している場合(=)に分岐するという条件はないが、
条件分岐を重ねて>=と<=の両方を満たしている場合と判定したり、
タイマーの残り時間を変数に格納してから変数で比較するといった方法がある- >=
タイマーの残り時間が指定した時間以上のとき条件を満たすと判断する - <=
タイマーの残り時間が指定した時間以下のとき条件を満たすと判断する
- >=
- アクター
指定したアクターの状態を分岐の条件とする
・アクターのLvやHPといったステータスを直接条件とすることはできないが
変数にアクターのLvを格納→変数で比較するといった方法がある- パーティにいる
アクターがパーティにいるとき条件を満たすと判断する - 名前
アクターが指定した名前と一致するとき条件を満たすと判断する - 職業
アクターが指定した職業のとき条件を満たすと判断する - スキル
アクターが指定したスキルを覚えているとき条件を満たすと判断する - 武器
アクターが指定した武器を装備しているとき条件を満たすと判断する - 防具
アクターが指定した防具を装備しているとき条件を満たすと判断する - ステート
アクターが指定したステートのとき条件を満たすと判断する
- パーティにいる
- 敵キャラ
指定した敵キャラの状態を分岐の条件とする
・バトルイベントでのみ有効
・バトルイベント以外で実行した場合は条件を満たさないと判断される
・敵キャラのHPやMPといったステータスを直接条件とすることはできないが
変数に敵キャラのHPを格納→変数で比較するといった方法がある- 出現
指定した敵キャラ(敵グループ内の番号で指定)が出現しているとき条件を満たすと判断する
・倒した場合も出現していないと判断される - ステート
指定した敵キャラ(敵グループ内の番号で指定)が指定したステートのとき条件を満たすと判断する
・倒したかを判断したい場合、戦闘不能のステートであれば倒していると判断できる
・戦闘不能で解除されないステート(例えば毒)にする→倒す(戦闘不能にする)としても「毒状態のとき」には分岐しない
- 出現
- キャラクター
[プレイヤー][このイベント][イベントを指定]の向きを分岐の条件とする- 下
指定したキャラクターが下向きのとき条件を満たすと判断する - 左
指定したキャラクターが左向きのとき条件を満たすと判断する - 右
指定したキャラクターが右向きのとき条件を満たすと判断する - 上
指定したキャラクターが上向きのとき条件を満たすと判断する
- 下
- 乗り物
プレイヤーが指定した乗り物に乗っているか否かを分岐の条件とする- 小型船
プレイヤーが小型船に乗っているとき条件を満たすと判断する - 大型船
プレイヤーが大型船に乗っているとき条件を満たすと判断する - 飛行船
プレイヤーが飛行船に乗っているとき条件を満たすと判断する
- 小型船
- お金
所持金を分岐の条件とする
・0~9999999の範囲で比較する金額を指定する
・「指定した金額以下ではない」などの条件の組み合わせで判断可能だが
「指定した金額を超えるとき」「指定した金額と一致するとき」という条件はない
・お金は9999999以上も持つことが可能だが指定できるのは9999999まで- >=
所持金が指定した金額以上のとき条件を満たすと判断する - <=
所持金が指定した金額以下のとき条件を満たすと判断する - <
所持金が指定した金額未満のとき条件を満たすと判断する
- >=
- アイテム
指定したアイテムを所持しているとき条件を満たすと判断する
・所持数は指定できないため、所持数を指定したい場合は変数にアイテムの所持数を格納して変数で比較する
- 武器
指定した武器を所持しているとき条件を満たすと判断する
・所持数は指定できないため、所持数を指定したい場合は変数に武器の所持数を格納して変数で比較する- 装備品を含む
チェックを入れると装備している武器も判断の対象とする
・裏を返せば、チェックが外れている場合は装備している武器は所持していないと判断される
- 装備品を含む
- 防具
指定した防具を所持しているとき条件を満たすと判断する
・所持数は指定できないため、所持数を指定したい場合は変数に防具の所持数を格納して変数で比較する- 装備品を含む
チェックを入れると装備している防具も判断の対象とする
・裏を返せば、チェックが外れている場合は装備している防具は所持していないと判断される
- 装備品を含む
- ボタン
指定したボタンが指定したフレーム押されているとき条件を満たすと判断する
・フレーム数は0~999の範囲で指定する
・この条件分岐が実行されるまでのフレーム数のため、
例えば60フレームを指定した場合はこのイベントコマンドが実行される60フレーム以上前から
指定したボタンを押し続けているとき条件を満たすと判断する
・フレーム数を0にした場合は押してなくても押していると判断される
そのため、基本的に最低値は1を使用することになると思われる
・PS4版では〇、×、△、□、L1、R1、下、左、右、上ボタンから指定する
・Switch版ではA、B、X、Y、L、R、下、左、右、上ボタンから指定する - 条件を満たさないときの分岐を作成
チェックを入れると「それ以外のとき」という分岐が追加で作成される
・例えば指定したスイッチがONの場合とOFFの場合で分岐させたい場合、
「スイッチがONのとき」の条件分岐と「スイッチがOFFのとき」の条件分岐の二つを作成してもよいが、
「スイッチがONのとき」と「それ以外のとき」でも同様のことができる
- スイッチ
- 備考
・条件分岐の中に条件分岐を入れることも可能
さらに条件分岐を入れていき、20階層の条件分岐としても動作することは確認できた
ただし、イベントの実行内容のリストは横スクロールができないため、
階層を極端に深くするとやがてどんなイベントコマンドが書かれているのか実行内容一覧からは読めなくなってしまう
ループ †
繰り返して処理を行う部分を作成します。
- 設定項目
- 設定項目はない
- 備考
・「ループ」と「以上繰り返し」の間に作成したイベントコマンドを
「ループの中断」「イベント処理の中断」などループを終了させるイベントコマンドが実行されるまで繰り返し実行する
そのためイベントコマンドの組み方によっては無限ループとなってしまう可能性があるので注意
・「場所移動」でマップを移動してもループは抜けられない
・ループの中にループを作成することも可能
・ループ中に「イベントの一時消去」を実行するとフリーズしてしまうので注意(バージョン1.11で確認)
(スタートボタンでメニューも開けなくなり、アプリケーションを終了するしかなくなってしまう)
ループの中断 †
もっとも内側のループを脱出します。
- 設定項目
- 設定項目はない
- 備考
・このイベントコマンドを実行する行から見て最も内側のループを脱出する
脱出後は「以上繰り返し」の次の行から処理が実行される
・ループの中にループを入れている場合、ループの数だけ「ループの中断」をしないと無限ループとなる
(ループの脱出は「イベント処理の中断」などを使用する方法もある)
・ループではない行で実行すると、以降の処理は無視され、イベントが終了する
イベント処理の中断 †
実行中のイベント処理を終了します。
- 設定項目
- 設定項目はない
- 備考
・このイベントコマンドを実行すると、以降の処理は無視され、イベントが終了する
・「ループ」の中で実行してもイベントが終了するため、ループの脱出にも使用できる
コモンイベント †
コモンイベントを呼び出します。
呼び出したイベント処理の終了をもって、次の処理に移ります。
- 設定項目
- コモンイベント
呼び出すコモンイベントを選択する
- コモンイベント
- 備考
・トリガーが自動実行や並列処理のコモンイベントも呼び出せる
いずれもコモンイベントの内容を一回だけ実行して次の処理に移る
・並列処理のコモンイベントを呼び出しても、呼び出し元のイベントと並列して実行はされない
コモンイベントの実行が終了してから次の処理に移る
・コモンイベント内でアニメーションの表示などの対象として
「このイベント」を指定した場合は呼び出し元のイベントが対象になる
「イベントの名前(ID)」を指定した場合はマップに該当するイベントが存在すれば対象として実行され、
存在しなければそのイベントコマンドは無視される
・汎用的な処理はコモンイベントで作成しておき、このイベントコマンドで呼び出すとよい
ラベル †
ジャンプ用のラベル名を設定します。
- 設定項目
- ラベル名
ラベルの名前を入力する
- ラベル名
- 備考
・このイベントコマンド単独では機能せず、
イベントコマンド「ラベルジャンプ」と組み合わせて使用する
・未入力(空欄)でも動作する
ラベルジャンプ †
指定した名前のラベルへ処理を移します。
このイベントリストの中のみ有効です。
- 設定項目
- ラベル名
ジャンプ先のラベルの名前を設定する
- ラベル名
- 備考
・入力したラベル名と一致するラベルが存在する場合、該当するラベルの行からイベントコマンドを実行する
・入力したラベル名と一致するラベルが複数存在する場合、実行内容の上の方にあるラベルにジャンプする
・入力したラベル名と一致するラベルが存在しない場合、このイベントコマンドは無視される
・未入力(空欄)でも、ラベル名が未入力のラベルがあればジャンプする
・ループの外にあるラベルを指定すれば、ループの脱出にも使用できる
・コモンイベントから呼び出し元のイベントのラベルにジャンプすることはできない
注釈 †
リスト内に表示する注釈文を設定します。
ゲームには影響を与えません。
- 設定項目
- 注釈
注釈を入力する
- 注釈
- 備考
・ヘルプの通り、このイベントコマンドが実行されてもゲーム中では何も起こらない
・実行内容のメモ(コメント)を記入するためのイベントコマンド
・罫線やスペース等を入力して実行内容を見やすくするといった使い方もある
コメント