Nota
Ciao, benvenuto nella community di appassionati di SunFounder Raspberry Pi, Arduino e ESP32 su Facebook! Approfondisci le tue conoscenze su Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.
Perché unirsi?
Supporto esperto: Risolvi problemi post-vendita e sfide tecniche con l’aiuto della nostra community e del nostro team.
Impara e condividi: Scambia consigli e tutorial per migliorare le tue competenze.
Anteprime esclusive: Accedi in anteprima agli annunci dei nuovi prodotti e alle anticipazioni.
Sconti speciali: Goditi sconti esclusivi sui nostri prodotti più recenti.
Promozioni e giveaway festivi: Partecipa a giveaway e promozioni festive.
👉 Pronto per esplorare e creare con noi? Clicca su [qui] e unisciti oggi stesso!
2.20 GIOCO - Uccidi il Drago¶
Qui, utilizziamo il joystick per giocare a un gioco di uccisione del drago.
Quando clicchi sul verde, il drago fluttuerà su e giù sul lato destro e soffierà fuoco a intermittenza. Devi usare il joystick per controllare il movimento della bacchetta magica e lanciare attacchi stellari al drago, evitando allo stesso tempo le fiamme che spara, e infine sconfiggerlo.
Componenti Necessari¶
In questo progetto, abbiamo bisogno dei seguenti componenti.
È sicuramente conveniente acquistare un kit completo, ecco il link:
Nome |
OGGETTI IN QUESTO KIT |
LINK |
|---|---|---|
Kit di avvio ESP32 |
320+ |
Puoi anche acquistarli separatamente dai link qui sotto.
INTRODUZIONE AL COMPONENTE |
LINK PER L’ACQUISTO |
|---|---|
Costruisci il Circuito¶
Un joystick è un dispositivo di input costituito da un bastone che ruota su una base e riporta il suo angolo o direzione al dispositivo che sta controllando. I joystick sono spesso utilizzati per controllare videogiochi e robot.
Per comunicare una gamma completa di movimenti al computer, un joystick deve misurare la posizione del bastone su due assi: l’asse X (da sinistra a destra) e l’asse Y (da sopra a sotto).
Le coordinate di movimento del joystick sono mostrate nella figura seguente.
Nota
La coordinata x va da sinistra a destra, con un intervallo da 0 a 1023.
La coordinata y va da sopra a sotto, con un intervallo da 0 a 1023.
Ora costruisci il circuito secondo lo schema seguente.
Programmazione¶
1. Drago
Aggiungi lo sfondo Woods tramite il pulsante Scegli uno Sfondo.
Elimina lo sprite predefinito e aggiungi lo sprite Dragon.
Vai alla pagina Costumi e capovolgi orizzontalmente i costumi dragon-b e dragon-c.
Imposta la dimensione al 50%.
Ora crea una variabile - dragon per registrare i punti vita del drago, e imposta il valore iniziale a 50.
Successivamente, cambia il costume dello sprite in dragon-b e fai in modo che lo sprite Dragon si muova su e giù in un intervallo.
Aggiungi uno sprite Lightning come il fuoco soffiato dallo sprite Dragon. Devi ruotarlo di 90° in senso orario nella pagina Costumi, per far sì che lo sprite Lightning si muova nella direzione corretta.
Nota
Quando regoli il costume dello sprite Lightning, potresti spostarlo fuori centro, cosa che deve essere evitata! Il punto centrale deve essere esattamente al centro dello sprite!
Quindi, regola il costume dragon-c dello sprite Dragon in modo che il suo punto centrale sia sulla coda del fuoco. Questo renderà corretta la posizione degli sprite Dragon e Lightning, e impedirà a Lightning di lanciarsi dai piedi del drago.
Di conseguenza, dragon-b deve far coincidere la testa del drago con il punto centrale.
Regola la dimensione e l’orientamento dello sprite Lightning per rendere l’immagine più armoniosa.
Ora scriptiamo lo sprite Lightning. È semplice, basta farlo seguire lo sprite Dragon tutto il tempo. A questo punto, clicca sulla bandiera verde e vedrai Dragon muoversi con il fulmine in bocca.
Torna allo sprite Dragon, ora fai soffiare fuoco, stando attento a non far uscire il fuoco dalla sua bocca, ma a creare un clone per lo sprite Lightning.
Clicca sullo sprite Lightning e fai sì che il clone di Lightning spari ad un angolo casuale, rimbalzi sul muro e scompaia dopo un certo tempo.
Nello sprite Lightning, nascondi il corpo e mostra il clone.
Ora il drago può muoversi su e giù e soffiare fuoco.
2. Bacchetta Magica
Crea uno sprite Wand e ruota la sua direzione a 180 gradi per puntare a destra.
Ora crea una variabile hp per registrare il suo valore di vita, impostato inizialmente a 3. Quindi, leggi il valore del joystick, che viene utilizzato per controllare il movimento della bacchetta.
Il drago ha il fulmine, e la bacchetta che lo schiaccia ha il suo «proiettile magico»! Crea uno sprite Star, ridimensiona e scriptalo in modo che segua sempre lo sprite Wand, e limita il numero di stelle a tre.
Fai in modo che lo sprite Wand spari automaticamente le stelle. Lo sprite Wand spara le stelle allo stesso modo in cui il drago soffia fuoco, creando cloni.
Torna allo sprite Star e scriptalo in modo che il clone giri e spari verso destra, scomparendo dopo essere uscito dal palco e ripristinando il numero di stelle. Come lo sprite Lightning, nascondi il corpo e mostra il clone.
Ora abbiamo una bacchetta che spara proiettili stellari.
3. Combattimento!
La bacchetta e il drago sono attualmente ancora in disaccordo, e ora li faremo combattere. Il drago è forte, e la bacchetta è il coraggioso che lo combatte. L’interazione tra loro consiste nelle seguenti parti:
Se la bacchetta tocca il drago, verrà respinta e perderà punti vita.
Se il fulmine colpisce la bacchetta, la bacchetta perderà punti vita.
Se il proiettile stellare colpisce il drago, il drago perderà punti vita.
Una volta chiariti questi punti, procediamo a modificare gli script per ciascuno sprite.
Se la Bacchetta colpisce il Drago, verrà respinta e perderà punti vita.
Se Lightning (un clone dello sprite Lightning) colpisce lo sprite Wand, farà un suono pop e scomparirà, e la Bacchetta perderà punti vita.
Se una Star (clone dello sprite Star) colpisce il Drago, emetterà un suono di raccolta e scomparirà, ripristinando il numero di Star, e il Drago perderà punti vita.
4. Palco
La battaglia tra la Bacchetta e il Drago alla fine decreterà vincitori e vinti, che rappresenteremo con il palco.
Aggiungi lo sfondo Blue Sky, e scrivi il carattere «WIN!» su di esso per rappresentare che il drago è stato sconfitto e che l’alba è arrivata.
E modifica lo sfondo vuoto come segue, per rappresentare che il gioco è fallito e tutto sarà nell’oscurità.
Ora scrivi uno script per cambiare questi sfondi, quando la bandiera verde è cliccata, cambia lo sfondo in Woods; se i punti vita del drago sono inferiori a 1, allora il gioco ha successo e cambia lo sfondo in Blue Sky; se il valore dei punti vita della Bacchetta è inferiore a 1, allora cambia lo sfondo in Night e il gioco fallisce.