Так, в итоге заработал вариант с лоадером. Вот ведь интересная хрень, все уперлось в многопоточность флэша, точнее в асинхронность. В итоге сначала создается массив лоадеров, потом он грузит картинки. Следующим пунктом коллбэк события комплит, где считается все ли лоадеры закончили. И ТОЛЬКО после этого можно копировать лоадеры, в временные лоадеры для добавления на сцену, причем свойства новых лоадеров применяются только после события комплит, и соответственно доступ к длине, ширине, и прочим вещам ведется через базовый массив. Вот код:

Код AS3:
var he;
var wi;
var flp:Array;
var pole1;
var count;
var countMax;
function form(pole:Array,poole:Array)
{
trace(0);
flp=new Array();
count=1;
pole1=pole;
countMax=18;
for(var i=1;i<=countMax;i++)
{
flp[i]= new Loader();
var urlReq:URLRequest = new URLRequest("imgs/"+i+".png");
flp[i].load(urlReq);
flp[i].contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);
}
trace(1);
}
//paint(pole);
function paint(pole:Array)
{
//trace(1);
//trace(flp.length);
var k:MovieClip=new MovieClip;
for (var i = 0; i < 8; i++)
{
for (var j = 0; j < 8; j++)
{
var ldr:Loader=new Loader();
ldr.loadBytes( Loader(flp[pole[i][j]]).content.loaderInfo.bytes );
var a=k.addChild(ldr);
he=flp[pole[i][j]].content.height/2;//a.height/2;
wi=flp[pole[i][j]].content.width/2;//a.width/2;
a.x=j*(-wi)+i*wi /*- wi*0.5*/;
a.y=j*he+i*he;
trace(a.x,a.y);
}
}
addChild(k);
}
function loaded(e)
{
//trace(count);
if(++count>=countMax)
{
paint(pole1);
};
}
1) Кидаем в кадр
2)делаем папку с картинками
3) ...
4) PROFIT!!!
Всем спасибо.