Tutorial 9 - Creació d'un joc (I)

Pas 13 de 26

Com que ara volem que els desplaçaments de la nau els faci una altra funció que rep un ENTER_FRAME (la funció moveSpacecraft), en la funció arrows només desarem la dada sobre la rotació i cap a on s'ha de dirigir el moviment.

Per tant, substituïm les sentències case del desplaçament en la funció arrows de la manera següent:

case Keyboard.RIGHT :
    e.target.rotation = 90;
    course = "right";
    break;

En els altres casos, assignem a la variable course els valors "left", "up" i "down" respectivament.

La funció moveSpacecraft, que crearem a continuació, mourà de manera contínua el clip cap a un costat o un altre depenent de l'últim valor assignat a la variable course, ja que s'executarà contínuament quan la cridi un esdeveniment ENTER_FRAME.

La funció moveSpacecraft avaluarà el contingut de la variable course, i a partir d'això mourà la nau.

function moveSpacecraft(e:Event):void
{
    switch (course) 
    {
        case "right" :
            e.target.x += 3;
            break;
            
        case "left" :
            e.target.x -= 3;
            break;
            
        case "up" :
            e.target.y -= 3;
            break;
            
        case "down" :
            e.target.y += 3;
            break;
            
        default : 
            break;
    }
}