Reputation: 362
I'm trying to reload xml file in to variable every let's say 10 seconds. I've tried numerous tutorials on timers but each and every one of them, waits the timer time, and then it repeats the actions each milisecond or so.
var timer:Timer = new Timer(10000);
timer.addEventListener(TimerEvent.TIMER, onTimer);
timer.start();
function onTimer(evt:TimerEvent):void {
trace("10 seconds");
}
What I want to simply do, is watch this repeat each 10 seconds, but so far, it waits 10 secnds, then it puts "10 seconds" in trace like every milisencod ...
I've been struggeling with this ActionScript thing for such a long time and it seems to me, it must be pretty simple thing to do nope?
Thanks for your time, Mart
Upvotes: 1
Views: 677
Reputation: 6751
You most likely have this code in your frame and it's creating a new timer & listener EVERY frame :
var timer:Timer = new Timer(10000);
timer.addEventListener(TimerEvent.TIMER, onTimer);
timer.start();
Upvotes: 0
Reputation: 6402
You have a frame issue and I think you are not running the debugger version of player.
Try this.
var timer:Timer = new Timer(10000, 1); // Add a 1 to repeat count
timer.addEventListener(TimerEvent.TIMER_COMPLETE, function(evt:TimerEvent):void {trace("10 seconds");});
timer.start();
Upvotes: 0
Reputation: 4213
Try using TimerEvent.TIMER_COMPLETE
instead of TimerEvent.TIMER
like so :
var timer:Timer = new Timer(10000, 1); // Add a 1 to repeat count
timer.addEventListener(TimerEvent.TIMER_COMPLETE, onTimerComplete);
timer.start();
function onTimerComplete(evt:TimerEvent):void {
trace("10 seconds");
timer.reset(); // Reset the timer count back to 0
timer.start(); // Start the timer again
}
The above code repeats every ten seconds, the below code triggers once after ten seconds and does not trigger again :
var timer:Timer = new Timer(10000, 1); // Add a 1 to repeat count
timer.addEventListener(TimerEvent.TIMER_COMPLETE, onTimerComplete);
timer.start();
function onTimerComplete(evt:TimerEvent):void {
trace("10 seconds");
}
Upvotes: 1