Comunidad de diseño web y desarrollo en internet online

Ayuda con sonido en As3

Citar            
MensajeEscrito el 25 Abr 2010 01:47 am
Tengo realizado un trabajo de drag&drop, y quiero que al soltar el objeto en el lugar correcto (en su target) reproduzca un sonido, aclaro solo cuando lo suelte en el lugar correcto y no en otro target, pero no tengo de idea de como hacerlo, el codigo que tengo es este:
miclip_mc.addEventListener(MouseEvent.MOUSE_UP, suena);
function suena(event:MouseEvent):void {
var misonido: MisonidoSound = new MisonidoSound();
var channel: SoundChannel = misonido.play();
}
miclip_mc.buttonMode=true;

y asì mismo con otros 3 mc
pero me reproduce el sonido al soltarlo en cualquier lugar, me podrian ayudar please?? Graciassss!!

Por ashleymz

13 de clabLevel



 

msie8
Citar            
MensajeEscrito el 25 Abr 2010 05:17 am

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 25 Abr 2010 07:58 pm
Hola, mira no soy muy experta en flash y menos en as3, pero lo que entiendo, es que tu código funciona más o menos como el que tengo no? Lo que yo necesito supongo, es que poner una condición en alguna parte, el problema es que no tengo idea de como.
Haber si logro explicarme mejor, en una pantalla tengo un trabajo drag & drop, son 4 mc los que tengo para arrastrar, y al momento de soltarlos en el lugar correcto quiero que reproduzca un sonido, el problema es que con el código que tengo me reproduce el sonido en donde sea.

La condiciòn tendrìa que ser algo así como....if (miclip1_mc == mytarget1_mc) {
y aquì el codigo para reproducir el sonido
} else {
y aquí un código para que no lo reproduzca no??

Bueno así es como imagino pero no se cómo hacerlo, ójala me puedas ayudar....ah y de todas maneras gracias por tu tip, me sirve para otras cosas :)

Por ashleymz

13 de clabLevel



 

msie8
Citar            
MensajeEscrito el 26 Abr 2010 02:33 am
No, tú código no funciona ni similar al mio. Tu creas instancias dentro de un botón, es bastante dañino a nivel OOP. El código que te pase te permite hace algo cómo:

Código ActionScript :

if(algo){
   fx = new Playback(new sound_ok(), 1, 0.1);
}else{
    fx = new Playback(new sound_Nok(), 1, 0.1);
}


De esa forma te olvidas del tema de la Clase Sound, el channel y demás yerbas. Puedes usar a su vez un Case para hacer múltiples comprobaciones:

Código ActionScript :

switch(variable){
    case 1:
     break;
}


O programar una lógica más prolija detectando el lugar donde haces el drop y con eso y un array ayudarte para el Playback de tu sonido.

Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 26 Abr 2010 04:21 am
Mil gracias por tu ayuda Hernán, lo acabo de solucionar :)

Por ashleymz

13 de clabLevel



 

msie8
Citar            
MensajeEscrito el 26 Abr 2010 07:12 am

ashleymz escribió:

Mil gracias por tu ayuda Hernán, lo acabo de solucionar :)


Buenísimo... De curioso... ¿Que manera empleaste al final? XD

Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 26 Abr 2010 05:44 pm
Empleando la clase Playback como me sugeriste :)

Gracias y saludos!

Por ashleymz

13 de clabLevel



 

msie8

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.