Cuprins:
- Pasul 1: Înainte de a începe …
- Pasul 2: Regulile jocului de ghicit
- Pasul 3: Programul Blocuri: Variabile
- Pasul 4: Funcțiile
- Pasul 5: Startul programului și Shake Events & Event Handlers
- Pasul 6: Mesajul de pornire și funcțiile de provocare
- Pasul 7: Evenimentul Buton un clic - Răspunde la provocarea BITs
- Pasul 8: Butonul B Faceți clic pe eveniment - Trimiteți răspuns la provocarea BIT
- Pasul 9: Câștigarea / pierderea și restul funcțiilor
- Pasul 10: Simulatorul și codul
Video: Ce este Bit Thinking? Faceți un joc simplu de ghicit cu BBC Microbit !: 10 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Am luat câteva microbiți BBC după ce am citit recenzii pozitive despre ele în mai multe articole online.
În încercarea de a mă familiariza cu BIT, m-am jucat cu editorul online Microsoft Blocks timp de câteva ore și am venit cu un joc simplu de ghicit.
În acest IBLE vom vorbi despre regulile jocului și vom naviga prin funcțiile asamblate în diferite blocuri de cod în Editorul de blocuri.
În cele din urmă, publicul entuziasmat poate naviga la simulatorul online și poate da acestui joc simplu o lovitură.
Să începem.
Pasul 1: Înainte de a începe …
Hardware-ul
Placa BBC Microbit este ușor de familiarizat. Pentru acest IBLE, tot ce trebuie să știți este că este o placă mică cu 2 butoane, o gamă de LED-uri minuscule și o priză micro-USB care acționează ca sursă de alimentare și un mijloc de încărcare a unui program pe placă.
Gama de LED-uri minuscule poate fi programată să se aprindă în diferite modele.
Notă:
Nu aveți nevoie de placa fizică pentru acest IBLE! Site-ul BBC Microbit are un simulator online pentru a testa codul pe care îl dezvolți online.
Software-ul
Acest IBLE nu intră în detaliu la începerea utilizării BBC Microbit și / sau Editorului de blocuri online.
Publicul este încurajat să exploreze această resursă BBC Micorbit înainte de a trece la următorii pași.
BBC Microbit a fost conceput pentru a preda programarea utilizând o abordare foarte ușor de utilizat și, prin urmare, familiarizarea cu un alt limbaj de programare este plăcut, dar nu este necesar mai ales dacă veți folosi Microsoft Blocks Editor pentru a învăța programarea.
Cu toate acestea, nu am întâlnit încă un produs care să fie atât de ușor de început decât BBC Microbit, având în vedere că dețin și mă joc cu alte câteva platforme de programare pentru microcontrolere.
Pasul 2: Regulile jocului de ghicit
Regulile jocului sunt după cum urmează:
- La pornire, BIT se gândește la un număr și îl provoacă pe jucătorul uman să ghicească care este acel număr imprimând un mesaj pe panoul său LED și așteaptă un răspuns
- Jucătorul face o presupunere și apasă butonul stânga (A) de câte ori răspunde - Exemplu, dacă jucătorul a ghicit 5, butonul este apăsat de 5 ori
- Pentru a trimite răspunsul la BIT, jucătorul apasă o dată pe butonul Dreapta (B)!
- Dacă jucătorii presupun că are dreptate, atunci jucătorul înscrie un punct, dacă nu BIT obține un punct
- Dacă un jucător a ghicit un număr în afara intervalului, celălalt jucător marchează un punct - BIT afișează un X mare pe afișajul său LED și continuă să ghicească un număr nou și să repete provocarea; Exemplu: Dacă BIT v-a provocat să ghiciți un număr între 1 și 5 și ați ghicit 6 sau dacă ați ghicit ZERO (prin simpla apăsare a butonului B înainte de apăsarea butonului A), atunci runda respectivă este invalidată
- Provocarea-răspuns continuă până când unul dintre jucători înregistrează punctele maxime admise
Lansarea unui joc nou:
Pentru a începe oricând un joc nou, pur și simplu dați BIT un shake! Sau pur și simplu deconectați și reconectați alimentarea.
Pasul 3: Programul Blocuri: Variabile
Programul folosește câteva variabile denumite pentru a se potrivi funcțiilor lor enumerate mai jos. Aceste variabile pot fi create făcând clic pe fila Programare variabile din Editorul de blocuri
BIT_SCORE - Ține evidența punctelor obținute de BIT
bitGuessed - Această variabilă deține valoarea aleatorie ghicită de BIT
CHECK - când este setat la True, BIT verifică dacă jucătorii presupun că este egal cu BITs
GAME_RANGE - Acest număr limitează cât de mare poate ghici BIT sau un jucător
Exemplu: dacă este setat la 6, oricare dintre jucători poate ghici de la 1 la 6
MSG - Un șir care este modificat pentru a afișa diferite mesaje bazate pe contextul jocului
PLAYER_SCORE - ține evidența punctelor marcate de jucător
playerGuess - Numărul ghicit de jucător este înregistrat în această variabilă
NOTĂ
Prima variabilă numită element este o variabilă generală și implicită și poate fi ignorată
Pasul 4: Funcțiile
Ca parte a procesului de învățare și pentru o mai bună organizare, codul a fost organizat într-o serie de funcții care ar putea fi apelate sau invocate în programul principal. La fel ca variabile, funcțiile pot fi create și accesate făcând clic pe fila Advanced> Functions Programming.
Iată mai jos o scurtă descriere a funcțiilor:
announceWinner - Această funcție imprimă mesajul câștigător adresat jucătorului câștigător
doChallenge - Funcția pe care BIT o numește pentru a ghici un număr și a pune o provocare jucătorului
showBadGuess - Afișează un mesaj cu un X imens pe panoul LED dacă oricare dintre jucătorii ghiciți în afara intervalului permis
showLose - se numește dacă BIT câștigă o rundă de provocare asupra jucătorului
showMessage - prezintă un mesaj pentru a-l provoca pe jucător să ghicească un număr într-un interval stabilit
showWin - este apelat la momentul în care jucătorul câștigă runda de ghicire asupra BIT
Pasul 5: Startul programului și Shake Events & Event Handlers
„On start” și „on shake” sunt gestionare de evenimente care sunt apelate respectiv atunci când se întâmplă evenimentul „start” și „shake”. După cum se vede din codul Blocks, ceea ce se întâmplă atunci când se apelează aceste două manipulatoare de evenimente sunt aproape la fel ca în:
- Funcția showMessage () este apelată pentru a afișa mesajul când începe jocul
- Există o scurtă pauză de 650 de milisecunde după afișarea mesajului
- Se numește funcția doChallenge () în care BIT ghicește un număr și așteaptă ca jucătorul uman să trimită o presupunere
Vom acoperi cele două funcții în pasul următor.
Acestea fiind spuse, există diferențe fundamentale între gestionarele de evenimente „on start” și „on shake”:
- Gestionarul de evenimente „la pornire” rulează de fiecare dată când BIT este pornit - ca și în cazul deconectării și reconectării alimentării la BIT
- Anumite lucruri care trebuie să se întâmple o singură dată când programul pornește sunt definite în „pornire” și nicăieri altundeva în întregul program
- Un astfel de lucru este inițializarea variabilei GAME_RANGE - în acest caz, este inițializată la 6 ceea ce înseamnă că jucătorii pot ghici un număr între 1 și 6
- Deoarece „la început” este o funcție de bază BIT, nu este de mirare că este accesibil din fila Programare de bază a Editorului de blocuri
- Pe de altă parte, „on shake” este un handler de evenimente care este apelat ori de câte ori utilizatorul furnizează o intrare către BIT sub forma unui shake rapid
- Prin urmare, gestionarul de evenimente „on shake” poate fi găsit în fila Programare intrare a Editorului de blocuri
Pasul 6: Mesajul de pornire și funcțiile de provocare
Funcția ShowMessage () Startup Message este o funcție simplă care șterge paleta LED-urilor BIT cu o comandă de ecran clar și afișează un mesaj de defilare care îl provoacă pe jucător să ghicească un număr.
După cum se vede din blocul funcțional showMessage, câteva fragmente fixe de șir sunt atașate împreună variabilei GAME_RANGE pentru a afișa un mesaj simplu care spune:
Ghici 0 - 6!
Funcția doChallenge () este apelată la începutul fiecărei runde de provocare și, prin urmare, face următoarele, după cum se vede din blocul funcțional doChallenge:
- Inițializează variabila playerGuess la zero înainte de a accepta o nouă intrare de la jucătorul uman
- Inițializează variabila CHECK la fals - ceea ce înseamnă că runda este pe cale să înceapă și încă nu este timpul să comparați numerele ghicite de ambii jucători
- Apoi și cel mai semnificativ, BIT alege un număr aleatoriu în intervalul definit de GAME_RANGE și îl înregistrează în variabila bitGuessed
- În cele din urmă, paleta cu LED-uri este aprinsă cu un simbol semn de întrebare care cere jucătorului uman o intrare ca răspuns la provocarea BIT!
Notă
Dacă valoarea variabilă GAME_RANGE este modificată după cum sa discutat în pasul anterior, jocul dvs. poate arăta și acționa puțin diferit.
Funcția de asociere este o funcție de șir și poate fi accesată din fila Programare text a Editorului de blocuri
Pasul 7: Evenimentul Buton un clic - Răspunde la provocarea BITs
Odată ce semnul de întrebare mare apare pe ecranul cu LED-uri BIT, răspunsul la provocarea pentru jucătorul uman este de a face pur și simplu următoarele:
- Ghiciți la ce număr s-ar putea gândi BIT între 0 și 6
- Apăsați butonul A de câte ori este răspunsul dvs. - Exemplu dacă răspunsul dvs. este 3, apoi apăsați butonul A de 3 ori
Evident, apăsarea butonului este o intrare a utilizatorului și, prin urmare, gestionarul de evenimente „buton pornit” este accesibil prin intermediul filei de programare Intrare a editorului Blocuri. De fiecare dată când utilizatorul apasă butonul A, acest gestionar de evenimente face următoarele:
- Măriți valoarea variabilei playerGuess cu 1 atâta timp cât se încadrează în limita GAME_RANGE (6 în acest caz)
- Dacă jucătorul trimite 7 sau mai mult, presupunerea este invalidată și playerGuess este resetată din nou la zero, invalidând în esență presupunerea jucătorilor
Următoarea acțiune este de a trimite răspunsul la provocare, pe care îl vom parcurge în pasul următor.
Pasul 8: Butonul B Faceți clic pe eveniment - Trimiteți răspuns la provocarea BIT
Jucătorul uman trimite răspunsul la BIT apăsând o dată butonul B. Un număr de pași se întâmplă în butonul B de gestionare a evenimentului „la clic” imediat ce BIT primește răspunsul jucătorilor, așa cum este indicat de marcatorii de cod din imagine:
- Steagul CHECK este setat la True - un semnal pentru BIT pentru a compara presupunerea sa cu cea a jucătorilor
- Scorul se desfășoară numai dacă ambii jucători au ghicit numere mai mari decât Zero și în limita GAME_RANGE (de 6) și, dacă nu, funcția showBadGuess () este numită - jucătorul de ghici bun câștigă un punct, iar jucătorul de ghici rău pierde unul!
- Dacă jucătorii ghicesc potrivirile cu cele ale BIT-urilor, se numește funcția showWin () - jucătorul câștigă această rundă!
- Dacă nu, funcția showLose () este numită - BIT câștigă această rundă!
- O verificare este efectuată la sfârșitul fiecărei runde de funcția announceWinner () pentru a vedea dacă unul dintre cei doi jucători a câștigat marcând 3 puncte - dacă da, jocul este încheiat și câștigătorul final este anunțat și toate scorurile și mesajele sunt resetați
- BIT repornește jocul lansând o provocare apelând funcția doChallenge () și așteaptă ca jucătorul să răspundă și procesul se repetă
Vom discuta noile funcții în pașii următori.
Aștepta! Cum ghici ZERO?
- Dacă vă uitați la funcția de matematică random (), puteți vedea că valoarea inițială este setată la zero și nu poate fi modificată.
- BIT este, prin urmare, liber să ghicească un zero și să provoace jucătorul ca urmare a acestei limitări
- În mod similar, jucătorul uman poate trimite o presupunere zero făcând clic pe butonul B fără a face clic mai întâi pe butonul A!
- Dacă acest lucru este permis, atunci jucătorul uman nu trebuie să facă niciun efort pentru a juca și asta nu are sens!
- Prin urmare, această limitare a fost compensată de Bullet # 2. discutată mai sus
Pasul 9: Câștigarea / pierderea și restul funcțiilor
Toate aceste funcții sunt apelate de către butonul B care gestionează evenimentele „la clic”, așa cum se vede în pasul anterior.
Aceste funcții sunt destul de simple și până în acest moment ar trebui să vă familiarizați cu natura intuitivă și narativă a codului creat de o combinație de variabile numite în mod adecvat și atributele vizuale ale Editorului de blocuri.
- Funcția showWin () afișează un mesaj care indică faptul că jucătorul a câștigat această rundă de provocare și crește variabila PLAYER_SCORE cu 1
- În mod similar, funcția showLose () afișează faptul că jucătorul a făcut o presupunere greșită și acordă un punct BIT incrementând variabila BIT_SCORE cu 1
- Funcția showBadGuess () afișează un X mare pe ecran, indicând faptul că unul dintre jucători a făcut o presupunere proastă (fie 0, fie mai mare de 6) - jucătorul rău, în acest caz, pierde un punct, iar celălalt înregistrează un punct!
Și, în sfârșit, funcția announceWinner () îndeplinește sarcina de a anunța cine este marele câștigător după 3 runde de provocare / răspuns urmate de:
- Resetarea variabilelor de scor PLAYER_SCORE și BIT_SCORE
- Pauză scurtă și lansarea unui nou joc apelând funcția de pornire showMessage () discutată în pasul anterior (6) al acestui IBLE
În cele din urmă, treceți la simulator și cod!
Pasul 10: Simulatorul și codul
Codul rulează în simulatorul online situat aici
- Simulatorul este situat în colțul din stânga jos al paginii
- Alternativ, butonul Descărcare poate fi utilizat pentru a descărca codul în cazul în care aveți un BBC Microbit la îndemână
- Așa cum am menționat la începutul IBLE, nu aveți nevoie de un BBC Microbit pentru a construi codul în Blocks Editor sau pentru a simula și testa codul dvs., deși acest lucru nu funcționează pentru persoane curioase precum mine!
O notă pe butonul Editare
- Dacă ați observat, codul se află în domeniul public și există o modalitate de a-l edita folosind butonul Editați din partea dreaptă sus
- Cu toate acestea, aș solicita sincer să faceți o copie a acestui cod și să îl modificați pentru a se potrivi nevoilor dvs., astfel încât versiunea originală să fie păstrată în interesul acestui IBLE
Mulțumiri! Și codificare fericită !!!:-)
Recomandat:
Joc de memorie cu ajutorul unui microBit BBC: 7 pași
Joc Puzzle cu memorie Utilizarea unui BBC MicroBit: Dacă nu știți ce este un BBC MicroBit, este practic un dispozitiv foarte mic pe care îl puteți programa pentru a avea intrări și ieșiri. Cam ca un Arduino, dar mai concretizat. Ce mi-a plăcut cu adevărat la MicroBit a fost că are două intrări încorporate b
Un joc simplu de ghicit - Python + XBees + Arduino: 10 pași
Un joc simplu de ghicit - Python + XBees + Arduino: Iată cum funcționează jocul: aveți 4 încercări de a ghici o literă între „a” - „h” - > Ghiciți litera potrivită: Câștigați! ? - > Ghiciți litera greșită: Jocul s-a încheiat? - > Ghiciți orice alt personaj în afara „a” - „h”: Jocul terminat? Arduino vă va permite
Nike LED Swoosh! Acesta este un decor minunat pentru o cameră. Acesta este singurul proiect pe care toată lumea îl poate repeta: 5 pași
Nike LED Swoosh! Acesta este un decor minunat pentru o cameră. Acesta este singurul proiect pe care toată lumea îl poate repeta.: Instrumente -banda de măsurat-șurubelniță-fier de lipit-ferăstrău-ferăstrău-burghie electrică-șmirghel Furnizor -Banda LED (RGB) 5m-controler cu LED-Alimentare 12V 4A-cherestea 50-50-1500 2x-cherestea 20-20-3000 2x-placaj 500-1000mm-șuruburi (45mm) 150x-șuruburi (35mm) 30x-scr
Joc simplu de ghicit al numărului Python: 11 pași
Joc simplu de ghicire a numărului Python: În acest tutorial vom învăța cum să creăm un joc simplu de ghicire a numărului Python în aplicația Pycharm. Python este un limbaj de scriptare excelent atât pentru începători, cât și pentru experți. Stilul de codare din Python este ușor de citit și de urmat
Joc de ghicit Python: 9 pași
Python Guessing Game: Următoarele instrucțiuni oferă îndrumări pas cu pas cu privire la modul de scriere a unui program folosind modulul aleatoriu și crearea unui joc de ghicit care interacționează cu utilizatorul. Pentru a începe, ar trebui să aveți python instalat pe computer și, de asemenea, să opriți