lunes, 28 de septiembre de 2009

5. Estructuras condicionales

Estructuras condicionales

Permite que una pelicula cambie su comportamiento, según la condicion que le pongamos

//Decimos que si la condicion1 se cumple lleve el lector de Frame al medio

if (condicion1) {

gotoAndPlay(”medio”);

} else { // Si no que vuelva a empzar

gotoAndStop(”vueltaempezar”);

}

Ok veamos Nuestro primer ejemplo En Flash Con AS3

Recomendaciones:
Siempre deben saber cuanto mide exactamente su Escenario (stage)
y es recomendable tambien saber cuanto miden sus objetos en el escenario.

Ahora vamos A Flash AS3, modifiquemos el tamaño de nuestro escenario y pongamos 400 px por 300 px.

Vamos a crear en el escenario un MovieClip de 100 X 40 px., lo instanciamos con el nombre de miObjeto y lo centramos al escenario (control + K) (cuando creen el MovieClip, colocar el punto de registro en la esquina superior izqiuerda, esto ayudara a controlar mejor sabiendo donde se encuentra el punto de registro de nuestro movieClip)



Descargar Fla sin codigo //Lo recomendable es que Uds mismos hagan sus fla y sus codigo

ahora vamos a Jugar con la posición de nuestro moviClip en la cordenada x

Primero solo colocamos en el primer Frame de la capa AS el siguiente codigo

//el eje x de miObjeto ira incrementando de 10 en 10 px
//esto hara que mi Movie CLip se mueva
miObjeto.x += 10

nota: si no se han dado cuenta hay un frame mas que esta quedando vacio, lo que esto hace es que el flash lea el primer Frame y haga que avance 10 pixeles nuestro MC luego se va al frame 2 no hace nada, como no hay ningun stop(); entonces regresa al frame 1 y hace que nuestro MC avance 10 pixeles mas y luego al Frame 2 y asi un bucle infinito nunca para.

Ahora si solo lo dejamos ahi, nuestro MC, saldra del escenario y seguira avanzando y no lo veremos mas, :'( jejejejeje es ahora donde usamos una condicional para cambiar eso

veamos

nuestro escenario mide de ancho 300 px, lo recuerdan ? ok

entonces solo tenemos que hacer que cada vez que entre en el Frame 1 y avance nuestro MC pregunte si esta fuera del escenario osea si su posixión x es mayora a 300 px. que es el ancho de nuestro escenario. quedaria asi:

miObjeto.x += 10;

if (miObjeto.x >300) { // preguntamos si la posicion x de nuestr objeto es mayor a 300
miObjeto.x = 0; // entonces lo movemos a la posicion x = 0
}

Listo chicos nuestra primera animacion con codigo AS3

Sencillo verdad ;)

Nota Final:
Si ven que el objeto salta de una posicion a otra, pues simplemente hagamos algo, dejemos que vaya mas alla de los 300 px y que empiece antes de la posicion 0 y el codigo completo quedaria asi:

miObjeto.x += 10;

if (miObjeto.x >450) { // preguntamos si la posicion x de nuestr objeto es mayor a 300
miObjeto.x = -100; // entonces lo movemos a la posicion x = 0
}

ver ejemplo

como ven para colocar un Objeto antes de la posición 0 (cero) podemos usar numero en negativo.

Espero les haya servido.


Lobito

1 comentario: