Comunidad de diseño web y desarrollo en internet online

Como inicializar una variable que se lee varias veces

Citar            
MensajeEscrito el 23 Jun 2008 03:44 pm
Me enredé con el título, pero dejen que me explique...

Tengo un flash con animaciones a través de la línea de tiempo y mi método para hacer pausas es bastante sencillo, pero me complico al momento de utilizar una nueva pausa en otro frame.

Aqui está mi código:

En el frame 1, inicializo la variable i...

Código :

i = 0;


y en el Frame 10 necesito hacer una pausa, este seria el codigo:

Código :

WaitTime = 220;

if (i < WaitTime) {
   ++i;
   gotoAndPlay(_currentframe-1);
}


Segun esto, i aumentará su valor en 1 a medida que la línea de tiempo vuelve y regresa del frame anterior. Cuando i valga 219 continuará avanzando la línea de tiempo.

Todo bien hasta ahí... pero cuando quiero crear una nueva pausa en otro frame (digamos... Frame 20) no se como volver a inicializar i en 0 sin tener que recurrir a utilizar un Frame entremedio para eso. Quiero tener todo el AS en un frame (no me gusta llenar de programacion todos los frames).

Intenté agregando una función que realice ese trabajo y luego eliminarla:

Código :

function inicializar() {
   if (i != 0) {
      i = 0;
   }
   delete inicializar();
}

WaitTime = 220;

if (i < WaitTime) {
   ++i;
   gotoAndPlay(_currentframe-1);
}


El problema es que ya no puedo volver a usar esa función en otro frame porque claramente la eliminé.

Parece tan sencillo pero me complico demasiado. ¿Alguna sugerencia?

De antemano gracias por la ayuda.

salu2!

PD: Primer post :D

Por Sub__Zero

1 de clabLevel



Genero:Masculino  

Santiago, Chile.

firefox
Citar            
MensajeEscrito el 23 Jun 2008 05:31 pm
En tu primer frame:

Código :

function pausa(cuanto){
   stop()
   var t = setInterval(function(){
      play()
      clearInterval(t)
   },cuanto*1000)
}


Luego la llamas cuantas veces necesites de esta forma:

pausa(5) //hace una pausa de 5 segundos

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Jun 2008 05:38 pm
solisarg, gracias por tu respuesta, pero ese tipo de pausas no me ayudan con lo que estoy haciendo =/ necesito encontrarle una solución al problema en especifico que yo planteé.

nuevamente gracias de todas maneras.

salu2!

Por Sub__Zero

1 de clabLevel



Genero:Masculino  

Santiago, Chile.

firefox
Citar            
MensajeEscrito el 23 Jun 2008 05:46 pm
Olvidenlo, ya lo solucioné...

Código :

WaitTime = 220;

if (i < WaitTime) {
   ++i;
   gotoAndPlay(_currentframe-1);
}
else {
   i = 0;
}


¿Por qué siempre los problemas que nos sacan de quicio tienen una solución tan simple? ...El enemigo de los programadores xD! (yo me considero un novato en esto, pero mas de alguna vez me ha pasado algo como esto)

En fin... disculpen las molestias.

salu2!

Por Sub__Zero

1 de clabLevel



Genero:Masculino  

Santiago, Chile.

firefox
Citar            
MensajeEscrito el 23 Jun 2008 05:47 pm
Ya veo, usas un loop que depende de los FPS yendo y viniendo entre dos frames. Eso se llama superarse.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

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