Hello,
I’m trying to make a 2D array of data :
var data = new Array();
cards_3[0] = new Array();
cards_3[0]["attack"] = 5;
cards_3[0]["damage"] = 3;
is not work!
how i can create 2D Array or Object in javascript (UnityScript) ?
example :
var[0] {
attack : 0,
damage : 0,
},
var[1] {
attack : 0,
damage : 0,
}...
thanks.
Arrays use integers for indexing, not strings. There may be UnityScript quirks to handle array indexing that I don’t know about, in that case you’ll have to wait for someone more experienced in UnityScript to come along.
To create a 2D array:
var my2D = new int[10, 2]; // my2D references 10*2 integers
my2D[0, 0] = 5;
my2D[0, 1] = 3;
my2D[4, 1] = 8; // Set fifth column, second row to 8
You could create a class that contain your data and use a normal array.
class Attack
{
var type : int;
var damage : int;
function Attack(type : int, damage : int)
{
this.type = type;
this.damage = damage;
}
function ToString()
{
return "Attack: " + type + ", " + damage;
}
}
var attacks : Attack[];
attacks = new Attack[2];
attacks[0] = new Attack(5, 3);
attacks[1] = new Attack(5, 10);
If you need to refer to variables via strings, I guess you could have an array of Dictionaries, but in that case I’d recommend you create a dedicated class to handle that.