# contentLoaderInfo problems

**URL:** <https://forum.kirupa.com/t/contentloaderinfo-problems/264193>\
**Category:** flash\
**Created:** [June 23, 2008, 10:00pm UTC](https://forum.kirupa.com/t/contentloaderinfo-problems/264193 "2008-06-23T22:00:26Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![killtheband](https://avatars.discourse-cdn.com/v4/letter/k/ed8c4c/32.png) [@killtheband](https://forum.kirupa.com/u/killtheband)\
**Post date:** [June 23, 2008, 10:00pm UTC](https://forum.kirupa.com/t/contentloaderinfo-problems/264193/1 "2008-06-23T22:00:26Z")

</div>

Hey all, I’m having trouble with loading external .jpgs in actionscript 3 and having it attach data from an XML file that I’m working with, I have racked my brain and am totally out of answers. Here’s the problem; the script runs fine, but when it draws the bitmaps from the external file it changes the order in the display while the text remains in the correct order, I can’t explain this, it just happens. I haven’t figured out a way to send a variable along with the Loader.load() function so that it loads the text at the same time instead of re-running a loop, causing it to load the text and file at different times. I think this would solve the problem, but I’m too new at AS3 to figure it out. Any ideas?

Thanks, here’s the script:

var xmlLoader:URLLoader = new URLLoader();  
var xmlData:XML = new XML();  
var url:URLRequest;  
var fileURL:String;  
var fileText:String;  
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);  
xmlLoader.load(new URLRequest(“cases.xml”));  
var imageCounter:Number;

function LoadXML(e:Event):void {  
xmlData = new XML(e.target.data);  
imageCounter = xmlData.image.length()  
for (var j:Number = 0; j \< imageCounter ; j++){

```
	//////////////////////////////////////
	// HERE IS THE IMAGE LOADER PORTION //
	//////////////////////////////////////
	
	fileURL = xmlData.image.attribute("file")[j];
	fileText = xmlData.image.attribute("texter")[j];
	var externalLdr:Loader = new Loader();
	externalLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, createImageHolders);

	url = new URLRequest(fileURL);
	externalLdr.load(url);
	
}

```

}

var container :Sprite;  
var scene :MovieScene3D;  
var camera :FreeCamera3D;  
var plane :Plane;  
var planeZArray:Array = new Array();  
var planes:Array = new Array();

container = new Sprite;  
addChild( container );

container.x = stage.stageWidth\*.5;  
container.y = stage.stageHeight\*.5;

scene = new MovieScene3D(container);  
camera = new FreeCamera3D();  
camera.z = 250;  
camera.y = 100  
camera.rotationY = -180

var i:Number = -1;  
var q:Number = 0;

function createImageHolders (e:Event) {  
var realOne:MovieClip = new MovieClip();  
realOne.name = “realOne”+q;  
var orig:MovieClip = new MovieClip();  
realOne.addChild(orig);  
orig.x = 20;  
orig.y = 20;  
orig.addChild(e.target.loader);

```
//////////////////////////////
// HERE IS THE TEXT PORTION //
//////////////////////////////

var tx:TextField = new TextField();
tx.multiline = true;
tx.wordWrap = true;
tx.x = 20;
tx.y = orig.height + 20;
tx.width = 100;
tx.name = "texter";
fileText = xmlData.image.attribute("texter")[q];
tx.htmlText = fileText;	
realOne.addChild(tx);

var myBlock = new block;
myBlock.name = "blockee";
realOne.addChildAt(myBlock,0);

var bam:MovieMaterial = new MovieMaterial(realOne);

i++;

plane = new Plane(bam,realOne.width,realOne.height,10,10);
plane.material.doubleSided = true;
scene.addChild(plane,"p"+i) ;
plane.container.name = "p"+i;
plane.container.buttonMode = true;
plane.container.addEventListener(MouseEvent.CLICK, onClick);
plane.x = i*80;
plane.y = 0;
plane.z = 50-i;
plane.name = i.toString();
planeZArray* = plane.z;
planes.push(plane);
plane.rotationY = -130;

if((i+1) == imageCounter){
	planes[0].container.dispatchEvent(new MouseEvent(MouseEvent.CLICK, true, false)); 
}

q++;

```

}
