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;
    }
}