Foros del Web » Creando para Internet » Flash y Actionscript »

Reproducir sonido con tecla

Estas en el tema de Reproducir sonido con tecla en el foro de Flash y Actionscript en Foros del Web. Hola, estoy intentando hacer una pelicula flash que reconozca cuando se pulsa una tecla y mientras esta se mantenga pulsada, flash reproduce un sonido. Consigo ...
  #1 (permalink)  
Antiguo 09/03/2009, 04:14
 
Fecha de Ingreso: octubre-2008
Mensajes: 93
Antigüedad: 9 años, 2 meses
Puntos: 0
Exclamación Reproducir sonido con tecla

Hola, estoy intentando hacer una pelicula flash que reconozca cuando se pulsa una tecla y mientras esta se mantenga pulsada, flash reproduce un sonido.

Consigo que al pulsar la tecla, flash reproduzca el sonido (que és un loop), pero el problema es que si mantengo la tecla pulsada flash no para de iniciar el sonido y al final se solapan...

Alguien podría decirme como podría hacer que manteniendo pulsada la tecla, el sonido solo se reproduzca una vez, repitiendose hasta que se deje de pulsar la tecla?


var listKey:Object = new Object();

listKey.onKeyDown = function () {
if (Key.getCode() == 65) {
_root.so=new Sound();
_root.so.attachSound("sonido1");
_root.so.play();
_root.so.start(0,999);
}
}


Muchas gracias!
  #2 (permalink)  
Antiguo 10/03/2009, 04:07
 
Fecha de Ingreso: octubre-2008
Mensajes: 93
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Reproducir sonido con tecla

Ok, visto que nadie me ayuda he tenido que solucionarlo yo solito... jeje era una tonteria... Basta con añadir una condición (&& sonando==false) para que el sonido solo se inicie la primera vez.

var listKey:Object = new Object();
listKey.onKeyDown = function () {
if (Key.getCode() == 65 && _root.sonando==false) {sona("f1");_root.sonando=true;}
if (Key.getCode() == 83 && _root.sonando==false) {sona("f2");_root.sonando=true;}
if (Key.getCode() == 68 && _root.sonando==false) {sona("f3");_root.sonando=true;}
if (Key.getCode() == 70 && _root.sonando==false) {sona("f4");_root.sonando=true;}
}

function sona(sonido:String){
_root.so=new Sound();
_root.so.attachSound(sonido);
_root.so.play();
_root.so.start(0,999);
}


El problema (porque siempre hay un problema) ahora es que al hacer _root.so.stop(); me detiene el sonido (_root.so) y ademas me detiene todos los otros sonidos que se estan ejecutando!

Alguien sabe como es que sucede esto? o como puedo arreglarlo??

Muchas gracias!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:03.