Éste está en su versión orientada a objetos:
Código :
package { import flash.display.MovieClip; import flash.utils.Timer; import flash.events.TimerEvent; public class Main extends MovieClip { //////////////////////////// private var timer :Timer; //////////////////////////// private function Main() { timer = new Timer(1000,2); //solo defino la variable //Primer valor (1000 = 1 segundo) es el intervalo de conteo en milisegundos, //el segundo valor (2) es el numero de veces que se ejecuta el ciclo (en total dos segundos) stage.addEventListener(MouseEvent.MOUSE_MOVE,timerON,false,0,true); //los ultimos tres valores son para el control de la chache } private function timerON(evt:MouseEvent):void { timer.addEventListener(TimerEvent.TIMER_COMPLETE, mouseInactive,false,0,true); //el evento es TIMER_COMPLETE, así cuando se cumpla el coclo completo (1000,2) //es decir dos segundos (o el que decidan, solo remplacen el 2 por el numero que quieran) timer.reset(); //si muevo el mouse antes de que finalice el conteo se reinicia timer.start(); //si no se a iniciado el conteo, se inicia } private function mouseInactive():void { /* Aqui va la accion que desean que ocurra si el mouse no se mueve */ //igual recomiendo siempre liberar la cache eliminando el listener del ciclo así: timer.removeListener(TimerEvent.TIMER_COMPLETE,mouseInactive); } } }
Para implementarlo directamente en la linea del tempo sería así:
Código :
var timer:Timer = new Timer(1000,2); stage.addEventListener(MouseEvent.MOUSE_MOVE,timerON,false,0,true); function timerON(evt:MouseEvent):void { timer.addEventListener(TimerEvent.TIMER_COMPLETE, mouseInactive,false,0,true); timer.reset(); timer.start(); } private function mouseInactive():void { /* Aqui va la accion que desean que ocurra si el mouse no se mueve */ timer.removeListener(TimerEvent.TIMER_COMPLETE,mouseInactive); }