SilSal escribió:
Gracias pero no es eso lo que intento hacer.
Lo que intentó es que el mc no se mueva si mantienes presionada la tecla Derecha. Solo se mueve si la pulsas continuamente más rápido o lento. Aunque cada pulso de la tecla este a 1 segundo de tiempo entre uno y el otro, el personaje avanza.
Gracias
Perdona, el problema es que hay una errata en el código que puse. Dentro de la función keyDownHandler pone:
Código ActionScript :
if (isPressed) return;
y debería ser:
Código ActionScript :
if (rightPressed) return;
Por eso te funcionaba igual que antes de usar el código. De todos modos, si sólo quieres que detecte que se ha pulsado una vez, sin que calcule el tiempo que transcurre entre las pulsaciones, te bastaría con esto:
Código ActionScript :
var rightPressed:Boolean;
var keyListener:Object = new Object();
keyListener.onKeyDown = keyDownHandler;
keyListener.onKeyUp = keyUpHandler;
Key.addListener(keyListener);
function keyDownHandler():Void
{
if (Key.getCode() != Key.RIGHT) return;
if (rightPressed) return;
trace("pulsado una vez");
rightPressed = true;
}
function keyUpHandler():Void
{
rightPressed = false;
}