4.2.6 Sasso-Carta-Forbici

4.2.6.1 Panoramica

Img

Qui, giochiamo a sasso-carta-forbici tramite comunicazione wireless di micro:bit. I giocatori selezionano la loro mossa (sasso, carta o forbici) tramite i pulsanti, con scambio di dati tra i dispositivi. Il gioco segue il meglio di tre; se tutti e tre i round finiscono in parità o vittoria-sconfitta-parità, viene attivata una quarta partita.

Ogni risultato viene visualizzato sulla matrice micro:bit (W per vittoria, L per sconfitta, = per parità) e rivelato dalle luci RGB (verde per vittoria, rosso per sconfitta, giallo per parità) sul pin P8. Al completamento di un round, i due dispositivi resettano tutti i dati e le luci, preparandosi per la partita successiva.

Il gameplay integra perfettamente l’interazione wireless con il combattimento multi-round.

Img

4.2.6.2 Conoscenza dei Componenti

Img

Comunicazione wireless Microbit

Img

La scheda micro:bit integra due comode capacità di comunicazione wireless: radio a 2.4GHz e Bluetooth a bassa energia (BLE). Tuttavia, non possono essere utilizzate contemporaneamente.

La prima non richiede accoppiamento e supporta fino a 255 pacchetti indipendenti per minimizzare le interferenze, con un raggio di comunicazione di 10-30 metri, consentendo una rapida trasmissione di dati digitali e stringhe. Mentre la seconda è utilizzata principalmente per l’accoppiamento con smartphone, tablet e altri dispositivi intelligenti per applicazioni IoT come il caricamento di dati da sensori e il controllo remoto tramite app mobile.

Espandono le possibilità di sviluppo creativo della micro:bit.

4.2.6.3 Parti Richieste

Img

Img

Img

Scheda micro:bit V2 (auto-fornita) ×2

Smart Gamepad micro:bit (assemblato) ×2

Batteria AAA (auto-fornita) ×8

4.2.6.4 Flusso del Codice

Img

4.2.6.5 Codice di Test

Codice completo:

Img

Img

Breve spiegazione:

① Inizializza la radio e imposta il gruppo su ‘1’; imposta il numero di round, lo stato, l’avversario e il risultato di sasso-carta-forbici dei giocatori; collega le quattro luci RGB al pin P8 e aggiorna il display, imposta la matrice per mostrare Img.

Img

② Determina l’esito del round corrente: se la tua scelta corrisponde a quella dell’avversario (1/2/3 per forbici/sasso/carta), è un pareggio; altrimenti, seleziona un vincitore (forbici contro carta contro sasso contro forbici), il valore del round +1 e memorizza il risultato.

Img

③ Memorizza i risultati in un array e visualizza la stringa corrispondente. Se questa è la terza partita, determina se è necessaria una quarta partita (in caso di parità o vittoria-sconfitta-parità). In tal caso, visualizza “FINAL” e attendi 1 secondo prima di cancellare la selezione sasso-carta-forbici.

Img

Altrimenti, mostra “WINNER” per la vittoria, “LOSER” per la sconfitta e “TIE” per un pareggio. Dopo un ritardo di 3 secondi, chiama la funzione resetGame per cancellare tutte le variabili di gioco.

Se la partita consiste in quattro giochi, visualizza “GAME OVER” e chiama di nuovo la funzione resetGame dopo un ritardo di 3 secondi per resettare tutte le variabili di gioco.

Img

Se il gioco non è finito, mostra Img e cancella le scelte di entrambi.

Img

④ Premi C e la scheda invia “1” come forbici, e la matrice mostra Img; premi D e la scheda invia “3” come carta, e la matrice mostra Img; Premi E e invia “2” come sasso e mostra Img.

Img

⑤ Ricevi i dati radio (scelta dell’avversario).

Img

⑥ Determina se è necessario un quarto round. Se tutti e tre i giochi finiscono in parità o vittoria-sconfitta-parità, è necessario un quarto gioco; altrimenti, non è necessario.

Img

⑦ Le luci RGB visualizzano i colori corrispondenti in base all’esito: verde per la vittoria, rosso per la sconfitta e giallo per un pareggio.

Img

⑧ Quando il gioco finisce, cancella il display delle quattro luci RGB.

Img

⑨ Resetta lo stato del gioco, cancella tutti i valori delle variabili di gioco, resetta le luci RGB e mostra Img.

Img

4.2.6.6 Risultato del Test

Img

Dopo aver caricato il codice, inserisci la scheda micro:bit nello slot del gamepad (batterie installate) e sposta l’interruttore su “ON”.

La matrice mostra inizialmente Img. I giocatori premono i pulsanti per selezionare la loro mossa (E per sasso, D per carta o C per forbici), con scambio di dati tra i due dispositivi. Determinano l’esito del round corrente: una vittoria è indicata dalla “W” con la luce RGB che diventa verde, un pareggio dalla “=” con la luce gialla e una sconfitta dalla “L” con la luce rossa (la prima luce RGB si accende dopo il primo round, e così via). Il round successivo seguirà se il gioco non è finito.

Il gioco adotta il meglio di tre: se tutti e tre i round finiscono in parità o vittoria-sconfitta-parità, viene attivata una quarta partita.

Se c’è un vincitore dopo tre round, visualizzerà “WINNER” per la vittoria e “LOSER” per la sconfitta. Una volta mostrato il risultato, apparirà “GAME OVER” per resettare il gioco. Se il quarto round rimane indeciso, anche il gioco sarà finito.

Img

Suggerimento: Attendi che l’icona a forma di cuore appaia prima di continuare il round successivo. Se non c’è risposta sulla scheda, premi il pulsante di reset sul retro della scheda micro:bit.

Img