Sommario:

Lascia che piova: 5 passaggi
Lascia che piova: 5 passaggi

Video: Lascia che piova: 5 passaggi

Video: Lascia che piova: 5 passaggi
Video: "Veneto ubriaco" in dialetto veneto 2024, Luglio
Anonim
Lascia che piova
Lascia che piova

Questo è un gioco da giocare sul Micro:bit

Il gioco si chiama Rain e lo scopo è evitare di essere colpiti dagli oggetti che cadono.

Muovendoti da sinistra a destra e/o sparando agli oggetti.

Il gioco è gestito dai seguenti controlli.

Agitare: avvia un nuovo gioco.

A – Sposta il carattere a sinistra.

B – Sposta il personaggio a destra.

A+B – Spara il proiettile contro gli oggetti che cadono.

Viene assegnato un punto per ogni oggetto che cade colpito dal proiettile.

Se il personaggio viene colpito dall'oggetto che cade, perde una vita dopo aver perso tre vite, il gioco termina, questo è indicato dall'immagine della faccia triste e dal punteggio.

Ogni fase del gioco è suddivisa in una serie di funzioni spiegate nel testo.

La descrizione utilizza il codice a blocchi ed è disponibile anche il Javascript.

Forniture

Micro: bit

Editor MakeCode

Passaggio 1: inizializza

Inizializzare
Inizializzare
Inizializzare
Inizializzare
Inizializzare
Inizializzare

L'inizializzazione dei parametri di gioco viene eseguita assegnando una combinazione di variabili numeriche e booleane.

Riordinare lo schermo delle informazioni precedenti se presenti, assegnare la posizione di partenza del personaggio della pistola e consentire all'utente il tempo di posizionare il Micro-bit pronto per l'inizio del gioco.

Rende più facile la comprensione del codice se alle variabili vengono dati nomi che ne indicano la funzione

Ad esempio, "fuoco" avvia la "pistola" che lancia il "missile".

Allo stesso modo, se endgamecount è maggiore di 3, endgame è vero.

Poiché la pistola si muove solo orizzontalmente sulla riga inferiore, y è sempre 4 e la variabile x viene modificata per illuminare il LED appropriato utilizzando i comandi plot e unplot.

Il processo di inizializzazione viene utilizzato in due funzioni, On Start e On Shake.

Come indicano i nomi, le chiamate On Start Initialize all'inizio del codice per impostare le variabili utilizzate sui valori richiesti.

On Shake chiama Inizializza quando l'utente avvia un nuovo gioco.

Ciò consente all'utente di riavviare il gioco e inizializza le variabili dei parametri di gioco, cancella lo schermo e posiziona il personaggio del gioco nella sua posizione iniziale.

Passaggio 2: piove per sempre

Piove sempre
Piove sempre

Questa è la parte del codice di gioco che genera casualmente gli oggetti che cadono e inizializza le posizioni di partenza prima di spostarli lungo lo schermo.

L'impressione di caduta è definita da un ritardo tra l'accensione e lo spegnimento del LED e l'incremento del contatore di posizione. Ad ogni incremento del contatore di posizione viene effettuato un controllo per determinare se l'oggetto in caduta è entrato in collisione con il personaggio del gioco.

Se viene rilevata una collisione, le vite vengono perse fino a un massimo di tre, quindi viene data la notifica di fine partita, viene visualizzato il punteggio e il ciclo di oggetti in caduta viene interrotto.

Rainstart è la posizione iniziale x di questo carattere, che viene incrementata lungo lo schermo dall'indice di modifica del ciclo "for"2 per la posizione "y". Da 0 a 4 dove 0 è il massimo e 4 il minimo.

Non vogliamo che la pioggia cada troppo velocemente da non poterla vedere, quindi aggiungiamo un ritardo con una pausa.

Quando la pioggia cade, controlla in anticipo per determinare se c'è una collisione con la pistola, questo si ottiene usando il "punto" che determina lo stato del LED davanti ad esso.

Se il LED prima della pioggia è acceso, questo viene determinato come un colpo e una vita è persa o il gioco è finito.

Per mantenere tutto in ordine dobbiamo rimuovere il LED precedentemente acceso in modo che ci sia l'aspetto di una goccia di pioggia che cade continuamente senza lasciare una scia.

Passaggio 3: spostare il personaggio della pistola

Spostare il personaggio della pistola
Spostare il personaggio della pistola
Spostare il personaggio della pistola
Spostare il personaggio della pistola

Ci sono due funzioni di input usate per spostare il carattere della pistola.

Questi sono il pulsante On A premuto e il pulsante On B premuto.

Sul pulsante A premuto.

Questa funzione sposta il personaggio del gioco a sinistra quando viene premuto il pulsante A.

Se non è la fine del gioco e con il valore dell'arma all'interno della sua gittata consentita, la posizione del personaggio dell'arma precedente non è tracciata, il valore dell'arma è diminuito e viene tracciata la nuova posizione dell'arma.

Se il valore della pistola è inferiore a 0, la pistola viene tracciata in x=0, y=4

Sul pulsante B premuto.

Questa funzione sposta il personaggio del gioco a destra quando viene premuto il pulsante B.

Se non è la fine del gioco e con il valore dell'arma entro la sua gittata consentita, la posizione del personaggio dell'arma precedente non viene tracciata, il valore dell'arma viene incrementato e viene tracciata la nuova posizione dell'arma.

Se il valore della pistola è maggiore di 4, la pistola viene tracciata in x=4, y=4

Passaggio 4: lancio del proiettile

Lancio del proiettile
Lancio del proiettile

Possiamo spostare il personaggio della pistola a sinistra ea destra e ora deve essere in grado di sparare il proiettile contro gli oggetti che piovono.

Questa è la parte del codice di gioco che genera il proiettile e inizializza le posizioni di partenza prima di spostarlo sullo schermo.

L'impressione di movimento verso l'alto è definita da un ritardo tra l'accensione e lo spegnimento del LED e l'incremento del contatore di posizione. Ad ogni incremento del contatore di posizione viene effettuato un controllo per determinare se il proiettile è entrato in collisione con un oggetto in caduta.

Se viene rilevata una collisione, l'oggetto in caduta viene eliminato in quella posizione, il punteggio viene aggiornato, la variabile di posizione dell'oggetto in caduta viene reimpostata, la posizione del proiettile e l'iniziatore vengono reimpostati e il ciclo del proiettile viene terminato.

Se il finale è falso, fuoco = vero e missile = 4 per la sua posizione iniziale.

Viene creato un ciclo while che consente lo sparo singolo o continuo di proiettili mentre fuoco = vero.

La variabile missile viene decrementata da 4 (in basso) a 0 (in alto) a

Ad ogni punto, mentre il missile sale sul display, verifica la collisione con un oggetto piovoso se non viene rilevata alcuna collisione, il proiettile continua su e fuori dallo schermo.

Se viene rilevata una collisione, l'oggetto pioggia non viene tracciato, poiché ora è distrutto, la sua variabile viene azzerata e il contatore di visite viene incrementato di 1.

Il missile non è tracciato per dare l'impressione che sia stato distrutto.

Le variabili per la pioggia, il missile e il fuoco vengono ripristinate.

Passaggio 5: fine del gioco

Fine del gioco
Fine del gioco
Fine del gioco
Fine del gioco
Fine del gioco
Fine del gioco

Questa funzione imposta il flag di fine partita, mostra la notifica di fine partita e il punteggio e per ogni vita persa mostra l'esplosione distruttiva.

La funzione endofgame viene chiamata per due istanze quando l'utente perde una vita e quando tutte e tre le vite sono scadute segnalando la fine del gioco.

Ogni volta che viene chiamata la funzione di fine partita, il conteggio di fine partita viene incrementato, se inferiore a 3 viene chiamata la funzione di esplosione che anima la distruzione del personaggio pistola. L'animazione dell'esplosione è una sequenza di posizioni mutevoli dei LED che indicano con l'animazione gli effetti dell'onda d'urto.

Mentre allo stesso tempo ripulisci lo schermo, reimposta la variabile pistola alla posizione di partenza predefinita e applica una pausa prima di commentare nuovamente il gioco.

Se endgamecount = 3 viene richiamata la funzione blast e successivamente viene visualizzata la faccina triste che indica la fine del gioco seguita dal punteggio ottenuto. Una volta che il punteggio è stato cancellato, sei pronto per riavviare il gioco scuotendo il Micro:bit.

Consigliato: