Array 2D of data
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.
Answer by Statement · Nov 01, 2015 at 01:23 PM
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.
Your answer
Follow this Question
Related Questions
Having problems with custom objects in my array - BCE0019 0 Answers
only keep every 10th entry in an array? 2 Answers
Creating an array of objects in the order they are in a folder? 0 Answers
Array[] of children of a child 3 Answers
Getting the element that has the same element number on another list ? 2 Answers