package CharacterExport
{
import flash.display.MovieClip;
import djarts.utils.CountWaiter;
public class AnimationPieceSet
{
public var Name:String;
public var Pieces:Array = new Array();
private var waiter:CountWaiter;
public function LoadClip(clip:MovieClip, doneCallback)
{
waiter = new CountWaiter(function(cw) {if (doneCallback != null) doneCallback();});
for (var i = 0; i < clip.numChildren; i++)
{
var c = clip.getChildAt(i);
if (c is MovieClip)
{
var child:MovieClip = c as MovieClip;
var m;
if (m = child.name.match("^piece_(.*)_clip$"))
{
//var index = Number(m[1]);
var found = false;
for (var j in Pieces)
{
if (Pieces[j].Key == m[1])
{
found = true;
break;
}
}
if (!found)
{
waiter.Wait();
Pieces.push(new AnimationPiece(m[1], child, waiter.WaitDone));
}
}
}
}
waiter.Go();
}
}
}