コンテンツにスキップ

VARSET

関数名 引数 戻り値
VARSET variable(, value, startIndex, endIndex) なし

API

VARSET variableName(, value, startIndex, endIndex)
指定した変数の配列の指定範囲に第二引数の値を代入します。
第二引数を省略した場合、0または空文字列が代入されます。
第三引数以降を省略した場合、配列の全てに代入されます。
例えば

VARSET FLAG, 0
VARSET STR, "あああ", 0, 10
VARSET TA:0:0:0,5678

この例ではFLAGの要素全てが0になります。
STR:0からSTR:9にはあああが代入され、TAについても三次元配列の全ての要素に5678が代入されます。
同じことはERB上でFOR-NEXTループなどを使って行うこともできますが、ループ回数が数十万回程度になると実行時間が無視できなくなります。
VARSET命令はERB上での代入よりはるかに早く処理を終わらせることができます。
キャラクタ変数をVARSET命令の対象にした場合、指定したキャラの要素のみに代入されます。

VARSET CFLAG:MASTER:0, 0
VARSET CSTR, ""

この例ではMASTERCFLAG:0~999(VariableSize.csvを変更していなければ)が0になりますが、他のキャラのCFLAGは影響を受けません。 また、対象を省略した場合は通常通りTARGETとみなされるのでTARGETCSTRが全て空文字列になります。他のキャラのCSTRは影響を受けません。 1次元配列および配列型キャラクタ変数以外の、DITEMTYPETA等に使用した場合、第三引数以降は無視され配列の全てに代入されます。

ヒント

命令のみ対応しています。