Breakout Tutorial

Un semplice tutorial per creare un gioco, perlomeno le basi, di tipo breakout.

sprite_breakout.jpgIniziamo con il creare gli sprite che useremo per il gioco: una palla, un muro, la racchetta, uno sprite per la vita, uno sprite per il mattoncino, un mattoncino danneggiato, e un mattoncino animato che esplode. Ho messo qui il file con le risorse che ho utilizzato. Ci sono anche i suoni e una immagine di background.

Tutte le sprite le creiamo con “precise collision checking”. Inseriamo anche un’immagine di background.

Dopo aver creato le sprites, andiamo a creare un oggetto per ogni sprite, più un altro oggetto di controllo che non avrà nessuna immagine.

room.jpgCreiamo quindi una room, con il nostro background di sfondo, i muri sulle pareti verticali e su quella in alto, la nostra racchetta e appoggiata sopra di essa la pallina. Deselezioniamo “Tile Hor” e “Tile Vert”, in quanto non vogliamo che l’immagine di sfondo venga ripetuta. Selezioniamo invece la casella “Stretch” per far sì che se l’immagine di sfondo è più piccola della room, allora verrà stirata fino a raggiungere le dimensioni della room di gioco.

L’oggetto wall è semplice, sarà soltanto visibile e solido. Negli Eventi e nelle Azioni non metteremo nulla.

L’oggetto stoneblu (ossia il mattoncino blu) sarà visibile e basta.

object_beakout.jpgL’oggetto stonedamaged, sarà anch’egli solo visibile.

Passiamo all’oggetto stone_exlpode. Imposteremo un evento Create, e gli daremo una azione di Timing. Prima di fare questo però, dobbiamo creare appunto una time line. Clicchiamo sull’icona della clessidra a sinistra dell’icona oggetto, la palla blu. Diamogli un nome, io ho messo “morte”, clicchiamo su Add (il + verde) e indichiamo il valore 4. Osserviamo lo sprite dell’animazione del mattoncino che esplode, è composto di 5 frame. Noi ora diremo che alla fine del frame 4 (ossia il quinto frame, in quanto il frame 0 è considerato il primo) il mattoncino si dovrà distruggere, ossia dovrà scomparire dal nostro gioco. Nell’azione delle timeline inseriremo l’azione “Destroy the instance”, che troviamo sotto main1/Objects. Clicchiamo ok, e la timeline è stata creata. Torniamo all’oggetto stoneexlplode. All’interno dell’evento Create, inseriamo l’azione timeline “morte”. Ecco come si presenta:

timeline.jpg

Ora creiamo l’oggetto stone, ossia la racchetta: è abbastanza semplice, avrà 4 eventi, ossia “tasto destro”, “tasto sinistro”, collisione muro, e “nessun tasto”. All’evento “tasto destro”, l’oggetto si muoverà un pò a destra, velocità 8, stessa cosa per l’evento “tasto sinistro”, ma con la direzione invertita, cioè a sinistra, l’evento collisione muro, imposteremo velocità 0 e movimento fermo, infino l’evento “nessun tasto” sarà identico all’evento muro, ossia diremo all’oggetto che deve stare fermo. La panoramica degli eventi risulterà così:

stone.jpg

controllo.jpgPassiamo all’oggetto controllo:

Avrà un Evento Create, dove imposteremo le vite a 3, e lo score a zero. Avremo poi un controllo di step, dove controlliamo se il numero di object_ball è zero, in caso positivo andiamo a creare una nuova pallina, ossia una nuova istanza per l’oggetto “object_ball”. Questo lo dovviamo creare perchè diremo al gioco che nel momento in cui la pallina dovesse uscire dallo schermo, la andremo a distruggere. L’evento “No More Lives” mostrerà la taabella dei punteggi e farà ripartire il gioco. L’evento Draw disegnerà alle noste coordinate il punteggio (x:40, y:40) e la quantità di vite (x:150, y:40, image: sprite_life).

Bene, fatto questo non ci rimane che vedere l’oggetto più complesso del gioco, ossia la pallina.

Idee:

wizorb_titlescreen.gif

pixeltao_breakout.png

Breakout Tutorialultima modifica: 2010-09-19T20:04:00+02:00da agrauwin
Reposta per primo quest’articolo