AS3 - Не удается получить доступ к свойствам или методам дочернего элемента MC, который был добавлен в сценарий

Я все еще немного новичок в AS3, так что терпите меня, пожалуйста.

Я создал цикл для создания экземпляров плиток на доске. В следующем примере "Gametiles" - это массив, содержащий объекты класса "Tile", который является классом, расширяющим MovieClip. "Игра" - это MC, который я добавил на сцену в среде разработки флэш.

for(var i:uint=0;i < Gametiles.length;i++){
    var pulledTile = Gametiles[i];
    var tilename:String = "I_Tile_" + pulledTile.grid_y + "_" + pulledTile.grid_x;
    var createdTile = new InteractiveTile();
    pulledTile.addAnims(createdTile);
    Game.addChildAt(pulledTile, 0);
    Game.getChildAt(0).name = tilename;
}

Приведенный выше код работает, но с непростой проблемой. Если бы я сделал что-то вроде следующего:

trace(Game.I_Tile_1_3.x);

Я получаю "Ошибка типа: Ошибка #1010: термин не определен и не имеет свойств". Тем не менее, я могу получить доступ к этим детям следующим образом:

var testing = Game.getChildByName("I_Tile_1_3")
trace(testing.x);

Этот метод немного громоздкий, хотя. Я действительно не хочу создавать var и вызывать getChildByName каждый раз, когда я хочу взаимодействовать с этими свойствами или методами. Как я могу настроить этих детей так, чтобы я мог получить к ним доступ напрямую без дополнительных действий?

1 ответ

Используйте квадратные скобки.

Trace(Game["I_tile_1_3"].x);
Другие вопросы по тегам