LEZIONI E FORMAZIONE DAI DOCENTI PER I DOCENTI

Scopri WeTurtle, la community di educatori dove trovare e condividere risorse innovative

home - progetti - Un arcade-game interattivo con Scratch 1.4 e smartphone - Scriviamo il codice dell’arcade-game

Scriviamo il codice dell’arcade-game

Tempi

Tempo stimato per la lezione in classe: 2.00 h

Strumenti

Ancora non sei iscritto? Diventa una tartaruga digitale con centinaia di docenti da tutta Italia.

ISCRIVITI SUBITO!

Linee guida delle attività

Specifiche del gioco

Da quattro buche in un campo coltivato escono ad intervalli casuali - all’interno di un range temporale definito - quattro simpatici conigli che, alla ricerca di qualche carota, stanno distruggendo tutto il terreno nell’amena fattoria. Il giocatore, nei panni del povero contadino infastidito dai roditori, avrà a disposizione un martello virtuale in grado di raggiungere le quattro buche attraverso i comandi tasto destro e tasto sinistro della tastiera, ma soprattutto avrà con se lo smartphone (vedi la lezione precedente) per colpire i conigli e dissuaderli dal tentativo di rubare carote nel campo. Ad ogni colpo andato a segno il giocatore guadagnerà un punto che verrà visualizzato attraverso un contatore a due cifre. Scopo del gioco sarà quello di ottenere il punteggio più alto nel tempo limite di un minuto.
Di seguito alcune immagini da poter utilizzare nel proprio videogame:

  • lo sfondo (a sinistra, scaricato da questo link)
  • lo sprite coniglio (a destra) con 5 differenti costumi

  • lo sprite martello (a sinistra) con 2 costumi
  • lo sprite punteggio (a destra) con 10 costumi

  • lo sprite Game Over (a sinistra) con un costume
  • gli sprite inseriti all'interno dello stage (a destra)

Le sequenze per lo sprite

Partiamo dalla programmazione dello sprite coniglio: lo stesso script va ripetuto per tutti e quattro gli sprite modificando la posizione iniziale ed il nome del messaggio “pericolo” (“pericolo2”, “pericolo3”, “pericolo4”).

Le sequenze per lo sprite

Nel controllo che abbiamo appena effettuato si verifica il numero del costume del martello ([1] posizione su - [2] posizione orizzontale) che è regolata dal movimento dello smartphone (vedi lezione precedente). Vediamo allora come programmare il martello in risposta ai dati in arrivo dall’accelerometro dello smartphone:

Spostamento orizzontale dello sprite martello

La posizione iniziale lungo l’asse x dello sprite martello viene individuata attraverso la definizione di una variabile [indice] che va a pescare casualmente uno dei quattro valori inseriti nella lista [posizioni_x_hammer]. Ognuno di questi valori rappresenta, appunto, l’ascissa del martello che corrisponde ad una delle quattro posizioni al di sopra delle quattro tane dei conigli. All’inizio del gioco troveremo quindi il martello esattamente sopra una tana e tutti gli spostamenti verso destra o sinistra saranno vincolati ai valori della x inseriti nella lista per garantire all’utente un’esperienza di gioco semplificata, ma molto più gradevole e divertente.

Le condizioni logiche inserite nell’iterazione continua consentiranno inoltre al martello di non uscire mai dall’area di gioco: la pressione del tasto freccia sinistra o del tasto freccia destra risulteranno inefficaci per valori dell’ [indice] rispettivamente uguali a 1 ed uguali a 4.

Il punteggio e la fine del gioco

Per la visualizzazione del punteggio sono stati inseriti due sprite contenenti ciascuno dieci costumi corrispondenti alle dieci cifre del sistema decimale. Uno sprite verrà utilizzato per il conteggio delle unità, l’altro per il conteggio delle decine. Detti sprite sono essenzialmente dei visualizzatori della variabile [punteggio] che deve essere creata nella sezione [Variabili > Nuova variabile].

Il gioco è a tempo ed il contadino avrà a disposizione un minuto per colpire quanti più conigli possibile. La variabile [tempo] creata nella sezione [Variabili > Nuova variabile] potrà essere visualizzata nello stage spuntando la casella corrispondente nei blocchi della variabile. Lo script relativo sarà dato da un countdown che terminerà con l’invio di un messaggio allo sprite game over:

Buon divertimento!

Vuoi leggere la lezione quando vuoi, anche offline?



Hai letto la lezione? Che cosa ne pensi? Lascia un commento qui sotto!