SetLocalArrayInt(object, string, int, int)

オブジェクトに設定された配列に数値をセットする動作をシミュレートする

void SetLocalArrayInt(
    object oidObject,
    string sVarName,
    int nVarNum,
    int nValue
);

Parameters

oidObject

配列を保存するオブジェクト

sVarName

配列の名称

nVarNum

配列上に保存する位置、インデックス、添え字

nValue

配列に保存する数値


Description

これは配列のシミュレーションであるが、1つのようにアクセスしたり、ループさせることもできる。

この配列シミュレーター関数で変数を作った場合、実際は"sVarNamen+VarNum"という名称の変数が作成されている。

SetLocalArrayInt(oPC, "myarray", 1, 10);

SetLocalInt(oPC, "myarray1", 10);

上記2つの関数はまったく同じ動作をする。



Remarks

nw_o0_itemmaker.nssの22行目に見つかる。


実際に配列は有効です。なぜなら:

a)コードの乱雑さを軽減することができる

b)変数名を個々に作るよりも、楽に連続して作ってまとめることができる


Known Bugs

SetLocalString(オブジェクト, 文字列, 文字列)と同じバグがある。


Requirements

#include "nw_o0_itemmaker"

Version

1.28

Example

//Sets 10 variables quickly on the PC, using a for loop.
//myarray1 is set to 1, myarray2 is set to 2, etc.

#include "nw_o0_itemmaker"

void main()
{
     object oPC = GetPCSpeaker();

     int nLoop;
     for (nLoop=1; nLoop<=10; nLoop++)
     {
          SetLocalArrayInt(oPC, "myarray", nLoop, nLoop);
     }
}

See Also

functions: GetLocalArrayInt | GetLocalInt | SetLocalInt
categories: Local Variables Functions


author: Lilac Soul, editor: Charles Feduke, additional contributor(s): Graziano Lenzi, JP team: geshi, ngtaicho
Send comments on this topic.