Cuprins:
- Provizii
- Pasul 1: inițializați
- Pasul 2: Plouă pentru totdeauna
- Pasul 3: Mutarea personajului pistolului
- Pasul 4: Lansarea proiectilului
- Pasul 5: Endofgame
Video: Să plouă: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Acesta este un joc care trebuie jucat pe Micro: bit
Jocul se numește Ploaie și scopul este de a evita să fie lovit de obiectele care cad.
Fie mișcându-se la stânga din dreapta și / sau împușcând obiectele.
Jocul este operat de următoarele comenzi.
Shake - Inițiază un joc nou.
A - Deplasează personajul spre stânga.
B - Mută personajul spre dreapta.
A + B - Trage proiectilul la obiectele care cad.
Se acordă un punct pentru fiecare obiect în cădere lovit de proiectil.
Dacă personajul este lovit de obiectul care cade, atunci pierde o viață după ce pierde trei vieți, jocul se termină, acest lucru este indicat de imaginea feței triste și de scor.
Fiecare etapă a jocului este împărțită în mai multe funcții explicate în text.
Descrierea folosește codul blocului și este disponibil și Javascript.
Provizii
Micro: bit
Editor MakeCode
Pasul 1: inițializați
Inițializarea parametrilor jocului se realizează prin atribuirea unei combinații de variabile numerice și booleene.
Aranjarea ecranului cu informațiile anterioare, dacă există, atribuirea poziției de început a personajului pistolului și acordarea timpului utilizatorului pentru a poziționa micro-bitul pregătit pentru a începe jocul.
Este mai ușor să înțelegeți codul dacă variabilele primesc nume care indică funcția lor
De exemplu, „foc” inițiază „arma” care lansează „racheta”.
La fel, dacă endgamecount este mai mare de 3, atunci endgame este adevărat.
Deoarece arma se mișcă doar pe orizontală pe rândul de jos, y este întotdeauna 4 și variabila x este modificată pentru a ilumina LED-ul corespunzător folosind comenzile de plotare și deplotare.
Procesul de inițializare este utilizat în două funcții, On Start și On Shake.
După cum indică numele, apelurile de pornire inițializează la începutul codului pentru a seta variabilele utilizate la valorile necesare.
On Shake apeluri Initialize când utilizatorul inițiază un joc nou.
Acest lucru permite utilizatorului să repornească jocul și inițializează variabilele parametrului jocului, șterge ecranul și poziționează personajul jocului în poziția sa inițială.
Pasul 2: Plouă pentru totdeauna
Aceasta este partea din codul jocului care generează în mod aleatoriu obiectele care se încadrează și inițializează pozițiile de început înainte de a le muta pe ecran.
Impresia de cădere este definită de o întârziere între pornirea și oprirea LED-ului și creșterea contorului de poziție. La fiecare creștere a contorului de poziție se face o verificare pentru a determina dacă obiectul care se încadrează s-a ciocnit cu personajul jocului.
Dacă se detectează o coliziune, se pierd vieți până la maximum trei, atunci se anunță sfârșitul jocului, se afișează scorul și bucla obiectului care cade se termină.
Rainstart este poziția de pornire x a acestui caracter, care este incrementată în jos pe ecran prin indexul de schimbare a buclei „pentru” pentru poziția „y”. De la 0 la 4 cu 0 fiind partea de sus și 4 fiind partea de jos.
Nu dorim ca ploaia să cadă prea repede încât să nu o putem vedea, așa că adăugăm o întârziere cu o pauză.
Pe măsură ce ploaia cade, verifică înainte pentru a determina dacă există o coliziune cu arma, acest lucru se realizează folosind „punct”, care determină starea LED-ului din fața sa.
Dacă LED-ul dinaintea ploii este aprins, atunci acest lucru este determinat ca un hit și o viață se pierde sau jocul se termină.
Pentru a menține totul ordonat trebuie să scoatem LED-ul aprins anterior, astfel încât să apară o picătură de ploaie care cade continuu fără a lăsa o urmă.
Pasul 3: Mutarea personajului pistolului
Există două funcții de intrare utilizate pentru a muta personajul pistolului.
Acestea sunt butonul Pornit A apăsat și butonul Pornit B apăsat.
Butonul de pornire A apăsat.
Această funcție mută caracterul jocului spre stânga atunci când este apăsat butonul A.
Dacă nu este sfârșitul jocului și cu valoarea pistolului în raza sa permisă, poziția anterioară a personajului pistolului este neplotată, valoarea pistolului a scăzut și noua poziție a pistolului a fost trasată.
Dacă valoarea pistolului este mai mică de 0, atunci arma este trasată la x = 0, y = 4
Butonul de pornire B apăsat.
Această funcție mută caracterul jocului spre dreapta când este apăsat butonul B.
Dacă nu este sfârșitul jocului și cu valoarea pistolului în raza sa permisă, poziția anterioară a personajului pistolului este neplotată, valoarea pistolului este mărită și noua poziție a pistolului este reprezentată.
Dacă valoarea pistolului este mai mare de 4, atunci arma este trasată la x = 4, y = 4
Pasul 4: Lansarea proiectilului
Putem muta personajul pistolului în stânga și în dreapta și acum trebuie să poată trage proiectilul asupra obiectelor care plouă.
Aceasta este partea din codul jocului care generează proiectilul și inițializează pozițiile de început înainte de a-l muta pe ecran.
Impresia mișcării ascendente este definită de o întârziere între pornirea și oprirea LED-ului și creșterea contorului de poziție. La fiecare creștere a contorului de poziție se face o verificare pentru a determina dacă proiectilul s-a ciocnit cu un obiect în cădere.
Dacă se detectează o coliziune, obiectul în cădere este șters în acea poziție, scorul este actualizat, variabila poziția obiectului în cădere este resetată, poziția proiectilului și inițiatorul sunt resetate și bucla proiectilului este terminată.
Dacă jocul final este fals, foc = adevărat și rachetă = 4 pentru poziția sa de pornire.
Se creează o buclă while, aceasta permite tragerea unică sau continuă a proiectilelor în timp ce focul = adevărat.
Variabila de rachetă este scăzută de la 4 (jos) la 0 (sus) la
În fiecare punct, pe măsură ce racheta urcă pe afișaj, verifică dacă există o coliziune cu un obiect de ploaie dacă nu este detectată nicio coliziune, proiectilul continuă în sus și în afara ecranului.
Dacă se detectează o coliziune, obiectul de ploaie nu este trasat, deoarece este acum distrus, variabila sa se resetează și contorul de lovituri este incrementat cu 1.
Racheta nu este planificată pentru a da impresia că aceasta a fost distrusă.
Variabilele pentru ploaie, rachetă și foc sunt resetate.
Pasul 5: Endofgame
Această funcție setează steagul jocului final, afișează notificarea jocului final și scorul și pentru fiecare viață pierdută afișează explozia distrugerii.
Funcția endofgame este apelată pentru două instanțe atunci când utilizatorul pierde o viață și când toate cele trei vieți au expirat semnalând sfârșitul jocului.
De fiecare dată când funcția endofgame se numește endgamecount este mărită, dacă mai puțin de 3 se numește funcția de explozie care animă distrugerea personajului pistolului. Animația exploziei este o secvență de schimbare a pozițiilor LED-urilor care indică cu animație efectele undei de șoc.
În timp ce goliți în același timp ecranul, readuceți variabila pistolului la poziția inițială implicită și aplicați o pauză înainte de a comenta din nou jocul.
Dacă endgamecount = 3 se apelează funcția de explozie și după aceasta se afișează fața tristă care indică sfârșitul jocului urmat de scorul obținut. Odată ce scorul este eliminat, sunteți gata să reporniți jocul scuturând Micro: bit.
Recomandat:
Cum să faci 4G LTE dublă antenă BiQuade Pași simpli: 3 pași
Cum să fac 4G LTE Double BiQuade Antenna Pași simpli: De cele mai multe ori mă confrunt, nu am o putere de semnal bună pentru lucrările mele de zi cu zi. Asa de. Căut și încerc diferite tipuri de antenă, dar nu funcționează. După un timp pierdut, am găsit o antenă pe care sper să o fac și să o testez, pentru că nu se bazează pe principiul
Design de joc în Flick în 5 pași: 5 pași
Designul jocului în Flick în 5 pași: Flick este un mod foarte simplu de a crea un joc, în special ceva de genul puzzle, roman vizual sau joc de aventură
Sistemul de alertă pentru parcarea inversă a autovehiculului Arduino - Pași cu pași: 4 pași
Sistemul de alertă pentru parcarea inversă a autovehiculului Arduino | Pași cu pas: în acest proiect, voi proiecta un senzor senzor de parcare inversă Arduino Car Circuit folosind senzorul cu ultrasunete Arduino UNO și HC-SR04. Acest sistem de avertizare auto bazat pe Arduino poate fi utilizat pentru navigație autonomă, autonomie robotică și alte r
Detectarea feței pe Raspberry Pi 4B în 3 pași: 3 pași
Detectarea feței pe Raspberry Pi 4B în 3 pași: În acest instructabil vom efectua detectarea feței pe Raspberry Pi 4 cu Shunya O / S folosind Biblioteca Shunyaface. Shunyaface este o bibliotecă de recunoaștere / detectare a feței. Proiectul își propune să obțină cea mai rapidă viteză de detectare și recunoaștere cu
Economisirea apei când plouă: 6 pași
Economisirea apei când plouă: Odată cu ploaia recentă, am observat că sistemul meu de aspersoare a continuat să-și facă treaba, chiar și atunci când grădina avea apă mai mult decât suficientă. De ce nu dezactivați automat aspersorul când plouă