DOTRAIN¶
関数名 | 引数 | 戻り値 |
---|---|---|
![]() DOTRAIN | int | なし |
API
DOTRAIN trainNo
TRAIN
を行う命令です。@EVENTTRAIN
、@SHOW_STATUS
、@SHOW_USERCOM
、@USERCOM
、@EVENTCOMEND
及びそこから呼び出された関数の中でのみ使用可能です。引数で指定する番号は
train.csv
で定義した番号に対応しています。動作はコマンドが選択された場合と同じで、
UP
、DOWN
などの変数を初期化し、SELECTCOM
に引数を代入し、@EVENTCOM
が呼ばれ、@COM{SELECTCOM}
が呼ばれ……という流れになります。 引数が0
未満であるか、TRAINNAME
の要素数以上の値であればエラーになりますが、それ以外のチェックは行われません。
引数がtrain.csv
で定義されていない数字でも強制的に実行しようとします。
また、@COM_ABLE
を呼び出さず、強制的に実行されます。
必要であればDOTRAIN
の前に以下のようなチェックを行ってください。
SIF ( X < 0 || X >= VARSIZE("TRAINNAME") || TRAINNAME:X == "" )
RETURN
RESULT = 1
TRYCALLFORM COM_ABLE{X}
SIF RESULT == 0
RETURN
DOTRAIN X
DOTRAIN
を用いてTRAIN
のコマンドを独自に実装することもできます。例えば
train.csv
を空にしておき、@SHOW_USERCOM
で独自に表示し、@USERCOM
でDOTRAIN
を行います。あるいは
train.csv
を空にする代わりに全ての@COM_ABLE
が0
を返すようにしてもよいでしょう。@COM_ABLE
を変更する代わりに、全ての@COM_ABLE
を削除し、_replace.csv
のCOM_ABLE初期値
を0
にする方法もあります。なお、
CALLTRAIN
の処理の途中でDOTRAIN
が行われた場合、CALLTRAIN
の残りは無効になります。 ヒント
命令のみ対応しています。