Comunidad de diseño web y desarrollo en internet online

problema para reproducir dos mc.

Citar            
MensajeEscrito el 09 May 2007 01:25 pm
Como hariais para que al presionar un botón se vieran dos mc, primero que se viera uno y solo cuando éste finalize que se vea el otro.

on (press)
{
while(jose1.a==0) //cuando la instancia del mc1 jose1 llega al final a=1
this.jose1.nextframe();
if(a==1)
this.jose2.play(); //jose 2 es una instancia del mc2
}

Yo tengo nociones del lenguaje c que creo que es parecido a actionscript, pero no se porque si pongo el while se bloquea.

un saludo y gracias al que me pueda ayudar por que lo necesito para hacer una web

Por jorio01

16 de clabLevel



 

msie
Citar            
MensajeEscrito el 09 May 2007 02:17 pm
Se bloquea porque creás un loop infinito.

Me explico, Flash trabaja fotograma a fotograma, es decir en el primer fotograma en el que se desarrolla esa acción, Flash ejecuta el while y no termina de ejecutarlo hasta que la condición deje de cumplirse. El problema es que no hace nada más, es decir para finalizar un while, el código que cancele la condición debe estar dentro de éste.

En tu caso, tendrías que definir la variable a.

Pero no te preocupes mucho por eso ya que de todos modos no funcionaría. El evento onPress se ejecuta cuando presionás el botón. y el while o el if se ejecutan sólo en el instante en el que se lo presiona.

Para hacer lo que querés, necesitás otro método. Yo recomendaría que el primer MC que cargues, al llegar a cierto fotograma, cargue al que le sigue.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie
Citar            
MensajeEscrito el 09 May 2007 04:48 pm
declarado la variable a=0.
Lo que entiendo yo es que al presionar el botón entra en el bucle porque "a" vale cero y que va recorriendo todos los frames del mc1 hasta que "a" es igual a 1 que esto se da en el último fotograma y luego ya debería entrar en el if. Me equivoco?
La forma que tú me dices no me vale porque yo he puesto este ejemplo para resumir. Pero en mi caso real son dos botones. Al presionar uno se debería abrir una ventana poco a poco(mc1) y al presionar el otro botón se debe cerrar esa ventana(mc1) y abrir otra ventana (mc2) y si vuelvo a pulsar el primer botón se cierra el mc2 y se abre la ventana del mc1.Me entiendes? Hay alguna forma de hacer esto?

Por jorio01

16 de clabLevel



 

msie
Citar            
MensajeEscrito el 09 May 2007 08:54 pm

jorio01 escribió:

Lo que entiendo yo es que al presionar el botón entra en el bucle porque "a" vale cero y que va recorriendo todos los frames del mc1 hasta que "a" es igual a 1 que esto se da en el último fotograma y luego ya debería entrar en el if. Me equivoco?
Si, completa y absolutamente. Como te intenté explicar antes, el while no termina hasta que la condición deja de cumplirse. Y, hasta que todas las acciones son ejecutadas, (incluido el while) el Player no cambia de fotograma.

Respecto a cómo arreglar tu problema, insisto en que ubiques las acciones que querés en el fotograma donde definís "a" igual a 1.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie

 

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