Tutorial 9 - Creació d'un joc (I)
Pas 25 de 26
La funció, que rep un paràmetre amb el nom del fotograma, tindrà aquesta definició:
function gameOver(frameLabel:String):void
{
spacecraft_mc.removeEventListener(KeyboardEvent.KEY_DOWN, arrows);
spacecraft_mc.removeEventListener(Event.ENTER_FRAME, moveSpacecraft);
gotoAndStop(frameLabel);
replay_btn.addEventListener(MouseEvent.CLICK, replay);
}
Como veiem, el paràmetre que rep la funció l'hem anomenat frameLabel
, i a la sentència gotoAndStop
li indiquem que vagi a un fotograma amb el valor del paràmetre rebut (en el nostre cas, els valors rebuts són "win"
o "lose"
).
La funció replay
, que es cridarà quan premem el botó replay_btn
, només indicarà que tornem al fotograma inicial:
function replay(e:MouseEvent):void
{
gotoAndStop("start");
}
Resumint la programació creada en la primera part del joc, tenim en primer lloc un stop i la creació de les variables course
i speed
.
Després afegim un listener al botó start_btn
.
Per acabar, tenim creades cinc funcions, que es cridaran en diferents moments. Les funcions que hem creat són:
playGame
, activa el moviment de la nau.arrows
, fa girar la nau i indica la direcció del moviment.moveSpacecraft
, desplaça la nau i avalua si ha arribat al planeta o ha sortit fora de l'escenari.gameOver
, esborra els listeners, va a la pantalla final i prepara el botó per tonar a jugar.replay
, va al fotograma inicial del joc.
En el tutorial següent afegirem complexitat al joc afegint obstacles que es mouran de manera aleatòria per l'escenari.