Sonido en Flash III: Ejemplo de control de sonido.

0 - - 02/10/2004 00:00:00

Creación del escenario
1.- Tal y como se figura en la pelicula de Flash, Creamos un boton y le damos como nombre de instancia "Reproducir". Creamos otro botón y lo llamamos "Deslizador". Creamos la barra que recorrera el deslizador y lo convertimos en clip de película con el nombre de instancia "Barra".
2.- Disponemos los elementos como en el ejemplo.

Importación del sonido
1.- Elije Archivo > Importar a la biblioteca, localiza el sonido y haz click en abrir.
2.- Una vez el sonido esté en la biblioteca haz click con el botón derecho sobre él y elije "Vinculación". una vez en el cuadro de diálogo haz click en la opción "Exportar para Actionscript". En la caja de texto identificador, teclea "miSonido".
ActionScript
1.- Seleccionamos el fotograma 1 y en el insertamos el siguiente código

stop();
//Creamos una instancia de sonido llamada "Cancion" y
//a ella le asociamos "miSonido"
Cancion = new Sound();
Cancion = attachSound("miSonido")
//Inicializamos una variable "Sonando" a "NO"
Sonando="NO";
//Añadimos la acción necesaria para que el boton "Reproducir"
//haga su función
Reproducir.onRelease = function(){
     if (Sonando="NO"){ // Si no esta sonando
          Cancion.start(); //Reproducimos la cancion
          Cancion.setVolume(100);
          Sonando="SI" //Cambiamos la variable "Sonando" a "SI"
          Cancion.onSoundComplete = function(){
               Cancion.start(); //Si la cancion se acaba, reproducirla
          }
     } else {
          Cancion.stop();
          Sonando="NO";
     }
}
2.- Seleccionamos el botón "Deslizador".
Necesitamos que se comporte a la vez como botón y como clip, para poder arrastrarlo. Podríamos hacerlo de alguna otra forma pero quizá lo más sencillo es definir el comportamiento (desde el panel de propiedades) como clip de pelicula. Una vez hecho esto le asignamos el siguiente código:
onClipEvent(load){
     posY=_y; //Es la posicion en la coordenada Y del "deslizador"
     top=_y-_root.Barra._height; //top es el borde superior de la "Barra"
     bottom= _y; //bottom es la posición Y del "deslizador"
     right=_x; //posicion X del "deslizador"
     left=_x;
     _root.Cancion.setVolume(0); //Establecemos el volumen a 0
}

on(press){
     //Arrastramos el clip a lo largo de la "Barra"
     startDrag("",false,left,top,right,bottom);
}
on(release){
     stopDrag();
     //Dejamos de arrastrar y establecemos el volumen en función de la posición
     //en que hemos soltado el deslizador
     _root.Cancion.setVolume((posY-_y)*100/_root.Barra._height);
}

Con una ligera modificación en el código se puede establecer como valores de inicio del sonido que estuviese sonando y a un volumen del 100%.

Descargar Ejemplo » »

Deja tu comentario

  • El comentario debe estar relacionado con el contenido de la entrada.
  • Comentarios ofensivos, con spam o con lenguaje inapropiado serán eliminados.

captcha