Nel precedente articolo abbiamo aggiunto all’astronave la capacità di sparare premendo la barra spaziatrice. In questo articolo aggiungeremo dei nemici, li faremo muovere e gestiremo le collisioni in modo che spariscano quando colpiti dal nostro laser.
Come al solito, inizieremo l’asset dei nemici nella funzione di preload. Useremo la chiave “enemy”.
Scarica
Aggiungiamo quindi la funzione createEnemies() che richiameremo quando sarà inizializzato il gioco in create.
Phaser ci consente di gestire gruppi di sprite con l’oggetto Group in modo da poterne gestire con semplicità le caratteristiche e gli eventi. Creeremo quindi il gruppo “enemies” e lo riempiremo con un doppio ciclo di for per generare una sorta di griglia di nemici.
Infine dovremo gestire la collisione tra il gruppo dei laser e quello dei nemici: quando un laser toccherà un nemico dovranno sparire entrambi dallo schermo.
Scriviamo quindi innanzitutto la funzione da richiamare quando si toccheranno.
E nel ciclo di aggiornamento “update” la richiameremo ad ogni collisione avvenuta.
Abbiamo quindi un astronave in grado di colpire i nemici con dei proiettili laser.
L’effetto con cui questi vengono distrutti però è molto rozzo: semplicemente si limitano a sparire dallo schermo.
Potete vedere il risultato seguendo questo link o potete scaricare il progetto
Scarica
Nel prossimo articolo della serie vedremo quindi come gestire un animazione di esplosione.
