Hola de nuevo, tengo una duda, lo que pasa es que tengo una aplicación en donde cargo secciones de swf externos todo en as3, y en una seccion eh colocado swfs en linea de tiempo y cuando cierro la sección, se siguen escuchando los sonidos.
Me escribi un codigo para insertar los sonidos por codigo y almacenarlos en un array de soundChannels, y en el evento:
Código ActionScript :
loaderInfo.addEventListener( Event.UNLOAD...
Ejecuto un for para detener todos los canales, uno por uno. Los sonidos se detienen peroooo luego vuelven a sonar, como si la linea de tiempo donde escribi el codigo no se borrara y mi codigo que se supone se ah descargado... simplemente no se descargo...
Un ejemplo seria, dentro de un movieclip dentro de otro movieclip en el fotograma 50 esta esto:
Código ActionScript :
MovieClip( this.parent.parent.reproducirSonido( "Gises_snd" ); )
y esa funcion se define asi:
Código ActionScript :
public function reproducirSonido( id:String, outset:uint = 0 ):SoundChannel
{
var sound:Sound;
if( this.sounds_obj[ id ] == undefined )
{
sound = new ( getDefinitionByName( id ) );
this.sounds_obj[ id ] = { id:id, sound:sound };
}
else
{
sound = this.sounds_obj[ id ].sound;
this.sounds_obj[ id ].channel.stop();
}
return this.sounds_obj[ id ].channel = sound.play( outset );
}
Acepto cualquier tipo de opinión o solución. Gracias de antemano.
NOTA: Aunque no lo parezca, odio as3.
