Comunidad de diseño web y desarrollo en internet online

Control volumen en varios swf con LoadMovie

Citar            
MensajeEscrito el 11 Ene 2006 12:22 pm
Me explico: Tengo un control de volumen mu chulo k he encontrado por internet con el siguiente codigo:
ESTE VA EN LA PELICULA PRINCIPAL Y CARGA EL SWF CON LA MUSICA

Código :

contenedor_sonido = this.createEmptyMovieClip("contenedor_sonido_mc", this.getNextHighestDepth());
contenedor_sonido._x = 100
contenedor_sonido._y = 100
contenedor_sonido.loadMovie("dynamicVolumeSlider.swf")


Y ESTE EN LA SWF DONDE ESTA LA CANCION Y K CREA LAS FORMAS DEL CONTROL

Código :

Stage.scaleMode = "noScale";
Stage.align = "LT";
// --
var x = 0;
var y = 0;
var width = 100;
var height = 10;
// -- dibujar
function drawBox (target, w, h, alpha) {
   if (alpha == undefined) {
      alpha = 100;
   }
   target.clear ();
   target.moveTo (0, 0);
   target.beginFill (0xCCCCCC, alpha);
   target.lineTo (w, 0);
   target.lineTo (w, h);
   target.lineTo (0, h);
   target.lineTo (0, 0);
   target.endFill ();
}
// -- volumen
function _setVolume () {
   var point = new Object ();
   point.x = _xmouse;
   globalToLocal (point);
   if (point.x > clipBounds.xMin && point.x <= clipBounds.xMax) {
      slide_mc._width = point.x;
      vol = (point.x / clipBounds.xMax) * 100;
      sound.setVolume (vol);
      updateAfterEvent ();
   }
}
this.createEmptyMovieClip ("shadow_mc", this.getNextHighestDepth ());
shadow_mc._x = x;
shadow_mc._y = y;
drawBox (shadow_mc, width, height, 50);
// -- slide para manejar volumem
this.createEmptyMovieClip ("slide_mc", this.getNextHighestDepth ());
slide_mc._x = x;
slide_mc._y = y;
drawBox (slide_mc, width, height);
var clipBounds = slide_mc.getBounds ();
// -- botón apagar/encender sonido
this.createEmptyMovieClip ("switcher_mc", this.getNextHighestDepth ());
switcher_mc._x = width + 10;
switcher_mx._y = y;
drawBox (switcher_mc, 10, 10);
// -- Objeto sound
var sound:Sound = new Sound (this);
sound.attachSound ("mySound");
sound.start (0, 999);
// -- subir - bajar volumen
slide_mc.onPress = function () {
   idInterval = setInterval (_setVolume, 1);
};
// --
slide_mc.onRelease = slide_mc.onReleaseOutside = function () {
   clearInterval (idInterval);
};
// -- apagar - encender sonido
switcher_mc.onRelease = function () {
   if (!soundOff) {
      sound.stop ();
      soundOff = true;
   } else {
      sound.start (0, 999);
      soundOff = false;
   }
};


El problema es k al cargar swf con LoadMovie la cancion se corta y vuelve a empezar al poner el primer codigo en la swf cargada con LoadMovie....(no se si me e explicado :? ) Lo k keria saber es si se puede k este control funcione navegando por varias swf sin cortarse.....
GRACIAS

Por eldavi

60 de clabLevel



 

opera
Citar            
MensajeEscrito el 24 Mar 2006 08:52 am
Puedes utilizar un swf que cargue el reproductor independiente de los demas swf, esto seria, tener 2 movieclips en _root, uno de ellos cargaria tu pelicula principal, y otro de ellos, el reproductor.
Si te interesa ademas hacer un crossfader entre canciones, únicamente genera un par de funciones y combinalas con set interval, que vayan desde 0 a 100 y de 100 a 0, el valor de retorno seria colocado en setVolumen, de cada cancion, teniendo en cuenta que la funcion descentdente es para el sonido actual, y el ascendente para el venidero, ademas a cada funcion necesitarias desmontar los intervalos con una condicion, que verifique que han llegado al inicio, o al fin, dependiendo cual sea el caso.

Por Mr_Anderson

151 de clabLevel



Genero:Masculino  

Terminaltor

firefox

 

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