My timer has three variables that I can trace to the output window,
but don’t know how to pass them to the timer. How to I pass the XML values to my timer?
Purpose
I want to test with an XML document, before I try connecting it to an XML socket.
myXML
<?xml version="1.0" encoding="utf-8"?>
<SESSION>
<TIMER TITLE="speed">100</TIMER>
<COUNT TITLE="starting position">-77777</COUNT>
<FCOUNT TITLE="ramp">1000</FCOUNT>
</SESSION>
myFlash
//COUNTER 'instance of mytext on stage'
/*
fields I want to change with XML
*/
//CHANGE TO 100
var timer:Timer = new Timer(10);
//CHANGE TO -77777
//var count:int = 0;
var myString:String = "-77777";
var count:int = int(myString);
//CHANGE TO 1000
//var fcount:int = 0;
var myStrg:String = "1000";
var fcount:int = int(myStrg);
//myXML.COUNT.text
timer.addEventListener(TimerEvent.TIMER, incrementCounter);
timer.start();
function incrementCounter(event:TimerEvent) {
count++;
fcount=int(count*count/1000);//starts out slow... then speeds up
mytext.text = formatCount(fcount);
}
function formatCount(i:int):String {
var fraction:int = i % 100;
var whole:int = i / 100;
return ("0000000" + whole).substr(-7, 7) + "." + (fraction < 10 ? "0" + fraction : fraction);
}
//LOAD XML
var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("time.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);
//PARSE XML
function processXML(e:Event):void {
myXML = new XML(e.target.data);
trace(myXML.COUNT.*);
trace(myXML);
//TEXT
var text:TextField = new TextField();
text.text = myXML.COUNT.*;
text.textColor = 0xFF0000;
addChild(text);
}
DID THIS “commented out my var count and did this
ex.
var count:int = Number(myXML.COUNT.text());
ex.
var count:int = int(myXML.*.(@TITLE == ‘starting position’));
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at numbersXMLtext_fla::MainTimeline/frame1()
RESOURCES
OReilly’s ActionScript 3.0 Cookbook, Chapter 12 Strings, Chapter 20 XML
For the speed value:
For the starting position value:
For the ramp value:
These snippets are using E4X to parse the xml values. It should also be noted that depending on what the final xml looks like this approach will probably need to be modified accordingly. Good luck!