Приходят данные произвольной структуры, надо с ними работать.
А в AS3 нет средств, позволяющих лаконично написать такой код? Надо сделать сеттер и геттер. Первый получает ключ массива произвольной глубины (land.town.tower.room...) и значение, создает указанный элемент. Второй получает ключ, и возвращает значение по нему.
Как указывать на элементы объекта?
Страшный сеттер

Код AS3:
var fragments:Array = name.split('.');
if (fragments.length == 1)
{
stack[name] = value;
}
if ((stack[fragments[0]] == undefined) && (fragments.length > 1))
{
stack[fragments[0]] = {};
}
if ((stack[fragments[1]] == undefined) && (fragments.length > 2))
{
stack[fragments[0]][fragments[1]] = {};
}
if ((stack[fragments[2]] == undefined) && (fragments.length > 3))
{
stack[fragments[0]][fragments[1]][fragments[2]] = {};
}
switch (fragments.length)
{
case 2:
stack[fragments[0]][fragments[1]] = value;
break;
case 3:
stack[fragments[0]][fragments[1][fragments[2]] = value;
break;
case 4:
stack[fragments[0]][fragments[1][fragments[2]][fragments[3]] = value;
break;
}
И что? Неужели это должно быть именно так ужасно?