Никак не могу понять на конкретных задачах, как работают массивы/многомерные массивы и как обращаться к элементам этих массивов, мозг взрывается уже. Например:
Кусочек задачи: при определенных условиях на сцену помещаются мувики (с именами bar2, bar15, bar28 и т.д, но не суть важно). При клике на мувик нужно получать имя мувика и будет осуществляться поиск пути и флага в массиве по этому имени.

Код AS1/AS2:
var Global:Array = new Array(); //будущий многомерный массив типа [имя мувика][путь][флаг]
//nam[nx, ny] вычисляется ранее
_root.[nam[nx,ny]] = attachMovie("bar", "bar" + barname, this.getNextHighestDepth(), значениеX, значениеY); //barname -числовое значение, высчитывается раньше
trace(_root.calendar.areabodysel.area3[nam[nx,ny]]._name); //значения типа bar22
trace(_root.calendar.areabodysel.area3[nam[nx,ny]]) // значения типа _level0.bar22
//здесь нужно в массив Global записать: имя мувика "bar" + barname; соответсвующий ему путь; переменная-флаг.
_root.[nam[nx,ny]].onRelease = function()
{
a=this._name; // запоминаем имя кликнутого мувика
var currIndex:Number = 0; //переменная-счетчик
while(Global[currIndex]){ //поиск по массиву
if (Global[currIndex] == a){
if (Global[currIndex[флаг] = false) {
Global[currIndex][путь мувика].gotoAndStop(2);
Global[currIndex[флаг] = true;
}else
{ Global[currIndex][путь мувика].gotoAndStop(1);
Global[currIndex[флаг] = false;
}
}
currIndex++;
}
trace(_root.calendar.areabodysel.area3[nam[nx,ny]]._name); // здесь выдает undefined!Почему?
trace(_root.calendar.areabodysel.area3[nam[nx,ny]].); // и здесь
trace(this); //_level0.bar22
}