Hi all.
I have just started using external AS3 files to try wean myself off using code in the main time line.
I am importing an XML file using an external as3 file, but can’t return the values to the main timeline
It worked when I used the trace option, but I need these values to dynamicly populate a movieclip on stage (another problem I can’t add movie clip to stage even though I have the linkage etc)
Can you take a look at this code and let me know what you think.
The values been returned are “0” , “null”, “0”. Why wont the code return each value from the loop rather than just one ?
AS3 Code ----------------------------------
package com.teamSelection
{
import flash.display.DisplayObjectContainer;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.display.Stage;
import flash.events.*;
import flash.net.*;
public class teamSelectionLoader extends MovieClip
{
public var req:URLRequest;
public var xml:XML;
public var players;
public var playerNumber;
public var playerName;
public var pos = 50;
public var mainStage:Stage;
public var len = 0;
public var pb:informationBar_mc;
public var container:MovieClip;
public function InitialContent(container:MovieClip)
{
this.container = container;
this.mainStage = container.Stage;
}
var loader:URLLoader = new URLLoader(new URLRequest("playerInfo.xml"));
public function teamSelectionLoader()
{
loader.addEventListener(Event.COMPLETE, onLoaded);
}
public function onLoaded(e:Event)
{
var xml:XML = new XML(loader.data);
var player:XMLList = xml..player;
len = player.length();
var _i:int = -1;
for (var i:Number=0; i<len; i++)
{
pb = new informationBar_mc();
players = player*.playerName;
playerNumber = player*.playerNumber;
pos = pos = 50;
//makePlayers(players,playerNumber,i);
setLen(len);
getLen();
setplayerName(players*);
getplayerName();
setplayerNumber(playerNumber);
getplayerNumber();
_i = i;
}
}
public function setLen(len:int):void
{
this.len = len;
}
public function getLen():int
{
return len;
}
public function setplayerNumber(playerNumber:int):void
{
this.playerNumber = playerNumber;
}
public function getplayerNumber():int
{
return playerNumber;
}
public function setplayerName(playerNumber:String):void
{
this.playerName = playerName;
}
public function getplayerName():String
{
return playerName;
}
//THIS WORKS WHEN IT’S CALLED
//function makePlayers(players:String, playerNumber:String,i:Number):void
//{
//trace(players + " number "+playerNumber+"i Number = "+i);
//var teamLineUp:teamLineUp_mc = new teamLineUp_mc();
////var info = playerName + " number " + playerNumber + "i Number = " + i;
//teamLineUp.playerName_txt.text = "This is from as3 script";
//
//}
}
}
Many thanks,
D