Comunidad de diseño web y desarrollo en internet online

countdown con AS3

Citar            
MensajeEscrito el 24 Jul 2011 06:19 pm
Hola soy Pit y esta es mi primera consulta

he hecho una cuenta atrás en flash con as3

es una animación de 10 frames que se repite 10 veces... la última, cuando la cuenta atrás llega a 0 saltamos a un frame llamado "menu"
La animación se inicia en un frame 2 llamado "barra_ini"

-en el frame 1, la variable

var cuenta:Number = 10;

-en el frame 10, cuando acaba la animación, instrucción para que el valor de la variable cuenta decrezca una unidad

cuenta --;

también esta instrucción condicional:

if (cuenta == 0) {
gotoAndStop ("menu");
} else {
gotoAndPlay ("barra_ini");
}


-en el frame 2, donde se incia la animación, un campo de texto que apoya la cuenta atrás junto a la animación:

txt_cuenta.text = String(cuenta);

-en frame "menu" pongo un botón inicio para volver al inicio, donde empieza la animación

btn_inicio.addEventListener(MouseEvent.CLICK, goInicio);

function goInicio(e:MouseEvent):void {
gotoAndPlay ("barra_ini")
cuenta = 10;
}



Y en teoría, por lo que he leído, debería funcionar, y cuando doy click al botón inicio la cuenta atrás debería empezar en 10

Sin embargo no lo hace, empieza en 0

Eso es lo que he leído en tutoriales y libros...

Al final la instrución cuenta = 10; la he tenido que quitar de ahí y ponerla en la instrucción condicional

if (cuenta == 0) {
gotoAndStop ("menu");
cuenta = 10;
} else {
gotoAndPlay ("barra_ini");
}



No entiendo por qué no me funciona cuenta = 10; en el botón inicio, pues entiendo que es ahí donde le digo que al volver a la animación empiece en 10

Por PitMatson

8 de clabLevel



 

msie
Citar            
MensajeEscrito el 25 Jul 2011 01:49 pm
El ejemplo es trivial, y evidentemente no hay motivos para que la declares a 10 y empiece en 0. Agrega en el frame2 (que supongo es donde tienes la etiqueta barra_ini), sino lo redeclararías siempre como 10 un

trace(cuenta)

A ver que sale

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 25 Jul 2011 05:41 pm
Gracias por interesarte y responder, soliarg

llevo poco en AS3 y toda ayuda es muy valiosa para mí :)

Al final era el orden en btn_inicio, la variable tenía que ir antes del gotoAndPlay

Algo así:

btn_inicio.addEventListener(MouseEvent.CLICK, goInicio);

function goInicio(e:MouseEvent):void {
cuenta = 10;
gotoAndPlay ("barra_ini")
}

Voy a probar tu sugerencia

Gracias :)

Por PitMatson

8 de clabLevel



 

msie

 

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