Comunidad de diseño web y desarrollo en internet online

As3 Problema de acceso tras un gotoAndStop()

Citar            
MensajeEscrito el 09 Ago 2010 02:46 pm
Hola, buenas a todos.

Actualmente estoy trabajando en un generador de personajes desarrollado en flash. Básicamente el contenido proporcionado por el grafista consta de una película con 2 frames (uno para los personakes masculinos y otro para los femeninos). Cada uno de estos frames posee unas 15-20 capas en las que se han colocado los distintos elementos del personaje(pelo, boca, ojos, etc.) siendo cada uno de estos elementos un movieClip con x número de frames (uno por cada elemento diferente) Ejemplo

Película principal->Frame 1(chicos)->capa 3 (movieClip pelos)-> 15 frames (uno por cada pelo diferente)

Al intentar generar los distintos personajes me encuentro con el problema de que con As3 no tengo acceso inmediato a las instancias del Stage inmediatamente tras realizar un gotoAndStop(). He estado leyendo distintos post de este problema por distintos foros y todos parecen llegar a la conclusión de que es un Bug, debido a que as3 ha sido pensado para desarrollar aplicaciones sin usar distintos fotogramas en la línea de tiempo. He probado con el evento Event.RENDER, con la función addFrameScript() y ninguna de estas soluciones parece funcionar.

Parece que este error es bastante común por lo que he podido leer, pero no encuentro la solución al problema.

Espero que podais ayudarme.

Un saludo.
Gracias.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 09 Ago 2010 07:33 pm
En realidad la conclusión es incorrecta, y el "bug" existe desde que existe Flash mismo, la diferencia es que ahora el compilador saca un mensaje de error, cuando antes fallaba silenciosamente. Cuando hay comandos gotoAndPlay o gotoAndStop, primero termina de realizar todo el código del frame, y al final mueve el cabezal, ese es el motivo de que algo así:

//en frame 2
gotoAndStop(5)
movieClipEnFrame5.alpha = 0.1

En este caso movieClipEnFrame5.alpha se ejecuta antes del gotoAndStop y falla, debería moverse al fotograma 5. En AS1 (y AS1) simplemente no funcionaba, pero no daba error.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Ago 2010 07:17 am
Estoy totalmente de acuerdo contigo, el problema está en que no encuentro la manera de conocer con exactitud cuándo las instancias del Stage en un frame determinado son accesibles tras haberme dirigido a ese frame con gotoAndStop(). Posteo algunos links en los que he estado leyendo algo sobre el tema para ver vuestra opinión:

http://richardleggett.co.uk/blog/index.php/2008/02/18/enabling_access_to_timeline_items_in_as3

http://www.kirupa.com/forum/archive/index.php/t-247040.html

http://www.deepplaid.com/blog/?p=157

El tercer enlace parece plantear una solución posible pero a mi parecer un poco tediosa , ya que en mi caso las instancias no se limitan a un campo de texto.

En resumen, lo que necesito es saebr cuándo, tras mover el cabezal a un frame determinado, tendré acceso total a todas las instancias que se encuentran en ese frame.

Gracias por tu respuesta.

Un saludo.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 10 Ago 2010 01:53 pm
Hay dos opciones:

- Poner el code en el fotograma destino si te mueves con programación en el timeline
- Usar un Timer o setInterval para demorar la ejecución del código que accede a las instancias (medio segundo es suficiente)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 12 Ago 2010 01:46 pm
Ok! gracias por tus respuestas.

Probaré con estas posibles soluciones a ver si consigo que la cosa marche..

un saludo.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox

 

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