
gracias... eso que me dices es parecido a lo que hice, pero creo que no me explique bien.
Código :
onClipEvent (enterFrame) {
myListener = new Object("uno");
myListener.onKeyUp = function() {
_root.uno.gotoAndPlay("stand");
};
Key.addListener(myListener);
}
onClipEvent (load) {
// declare and set speed variable
speed = 15;
}
onClipEvent (enterFrame) {
//***derecha********************
if (Key.isDown(Key.RIGHT) && !Key.isDown(Key.LEFT) && !Key.isDown(Key.DOWN) && !Key.isDown(Key.UP)) {
_x += speed;
_root.uno.gotoAndStop("adelante");
}
//***izquierda*********************
if (Key.isDown(Key.LEFT) && !Key.isDown(Key.RIGHT) && !Key.isDown(Key.DOWN) && !Key.isDown(Key.UP)) {
_x -= speed;
_root.uno.gotoAndStop("atras");
}
//***Abajo****************************
if (Key.isDown(Key.DOWN) && !Key.isDown(Key.RIGHT) && !Key.isDown(Key.LEFT) && !Key.isDown(Key.UP)) {
_root.uno.gotoAndStop("abajo");
if (_y<350) {
_y += speed;
}
}
//diagonal adelante abajo
if (Key.isDown(Key.DOWN) && Key.isDown(Key.RIGHT) && !Key.isDown(Key.LEFT) && !Key.isDown(Key.UP)) {
_root.uno.gotoAndStop("adelante");
_x += speed;
_y += speed;
}
//diagonal atras abajo
if (Key.isDown(Key.DOWN) && Key.isDown(Key.LEFT) && !Key.isDown(Key.RIGHT) && !Key.isDown(Key.UP)) {
_root.uno.gotoAndStop("atras");
_x -= speed;
_y += speed;
}
//***arriba*****************************
if (Key.isDown(Key.UP)) {
_root.uno.gotoAndStop("arriba");
_y -= speed;
//***arriba diagonal adelante*****
if (Key.isDown(Key.RIGHT)) {
_x += speed;
}
} else {
if (_y<340 && !Key.isDown(Key.RIGHT) && !Key.isDown(Key.LEFT)) {
_root.uno.gotoAndStop("volar");
}
}
//arriba atras diagonal
if (!Key.isDown(Key.DOWN) && Key.isDown(Key.LEFT) && !Key.isDown(Key.RIGHT) && Key.isDown(Key.UP)) {
_root.uno.gotoAndStop("atras");
_y -= speed;
_x -= speed;
}
//***Limite****************************
if (_y<50) {
_y = 50;
}
if (_y>350) {
_y = 350;
}
if (_x<36) {
_x = 36;
}
if (_x>610) {
_x = 610;
}
//ataques***********************************
//
if (Key.isDown(72)) {
_gotoAndPlay("veloz");
}
}
Ahora, por ejemplo, cundo presiono la tecla "h", usando su codigo ,
el clip no me reproduce, y si lo hace solo lo hace cuando mantengo
presionado la tecla, si la suelo no la reproduce.
Es decir, el mc que quiero que reprodusca al presionar la tecla "h" tiene 5 frames, en los cuales el personaje realiza un movimiento, un golpe con el puño, con el codigo que tengo no me funciona.
Pero al principio cuando no tenia tanto codigo y funciones solo funcionaba cuando mantenia presionado la tecla "h" si la soltaba se cortaba la secuencia y regresaba a la posision inicial, gracias al codigo que tengo al principio del AS.
¿Puede que el problema sea que todo el codigo lo tengo en un move clip que es
el principal, (dentro de este estan los demas clips, como el de avanzar,
retroceder, agacharce, volar, atacar, etc, etc)?
Viendo el As que he hecho, me pueden ayudar, lo que quiero es que con solo un toque de
la tecla asignada se reprodusca un mc hasta el final, con un solo toque, y no uno sostenido.
Gracias por su ayuda.