Никак не придумать архитектуру для меню построек.
Есть базовый класс BaseBuilding от него наследуются классы ConcreteBuilding1, ConcreteBuilding2, ..etc
У каждого из них есть статический фабричный метод, который выдает экземпляр иконки.
Что я попытался уже сделать
- заполнить массив классами

Код AS3:
private var buildings:Array = [
ConcreteBuilding1,
ConcreteBuilding2,
//...
];
- из этого массива наполнить меню вот таким образом

Код AS3:
for(var i:int = 0; i < buildings.lenght; i++)
{
var BuildingClass:Class = buildings[i];
var buildingIcon:Sprite = BuildingClass.getIcon();
//...
}
после этого неплохо было бы отдать объект-класс в метод для строительства

Код AS3:
function build(BuildingClass:Class):void
{
var building:BaseBuilding = new BuildingClass();
}
как мне кажется, код является «ненадежным», потому что я не могу «гарантировать», что метод вызовется именно у класса наследника BaseBuilding.
как лучше собрать? Может где-нибудь можно посмотреть примеры?