Comunidad de diseño web y desarrollo en internet online

Cómo detener momentáneamente la ejecución ???

Citar            
MensajeEscrito el 25 Sep 2004 06:10 am
He empezado hace muy poco con ActionScript y se me plantea un problema. Genero mediante attachMovie un total de 12 parejas que hay que enlazar pero las muestro en pantalla de 4 en 4, como si tuviera 3 niveles y al pasar uno voy al otro.

El problema es que quiero mostrar una pequeña animación indicando que es correcto cada nivel pasado y al intentarlo me saca inmediatamente las otras 4 parejas, es decir, no respeta el tiempo de 'enhorabuena' y me lanza el siguiente pantallazo.

:twisted: Las 3 pantallas las saco en función de unas variables y el número de aciertos, todo programado y no se cómo hacer para lanzar una espera hasta que termine la enorabuena de un nivel antes de sacar el siguiente.

Gracias

Por gronsi

31 de clabLevel



 

unknown
Citar            
MensajeEscrito el 25 Sep 2004 11:29 am
Si está todo programado y no utilizas la linea de tiempo utiliza el setInterval, que es una instruccion para llamar cada x milisegundos a una funcion. Harias algo asi:

mostrar mensaje de enhorabuena
id = setInterval(seguir,5000)
function seguir()
{
clearInterval (id) //eliminas el setInterval
eliminas los mensajes de enhorabuena
lanzas la nueva pantalla
}

De esta manera tendrias 5 segundos entre los mensajes y continuar. Mirate la ayuda para mas info.

Saludos!

Por llops

294 de clabLevel

1 tutorial

 

Barcelona

unknown
Citar            
MensajeEscrito el 25 Sep 2004 11:38 am
Wueno no se si te he entendido bien pero creo que tienes que utilizar .. para la espera: setInterval()

un ejemplo sería:

Código :

this.createEmptyMovieClip("prueba",1);
//Dibujo cuadrado para el clip prueba en plan chapuzas.
prueba.beginFill(0xff00ff,100);
prueba.moveTo(0,0);
prueba.lineTo(50,0);
prueba.lineTo(50,50);
prueba.lineTo(0,50);
prueba.lineTo(0,0);
prueba.endFill();
//tu funcion importante cada 3sg se mueve el clip, en tu caso se cargarias clip attachados..
muevete = setInterval(function(){
   prueba._x +=50;
   trace("He movido clip prueba._x ="+prueba._x); 
   if(prueba._x==250){
      clearInterval(muevete);
      trace("Ya no te muevas más clip prueba");
   }
}, 3000);


copia el script y pegalo en el primer fotograma de la linea de tiempo
Prueba la pelicula (ctrl+enter);

Saludos...

Por Keyman

8 de clabLevel



 

Zamora - España..

unknown
Citar            
MensajeEscrito el 25 Sep 2004 01:02 pm
Gracias por la ayuda danisan, estaba investigando lo del setInterval, lo único que me fallaba era lanzar la nueva pantalla desde la misma función de seguir que me has puesto como ejemplo. La lanzaba desde el código madre y por eso me continuaba sacando las otras pantallas.

Gracias de nuevo

Por gronsi

31 de clabLevel



 

unknown
Citar            
MensajeEscrito el 25 Sep 2004 01:04 pm
Me faltaba lanzar la nueva pantalla desde la propia función que llamaba setInterval.

Gracias de nuevo

Por gronsi

31 de clabLevel



 

unknown

 

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