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.