配列データの使い方

配列データの使い方


配列データとは0〜255までの番号に任意の値を格納しておける箱のようなものです。
例えば1フレーム毎の座標を橋渡ししていく形で、
自機キャラクターをトレースして動くオプションのような動き等、
大量に値を格納する必要がある場合等に利用できます。

イベント選択ボックスで『配列データ』を選択し決定すると、
その場所に配列データイベントが作成されます。

※格納する値を入力すると最初からその数値が番号に格納された状態になります。
※後から代入する場合には入力する必要はありません。


作成する領域はどこでも良いですが、
データ領域でも問題なく動作するので、
判りやすい場所に作るのをお勧めします。

配列データイベントを作成したら、
let_array(let_array2)で配列データ番号に指定した変数の値を代入、
get_array で配列データ番号に格納された値を指定した変数に取得する事ができます。


配列データ使用方法

配列データは大量に値を格納したい場合に、
その値を1つの配列データにまとめる事ができるので、
フラグを立てる場合等にもとても役に立ちます。

例えば鍵の付いた扉があったとして、
その扉を開く事で変化がある場合に、
扉のイベントに変数を格納する事もできますが、
大量にイベントがあると扉のイベントのIDを探すのも手間がかかる事があります。
そういったフラグ的な要素は配列データに1つにまとめた方が何かと便利です。

■配列データ番号に代入
関数引数1引数2引数3引数4
let_array対象配列データID代入する配列データ番号代入する値を格納した変数代入する値
引数1で指定した配列データイベントに、
引数3で指定した変数の値、
もしくは引数4で指定した値を、
引数2で指定した配列データ番号に代入します。

■配列データ番号(変数の値)に代入
関数引数1引数2引数3引数4
let_array2対象配列データID代入する配列データ番号が格納された変数代入する値を格納した変数代入する値
let_array と違うのは、
代入する配列データ番号を変数で指定できる引数2の部分です。

■配列データ番号から取得
関数引数1引数2引数3引数4
get_array配列データ番号から取得した値を代入する変数対象配列データID取得する配列データ番号が格納された変数取得する配列データ番号
引数2で指定した配列データイベントから、
引数3もしくは引数4で指定した番号の値を、
引数1で指定した変数に取得します。

ただし、何でも配列データにまとめれば良いというものではありません。
見ての通り代入する時には変数を使う事で1度にたくさんの値を格納する事もできますが、
その1つ1つを変数に取得する場合には、
get_array 関数を1つ1つ指定する必要があります。

つまり配列データと言うものは、
基本的に複数の変数で取得するよりも、
1つの変数で0〜255番まで値を管理するような形が扱いやすいようです。

もちろん1つ1つ変数に代入する使い方をしても問題はありませんが、
とくに大量の変数を格納する必要がない場合は、
キャラクターイベントを別途用意し、
そのイベントに代入しておくことでも対処が可能ですので、
必要かどうかはよく考えて使いましょう。


キャラクターイベントで代用する
let_array2 のように番号を指定することはできませんが、
キャラクターイベントなのでアクティブになった時に、
関数 get を実行して任意のイベントから変数を取得できる為、
いろいろなイベントが変数に格納している値を1つのキャラクターイベントに集める事ができます。

また、その時、
最後に save_event を実行し sleep 状態になるようにスクリプトを組むと、
そのイベントをアクティブにするだけで変数を収集してセーブしてくれるようにもできるので、
必要なイベント数もキャラクターイベントとスクリプトデータの2つで済みます。

必要な状況に合わせて配列データとキャラクターイベントを使い分けるようにしましょう。



▲フレームが表示されない人はクリック