Comunidad de diseño web y desarrollo en internet online

HACER ESPERAR UNA ACCION

Citar            
MensajeEscrito el 23 Jun 2007 10:46 pm
Hola a todos
Tengo un boton que tiene las siguientes acciones

Código :

on (release) {
   gotoAndPlay(41);
}
on (release) {
   _root.mc.gotoAndStop(1);
}

y quiero que despues de la primera accion espere 5 segundos para ejecutar la proxima

POR FAVOR AYUDA GRASIAS.

Por tabano

2 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 Jun 2007 12:56 am

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox
Citar            
MensajeEscrito el 24 Jun 2007 04:24 am
disculpa me puedes decir como quedaria el codigo ya busque mucho en el foro y no encuentro nada paresido

Por tabano

2 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 Jun 2007 11:21 am
Aqui tienes:

Código :

on (release) {
   trace ("Acción de release");
   gotoAndPlay (41);
   var ini:Number = new Number (new Date ().getTime ());
   function interval () {
      var fin:Number = new Number (new Date ().getTime ());
      if (fin - ini > 5000) {
         //donde 5000, retraso de la segunda acción en milisegundos
         trace ("Segunda acción de release tras cinco segundos");
         _root.mc.gotoAndStop (1);
         clearInterval (id);
      }
   }
   var id:Number = new Number (setInterval (interval, 30));
}

Funciona, pero mejor si Zguillez le da el visto bueno :cool:

Por ferranpujol

177 de clabLevel



 

Mataró (Barcelona), España

msie
Citar            
MensajeEscrito el 24 Jun 2007 05:57 pm
FERRANPUJOL el codigo me funsiona perfectamente muchas grasias,
Grasias ZGUILLEZ muchas grasias.

Por tabano

2 de clabLevel



 

msie
Citar            
MensajeEscrito el 25 Jun 2007 12:00 am

ferranpujol escribió:

Funciona, pero mejor si Zguillez le da el visto bueno :cool:

Ok, le doy el visto bueno... U_U :lol:

aunque.... el uso del getTime me parece innecesario. Yo lo haría asi:

Código :

boton.onRelease = function()
{
   trace("En 5 segundos se ejecutará la función 'accion'");
   accion_con_espera(this, accion, 5);
};
//--------------------------
var espera:Number;
function accion_con_espera(_this:MovieClip, funcion:Function, segundos:Number)
{
   espera = setInterval(funcion, segundos * 1000, _this, "espera");
}
//--------------------------
function accion(_this:MovieClip, espera:String)
{
   trace("Se ejecuta la acción!");
   clearInterval(_this._parent[espera]);
}

^^

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox
Citar            
MensajeEscrito el 25 Jun 2007 11:40 am
Umm, interesante desarrollo de acontecimientos. ¿Porquè creas una función en vez de hacer directamente el setInterval?¿Qué és ese cuarto atributo de setInterval?

^^

Por ferranpujol

177 de clabLevel



 

Mataró (Barcelona), España

msie
Citar            
MensajeEscrito el 25 Jun 2007 02:31 pm
Está hecho asi para hacer el código más reutilizable. La funcion accion_con_espera() recibe como parametros de cualquier botón el nombre de la funcion a realizar y el tiempo de espera, y genera el setInterval.
El último parametro del setInterval es el nombre del mismo, para que la función final sepa el nombre del intervalo a borrar (por si tuvieses varios).
Saludos

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox
Citar            
MensajeEscrito el 30 Jun 2007 08:47 pm
Yo aqui mejor me quedo callado :lol:
Gracias.

Por tabano

2 de clabLevel



 

msie

 

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