Tutorial 6 - Animació amb ActionScript 3.0
Pas 16 de 19
Ara provem la pel·lícula i tractem de prémer el segon núvol en posicions molt properes al límit de l'escenari per tots dos costats per fer-nos una idea dels valors d’x adequats.
El panell Salida mostrarà el valor x
per a aquest núvol, que com podem veure ha variat considerablement en estar programat per a mostrar-se en un pla més profund.
De fet, aquesta diferència entre la propietat x
depenent de la profunditat també la podem veure en l'animació, ja que encara que tots dos núvols tenen assignat el mateix increment en el valor x
, el més llunyà sembla avançar més a poc a poc que el més proper.
En el nostre cas, com a valor mínim seleccionarem -315
i com a valor màxim 715
, però aquests valors dependran de la mida del nostre núvol.
Ara el primer núvol trigarà més a aparèixer. Podríem afegir un condicional i, depenent de si el target és el primer núvol o el segon, prendre uns límits o uns altres. En aquest cas no té importància que un núvol tardi més en aparèixer de nou, així que deixem com a límits els del núvol més llunyà.
Com hem pogut comprovar, l'ús de trace
i dels comentaris poden ser molt útils a l'hora de programar.
Després d'esborrar el trace
, ja que ja no el necessitem, les funcions quedaran així:
function drag(e:MouseEvent):void
{
e.target.startDrag();
}
function drop(e:MouseEvent):void
{
e.target.stopDrag();
}
function wind(e:Event):void
{
e.target.x += .4;
if (e.target.x > 715)
{
e.target.x = -315;
}
}