Difference between revisions of "Array Variable"

783 bytes added ,  11:32, 22 August 2014
→‎Simple Example: added map+stringmap
imported>Odessa
(Created page with "Array variables are added by NVSE 4. Arrays are similar to form lists but allow for far more powerful capabilities with much easier scripting. Arrays are simple to use, provid...")
 
imported>Odessa
(→‎Simple Example: added map+stringmap)
Line 15: Line 15:


==Simple Example==
==Simple Example==
Regular array, all keys are consecutive integers from 0:
<pre>
<pre>
array_var aBeatles
array_var aBeatles
Line 27: Line 28:
endif
endif


let aBeatles[1] := SunnyREF ; * set element 1 (second) to SunnyREF
let aBeatles[1] := SunnyREF ; * change element 1 (second) to SunnyREF


; aBeatles array now contains: JohnREF, SunnyREF, GeorgeREF, RingoREF
; aBeatles array now contains: JohnREF, SunnyREF, GeorgeREF, RingoREF
</pre>
Map array, keys may be any unique float:
<pre>
array_var MagicNumberToString
string_var my_string
let MagicNumberToString := Ar_Construct "map"
let MagicNumberToString[2] := "Upper body"
let MagicNumberToString[5] := "Weapon"
; MagicNumberToString contains: 2::"Upper body", 5::"Weapon"
let my_string := MagicNumberToString[5] ; * my_string == "Weapon"
</pre>
String map array, all keys are unique strings:
<pre>
array_var StringToMagicNumber
int MyInt
let StringToMagicNumber := Ar_Construct "stringmap"
let StringToMagicNumber["Upper body"] := 2
let StringToMagicNumber["Weapon"] := 5
; StringToMagicNumber contains: "Upper body"::2, "Weapon"::5
let MyInt := StringToMagicNumber["Weapon"] ; * MyInt == 5
</pre>
</pre>


Anonymous user