Dynamically create mcs and assign elements from an array and use loadmovie

I’m creating an educational game for my school students.
A little boy is flying through the city when he encounters objects flying from left to right.
He hears a SOUND eg: Dog - he must go and click the dog image with the flying cursor. There are at least 5 DIFFERENT objects that should be flying on the screen. There could be various of them at any one time.
I have the roots of the images in an xml file. And the actual swf are in a file called IMAGE and the sounds in SOUND.
My problem is that most tutorials I see use the attachmovie method but I don’t want to put all the swf’s in the library as there are hundreds.
I have to use the loadmovie method.
I take it I have to loop through the array and assign each element to an empty movieclip which in turn is in the loop so you get 5 empty clips - I will use i (index). It doesn’t seem to be working. I shall keep trying and post back here if I get any luck but I’m running out of ideas.
Then the objects have to float across the screen. Don’t know whether to use tween object or onEnterFrame handler or other. AND someone has mentioned using setinterval to “spit out” the objects.
BUT if I have five flying across the screen I’m left without clips to stick in any more.
Oh my head hurts but I will keep going.
CHEERS if any help is around. This should be quite a standard thng for game developpers. Code at the moment
function loadEnemies():Void {
enemy_xml = new XML();
enemy_xml.ignoreWhite = true;
enemy_xml.onLoad = function(success:Boolean) {
if (success) {
root.parseEnemyXML();
}
};
//enemy_xml.load("level
"+level+".xml");
enemy_xml.load(“data/animal_catch.xml”);
}
function parseEnemyXML():Void {
rows = enemy_xml.firstChild.childNodes.length;
for (var i:Number = 0; i<rows; i++) {
var row_string:String = String(enemy_xml.firstChild.childNodes*.firstChild.firstChild);
root["row"+i+“array"] = row_string; //MAIN ARRAY holds an array images/dog_a.swf/ images/cat_a.swf etc… all five
root.createEmptyMovieClip(“enemyObjects”, 1);
enemyObjects.createEmptyMovieClip("holder
"+i, i);
root[“object”+i] = new Sound(enemyObjects["holder"+i]);
trace(row_string);
loadMovie["row
”+i+“array"], ["holder”+i]
}
if (level == 1) {
alerts_mc.play();
} else {
currRow = 0;
rowCounter = 0;
}
}
OK got to about here BUT
a. I started to get confused around the createEmptyMovieClip part
b. I KNOW I shouldn’t have Sound(enemyObjetcs etc… BUT I copied the code from a tutorial and I don’t know what to replace it with.
I’m close but I need a little polishing.