I have been working on this problem for some time. Any help would be great!
You can see a working example at: http://thealternativerevolution.com/pie/Nicks%20homepage/Portfolio-nickarcher.html
I have written this function to dynamically draw lines from my XML code. I have done this so I could have more control over the elements on the screen in order to manipulate them later on…
But I can’t seem to figure out how to access them
For example the first line I draw is s1. I have been trying to access this to move it to the left, but cant seem to get hold of it with my code. I am assuming that because I added it to the stage it should be accessible from the stage after the initial function drawLines() has run???
I am very new to this game so please - any perspective would be so useful!
Here is the code:
function drawlines():void {
stage.frameRate = 31;
var lwidth:Number = 1;
var lheight:Number = 1;
var xStart:Number;
var yStart:Number;
var lineLength:Number;
var timeDelay:Number;
var drawTime:Number;
var xmlLoader:URLLoader = new URLLoader();
var xmlData:XML = new XML();
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
xmlLoader.load(new URLRequest("portfolio.xml"));
function LoadXML(e:Event):void {
xmlData = new XML(e.target.data);
ParseLines(xmlData);
}
function ParseLines(lineInput:XML):void {
for (var i:int = 0; i < lineInput.page.lines.line.length(); i++) {
var lineElement:XML = (lineInput.page.lines.line.@name*);
var xElement:XML = lineInput.page.lines.line.xStart.text()*;
var yElement:XML = lineInput.page.lines.line.yStart.text()*;
var lengthElement:XML = lineInput.page.lines.line.linelength.text()*;
var dtElement:XML = lineInput.page.lines.line.drawtime.text()*;
var tdElement:XML = lineInput.page.lines.line.timedelay.text()*;
var aline:DynamicMovie = new DynamicMovie();
xStart = Number(xElement);
yStart = Number(yElement);
lineLength = Number(lengthElement);
drawTime = Number(dtElement);
timeDelay = Number(tdElement);
aline.graphics.beginFill(0x000000);
aline.graphics.drawRect(xStart, yStart, lwidth, lheight);
aline.graphics.endFill();
addChild(aline);
aline.name = lineElement;
trace(getChildByName("s1"));
switch (aline.name.charAt(0)) {
case "s" :
aline.setRegistration(xStart/2, yStart);
Tweener.addTween(aline, {scaleY2:lineLength, delay:timeDelay, time:drawTime, transition:"linear", useFrames:true});
case "n" :
aline.setRegistration(xStart/2, yStart);
Tweener.addTween(aline, {scaleY2:lineLength, delay:timeDelay, time:drawTime, transition:"linear", useFrames:true});
trace(lineLength);
break;
case "e" :
aline.setRegistration(xStart, yStart/2);
Tweener.addTween(aline, {scaleX2:lineLength, delay:timeDelay, time:drawTime, transition:"linear", useFrames:true});
case "w" :
aline.setRegistration(xStart, yStart/2);
Tweener.addTween(aline, {scaleX2:lineLength, delay:timeDelay, time:drawTime, transition:"linear", useFrames:true});
break;
default :
trace("error in instance naming of Dynamic Movie");
}
}
}
}
Could someone