Creare un gioco con Scratch: acchiappa i fantasmi!

Cosa farai

In questa risorsa imparerai a creare un gioco con Scratch che noi abbiamo intitolato Ghostbusters, gli Acchiappafantasmi!

L’animazione del fantasma

    Per prima cosa devi scegliere uno Sprite e uno Stage adatti al gioco.

  1. Apri Scratch, fai click con il tasto destro del mouse sullo Sprite del Gatto di Scratch e seleziona Cancella fra le opzioni a disposizione nel menu a tendina:
  2. Fai click sull’icona Scegli uno Sprite dalla libreria, seleziona lo Sprite Ghost1 che trovi nella categoria Fantasia e premi il pulsante OK:
  3. Fai click sull’icona Scegli uno sfondo dalla libreria, seleziona Woods e premi il pulsante OK:
  4. Dobbiamo scrivere il codice per fare apparire e scomparire il fantasma. In particolare, vogliamo che, quando inizia il gioco, il fantasma sia visibile per un secondo, poi scompaia per un secondo, poi sia di nuovo visibile per un secondo, poi di nuovo invisibile… e così via, per sempre:

    Prova a fare click sulla bandierina verde per vedere se il programma funziona correttamente.
    Se non ci sono problemi, salva il tuo programma (File/Salva con nome).

La posizione del fantasma

Nel tuo programma per ora il fantasma appare e scompare sempre nello stesso punto ed è quindi molto semplice catturarlo. Per rendere il gioco più difficile dobbiamo fare in modo che ogni volta che scompare, poi appaia in una posizione differente. Per farlo ci basta aggiungere al codice che abbiamo scritto un blocco raggiungi posizione scelta a caso:

Esegui il programma per vedere se funziona correttamente.

Saresti in grado di modificare il parametro presente nel blocco attendi in modo che il fantasma aspetti un tempo scelto in maniera casuale?

Catturare il fantasma

Nel creare il gioco con Scratch vogliamo far sì che il giocatore catturi il fantasma facendo click sul suo Sprite mentre si muove in maniera casuale sullo schermo.
Per farlo dobbiamo aggiungere nuovo codice al programma:

Esegui il programma e prova a catturare il fantasma.

Avrai notato che non è molto semplice capire quando si cattura un fantasma. Sarebbe molto più chiaro se aggiungessimo un suono che ci assicuri che la cattura è effettivamente avvenuta. Per farlo ci basta aggiungere un blocco produci suono:

Esegui il programma e prova a catturare il fantasma.

Il punteggio del gioco

    Per aggiungere il punteggio al nostro gioco abbiamo bisogno di creare una nuova variabile:

  1. Seleziona i blocchi Variabili e liste, premi il pulsante Crea una Variabile, dalle il nome punteggio e premi OK:
  2. Trascina il blocco cambia punteggio di 1 sotto produci suono:

    Ora il giocatore guadagna un punto ogni volta che cattura il fantasma.
    Esegui il programma e prova a giocare per assicurarti che funzioni correttamente.

Se hai provato a fare più di una partita ti sarai accorto che il punteggio non viene riportato a zero ad ogni nuovo inizio. Per farlo abbiamo bisogno del blocco porta punteggio a 0. Poiché vogliamo che il punteggio sia 0 all’inizio di ogni partita, inseriamolo sotto il blocco quando si clicca su bandierina verde:

Esegui il programma e prova a giocare per assicurarti che funzioni correttamente.

La durata del gioco Ghostbuster

Quando finisce il gioco che abbiamo creato con Scratch?
Per ora dobbiamo premere la bandierina verde per iniziare una nuova partita, ma non abbiamo fissato in alcun modo la sua fine.

Vogliamo fare in modo che la partita duri un tempo prefissato e che il punteggio ottenuto dal giocatore rifletta il numero di fantasmi catturati.

Supponiamo che una partita debba durare 10 secondi: dobbiamo fare in modo che il nostro timer inizi a 10 secondi, il numero di secondi diminuisca progressivamente e, quando arriva a 0, il gioco venga interrotto. Per farlo dobbiamo creare una nuova variabile tempo e aggiungere al nostro programma il codice seguente:

Esegui il programma e prova a giocare per assicurarti che funzioni correttamente.

Ti sembra che il gioco sia troppo semplice? Puoi renderlo più difficile:

  • Diminuendo la durata di una partita;
  • Diminuendo il tempo in cui il fantasma è visibile;
  • Diminuendo la dimensione del fantasma.
  • Prova a cambiare alcuni o tutti questi valori finché raggiungi il livello di difficoltà che ti sembra il più adatto per questo gioco.

    Aggiungere Sprite

    Potresti creare il gioco con Scratch rendendolo ancora più interessante con l’aggiunta di altri Sprite:

    Per ciascun nuovo Sprite dovrai scrivere un programma simile a quello che abbiamo appena fatto insieme.
    Dovrai sempre decidere:

  • La dimensione dello Sprite;
  • Ogni quanto tempo appare e scompare dalla schermo;
  • Il suono che si sente quando viene catturato;
  • I punti che il giocatore guadagna alla sua cattura. Potresti anche decidere di fargli perdere punti!
  • Come hai visto, creare giochi con Scratch è davvero semplice: divertiti con gli amici e sfidali a modificare il codice per aumentare il livello di difficoltà o personalizzare i personaggi!


    This learning resource is provided for free by the Raspberry Pi Foundation under a Creative Commons licence.
    Find more at raspberrypi.org/resources and github.com/raspberrypilearning.