/* Version: RPG Engine version 0.1 Author: Erick Vanegas E-mail: eveevansml@gmail.com Fecha: 16/10/06 */ var teclado:Object=new Object(); var mov; var isrunning:Boolean=false; var dir; var sprite:Object; trace(sprite); teclado.onKeyDown= function() { if(Key.isDown(Key.UP)) { correrrun(4); } else if(Key.isDown(Key.LEFT)) { correrrun(2); } else if(Key.isDown(Key.RIGHT)) { correrrun(3); } else if(Key.isDown(Key.DOWN)) { correrrun(1); } else { detenerrun(); } } Key.addListener(teclado); var detenerrun=function() //Limpiar Hilo { isrunning=false; clearInterval(mov); } var correrrun=function(apuntadir:Number) //hacer dir=algo => hacer un hilo que lleve la direccion { dir=apuntadir; if(!isrunning) mov=setInterval(ct,100); } var correr=function() //hacer sprite se mueva 1234-234-34-4-1234 { if(sprite._x>0-sprite._width*(3/4)) sprite._x-=48; else sprite._x=0; } var dejardecorrer=function() //hacer sprite vuelva a posicion inicial { isrunning=false; sprite._x=0; clearInterval(mov); } var ct=function() { isrunning=true; if(dir==1) //corriendo hacia abajo { sprite._y=0; if(Key.isDown(Key.DOWN)) { correr(); } else { dejardecorrer(); } } if(dir==2) //corriendo hacia izquierda { sprite._y=-64; if(Key.isDown(Key.LEFT)) { correr(); } else { dejardecorrer(); } } if(dir==3) //corriendo hacia derecha { sprite._y=-128; if(Key.isDown(Key.RIGHT)) { correr(); } else { dejardecorrer(); } } if(dir==4) //corriendo hacia arriba { sprite._y=-192; if(Key.isDown(Key.UP)) { correr(); } else { dejardecorrer(); } } }