Comunidad de diseño web y desarrollo en internet online

Problemas musicales

Citar            
MensajeEscrito el 11 Oct 2005 07:22 pm
Os cuento lo que quiero hacer, tengo 2 clip de pelicula y quiero que cuando entre en el primero una cancion empiece a aumentar el volumen uno a uno hasta 100 y si te sales de clip de peliculas a disminuir de volumen uno a uno hasta 0, todo va bien hasta que hago lo mismo con 2 clips de peliculas al entrar en uno me suenan las 2 canciones a la vez, porque puede ser aqui les dejo el codigo:

Código :

//VARIABLES
var volumen1 = 0;
var volumen2 = 0;
//SE ACTIVA CANCION 1
cancion1 = new Sound();
cancion1.attachSound("cargar_musica1");
cancion1.start(0, 999);
cancion1.setVolume(0);
//SE ACTIVA CANCION 2
cancion2 = new Sound();
cancion2.attachSound("cargar_musica2");
cancion2.start(0, 999);
cancion2.setVolume(0);
//-----------------------------------ZONA 1----------------------------
zona1.onRollOver = function() {
   clearInterval(desactivar_zona1);
   //EMPIEZA A AUMENTAR EL VOLUMEN DE LA ZONA 1
   activar_zona1 = setInterval(function () {
      // TE INDICA EN PANTALLA EL VOLUMEN
      _root.texto_vol1.text = volumen1;
      volumen1++;
      // EL TOPE PARA QUE EL VOLUMEN NO SUBA MAS DE 100
      if (volumen1>=100) {
         volumen1 = 100;
      }
      cancion1.setVolume(volumen1);
   }, 200);
};
//EMPIEZA A DISMINUIR EL VOLUMEN DE LA ZONA 1
zona1.onRollOut = function() {
   clearInterval(activar_zona1);
   desactivar_zona1 = setInterval(function () {
      // TE INDICA EN PANTALLA EL VOLUMEN
      _root.texto_vol1.text = volumen1;
      volumen1--;
      // EL TOPE PARA QUE EL VOLUMEN NO BAJE MAS DE 100
      if (volumen1<=0) {
         volumen1 = 0;
      }
      cancion1.setVolume(volumen1);
   }, 200);
};
//-----------------------------------ZONA 2----------------------------
zona2.onRollOver = function() {
   clearInterval(desactivar_zona2);
   //EMPIEZA A AUMENTAR EL VOLUMEN DE LA ZONA 2
   activar_zona2 = setInterval(function () {
      // TE INDICA EN PANTALLA EL VOLUMEN
      // _root.texto_vol2.text = volumen2;
      volumen2++;
      // EL TOPE PARA QUE EL VOLUMEN NO SUBA MAS DE 100
      if (volumen2>=100) {
         volumen2 = 100;
      }
      cancion2.setVolume(volumen2);
   }, 200);
};
//EMPIEZA A DISMINUIR EL VOLUMEN DE LA ZONA 2
zona2.onRollOut = function() {
   clearInterval(activar_zona2);
   desactivar_zona2 = setInterval(function () {
      // TE INDICA EN PANTALLA EL VOLUMEN
      // _root.texto_vol2.text = volumen2;
      volumen2--;
      // EL TOPE PARA QUE EL VOLUMEN NO BAJE MAS DE 100
      if (volumen2<=0) {
         volumen2 = 0;
      }
      cancion2.setVolume(volumen2);
   }, 200);
};

//Gracias ;.)

[SWAT]etiquetas code agregadas[/SWAT]

Por load

121 de clabLevel



 

msie
Citar            
MensajeEscrito el 12 Oct 2005 12:56 pm
Pero eso es imposible si lo pongo donde tu dices es un bucle, y me empezara a cargar la cancion un monton de veces.

Por load

121 de clabLevel



 

msie
Citar            
MensajeEscrito el 12 Oct 2005 02:43 pm
fijate tu problema son estas lineas

Código :

cancion1 = new Sound();
cancion1.attachSound("cargar_musica1");
cancion1.start(0, 999);
cancion1.setVolume(0);
//SE ACTIVA CANCION 2
cancion2 = new Sound();
cancion2.attachSound("cargar_musica2");
cancion2.start(0, 999);
cancion2.setVolume(0); 


ahora como controlas que no se reproduscan ambos a la vez, usando una bandera, que te diga si debes reproducir el clip 1 o el 2 esa misma te servira para hacer el fade in y el fade out de los sonidos, solo tienes que hacer un condicional y listo. dependiendo de tu bandera lo haces con x o y sonido

ademas de que si quieres hacer un loop infinito no necesitas colocarle que se reprodusca 9999999999 veces cuando llega al onSoundComplete vuelvelo a iniciar..

SAludos y suerte

Por Prozac

SWAT Team

1546 de clabLevel

1 tutorial

Genero:Masculino   SWAT

donde se regresa el viento

firefox
Citar            
MensajeEscrito el 16 Oct 2005 10:47 pm
Lo siento por mi ignorancia :-< pero no se que es una bandera, no se a que te refieres, si me lo podrias explicar.
Gracias

Por load

121 de clabLevel



 

msie
Citar            
MensajeEscrito el 16 Oct 2005 11:24 pm
bandera, algunos lo llaman switche aunque este ultimo tiende a confundir por lo del switch..case, ok en fin, una bandera es una variable de tipo Boolean(booleano) que solo admite dos valores true(1) o false(0) , aunque para true es cualquier entero mayor que 0, ahora la funcionalidad de los booleanos es gigante y necesaria para las condiciones retornan un valor booleano, ejemplo

Código :

a=5;
if (a==5){
     trace("La condicion es cierta (True)");
} else{
    trace("La condicion es falsa");
}
trace( (a==5));

tambien puedes hacer esto:

Código :

a=0;
if (a){
      trace("La condicion es cierta");
} else{
    trace("La condicion es falsa")
}


saludos :)

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 17 Oct 2005 05:13 am
Ok entendido gracias, pero yo empiezo con las 2 canciones reproduciendose pero en volumen 0 cuando yo le pongo:

zona1.onRollOver = function() {
volumen1++;

al entrar en el movieclip de la zona 1 solo se tendria que subir el volumen de la musica 1 porque la de la musica 2 que es el volumen 2 aun esta en 0 porque sube tambien,no le veo la logica.

Por load

121 de clabLevel



 

msie
Citar            
MensajeEscrito el 17 Oct 2005 06:59 am
eso es un problema que tiene attachSound, usa loadSound de la misma clase Sound y te funcionara


saludos :)

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

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