Obsah:

Čo je to Bit Thinking? Vytvorte si jednoduchú hádaciu hru s BBC Microbit!: 10 krokov
Čo je to Bit Thinking? Vytvorte si jednoduchú hádaciu hru s BBC Microbit!: 10 krokov

Video: Čo je to Bit Thinking? Vytvorte si jednoduchú hádaciu hru s BBC Microbit!: 10 krokov

Video: Čo je to Bit Thinking? Vytvorte si jednoduchú hádaciu hru s BBC Microbit!: 10 krokov
Video: BOOMER BEACH CHRISTMAS SUMMER STYLE LIVE 2024, November
Anonim
Čo je to Bit Thinking? Vytvorte si jednoduchú hádaciu hru s BBC Microbit!
Čo je to Bit Thinking? Vytvorte si jednoduchú hádaciu hru s BBC Microbit!

Po prečítaní pozitívnych recenzií o nich vo viacerých článkoch online som vzal do rúk pár mikrobitov BBC.

V snahe zoznámiť sa s BIT som sa niekoľko hodín hral s online editorom Microsoft Blocks a vymyslel som jednoduchú hru na hádanie.

V tomto IBLE budeme hovoriť o pravidlách hry a prechádzať funkciami zostavenými v rôznych blokoch kódu v editore blokov.

Nadšené publikum môže konečne prejsť na online simulátor a vyskúšať si túto jednoduchú hru.

Začnime.

Krok 1: Skôr ako začnete…

Skôr než začnete…
Skôr než začnete…
Skôr než začnete…
Skôr než začnete…

Hardvér

S doskou BBC Microbit sa ľahko zoznámite. K tomuto IBLE budete potrebovať iba vedieť, že je to malá doska s 2 tlačidlami, radou malých diód LED a zásuvkou micro-USB, ktorá slúži ako napájací zdroj a prostriedok na zavedenie programu na dosku..

Rad malých LED diód je možné naprogramovať tak, aby sa rozsvietili v rôznych vzoroch.

Poznámka:

Na tento IBLE nepotrebujete fyzickú dosku! Stránka BBC Microbit má online simulátor na testovanie kódu, ktorý vytvoríte online.

Softvér

Tento IBLE sa podrobne nezaoberá tým, ako začať s BBC Microbit a/alebo editorom online blokov.

Diváci sa vyzývajú, aby si prezreli tento zdroj BBC Micorbit a potom pokračovali k ďalším krokom.

Program BBC Microbit bol navrhnutý tak, aby vyučoval programovanie pomocou veľmi užívateľsky prívetivého prístupu, a preto je dobré ovládať iný programovací jazyk, nie je to však nevyhnutné, najmä ak sa na naučenie programovania chystáte použiť editor blokov Microsoft.

Napriek tomu som sa ešte nestretol s výrobkom, s ktorým je také ľahké začať ako s BBC Microbit, vzhľadom na to, že vlastním a hrám s niekoľkými ďalšími programovacími platformami pre mikroprocesory.

Krok 2: Pravidlá hry Guessing

Pravidlá hry hádania
Pravidlá hry hádania

Pravidlá hry sú nasledujúce:

  1. Po zapnutí BIT myslí na číslo a vyzýva ľudského hráča, aby uhádol, čo je toto číslo, vytlačením správy na svojom paneli LED a čaká na odpoveď.
  2. Hráč uhádne a stlačí ľavé tlačidlo (A) toľkokrát, koľkokrát je odpoveď - Príklad: Ak hráč uhádol 5, potom je tlačidlo stlačené 5 -krát.
  3. Ak chcete odoslať odpoveď na BIT, hráč raz stlačí pravé tlačidlo (B)!
  4. Ak je odhad hráčov správny, hráč získa bod, ak nie, bod získa BIT
  5. Ak jeden hráč uhádol číslo mimo rozsah, druhý hráč získa bod - BIT zobrazí na svojom LED displeji veľké X a pokračuje v hádaní nového čísla a opakovaní výzvy; Príklad: Ak vás BIT vyzval, aby ste uhádli číslo od 1 do 5, a uhádli ste 6, alebo ak ste uhádli NULU (jednoduchým stlačením tlačidla B pred stlačením tlačidla A), toto kolo sa zruší.
  6. Výzva-odpoveď pokračuje, kým jeden z hráčov nezíska maximálny povolený počet bodov

Začíname s novou hrou:

Ak chcete začať novú hru kedykoľvek, jednoducho BITom zatraste! Alebo jednoducho odpojte a znova zapojte napájanie.

Krok 3: Program blokov: premenné

Program blokov: premenné
Program blokov: premenné

Program používa niekoľko premenných pomenovaných tak, aby zodpovedali ich funkciám uvedeným nižšie. Tieto premenné je možné vytvoriť kliknutím na kartu Programovanie premenných v editore blokov

BIT_SCORE - Vedie o bodoch dosiahnutých BIT

bitGuessed - Táto premenná obsahuje náhodnú hodnotu uhádnutú BIT

KONTROLA - ak je nastavená na hodnotu True, BIT kontroluje, či sa odhad hráčov zhoduje s odhadom BIT

GAME_RANGE - Toto číslo obmedzuje, ako vysoko BIT alebo hráč dokáže uhádnuť

Príklad: Ak je nastavený na 6, každý z hráčov môže uhádnuť od 1 do 6

MSG - Reťazec, ktorý sa zmení tak, aby zobrazoval rôzne správy na základe kontextu hry

PLAYER_SCORE - sleduje body, ktoré hráč dosiahol

playerGuess - Do tejto premennej je zaznamenané číslo uhádnuté hráčom

POZNÁMKA

Prvá premenná s názvom item je všeobecná a predvolená premenná a je možné ju ignorovať

Krok 4: Funkcie

Funkcie
Funkcie

V rámci procesu učenia a kvôli lepšej organizácii bol kód usporiadaný do niekoľkých funkcií, ktoré bolo možné vyvolať alebo vyvolať v hlavnom programe. Rovnako ako premenné je možné funkcie vytvárať a pristupovať k nim kliknutím na kartu Rozšírené> Programovanie funkcií.

Nasleduje stručný popis funkcií:

nounceWinner - Táto funkcia vytlačí správu o víťazstve adresovanú víťaznému hráčovi

doChallenge - Funkcia, ktorú BIT volá, aby uhádol číslo a predstavoval pre hráča výzvu

showBadGuess - Zobrazí správu s veľkým X na paneli LED, ak ktorýkoľvek z hráčov uhádol mimo povoleného rozsahu

showLose - volá sa, ak BIT vyhrá nad hráčom výzvu

showMessage - predstavuje správu, ktorá má hráča vyzvať, aby uhádol číslo v stanovenom rozsahu

showWin - vyvolá sa, keď hráč vyhrá kolo hádania nad BITOM

Krok 5: Spustenie programu a udalosti Shake a obsluhy udalostí

Spustenie programu a udalosti Shake a obsluhy udalostí
Spustenie programu a udalosti Shake a obsluhy udalostí

Spúšťače a spúšťače sú obslužné rutiny udalostí, ktoré sa volajú vždy, keď nastanú udalosti „štart“a „otrasy“. Ako je zrejmé z kódu Blocks, čo sa stane, keď sa zavolajú tieto dve obsluhy udalostí, sú takmer rovnaké ako v:

  • Funkcia showMessage () sa volá na zobrazenie správy na začiatku hry
  • Po zobrazení správy nasleduje krátka pauza 650 miliónov sekúnd
  • Volá sa funkcia doChallenge (), v ktorej BIT uhádne číslo a čaká, kým ľudský hráč predloží odhad.

V nasledujúcom kroku sa budeme venovať dvom funkciám.

To znamená, že medzi obslužnými rutinami udalostí „na začiatku“a „na chvenie“existujú zásadné rozdiely:

  1. Obslužná rutina udalosti „pri štarte“sa spustí pri každom štarte BIT - ako pri odpojení a opätovnom pripojení napájania k BIT
  2. Niektoré veci, ktoré sa musia stať iba raz pri spustení programu, sú definované v „pri štarte“a nikde inde v celom programe.
  3. Jedna taká vec je inicializácia premennej GAME_RANGE - v tomto prípade je inicializovaná na 6, čo znamená, že hráči môžu uhádnuť číslo medzi 1 a 6.
  4. Pretože „na štarte“je základnou BIT funkciou, nie je divu, že je prístupný z karty Základné programovanie v editore blokov
  5. „On shake“na druhej strane je obsluha udalostí, ktorá sa volá vždy, keď používateľ poskytne vstup do BIT vo forme rýchleho pretrepania
  6. Obslužný program udalosti „on shake“sa preto nachádza na karte Programovanie vstupu v editore blokov

Krok 6: Úvodná správa a funkcie výzvy

Úvodná správa a funkcie výzvy
Úvodná správa a funkcie výzvy
Úvodná správa a funkcie výzvy
Úvodná správa a funkcie výzvy
Úvodná správa a funkcie výzvy
Úvodná správa a funkcie výzvy

Funkcia showMessage () Startup Message je jednoduchá funkcia, ktorá vyčistí paletu LED BITov pomocou príkazu jasnej obrazovky a zobrazí posúvaciu správu, ktorá hráča vyzve na uhádnutie čísla.

Ako je zrejmé z funkčného bloku showMessage, niekoľko pevných kúskov reťazca je spojených k premennej GAME_RANGE, aby sa zobrazila jednoduchá správa, ktorá hovorí:

Hádajte 0 - 6!

Funkcia doChallenge () sa volá na začiatku každého kola výzvy, a preto z funkčného bloku doChallenge robí nasledovné:

  1. Pred prijatím nového vstupu od ľudského hráča inicializuje premennú playerGuess na nulu
  2. Inicializuje premennú CHECK na false - to znamená, že kolo sa začína a nie je čas na porovnanie čísel uhádnutých oboma hráčmi
  3. Ďalej, a čo je najdôležitejšie, BIT vyberie náhodné číslo v rozsahu definovanom GAME_RANGE a zaznamená ho do premennej bitGuessed
  4. Nakoniec sa LED paleta rozsvieti symbolom otáznika, ktorý vyzve ľudského hráča na vstup v reakcii na výzvu BIT!

Poznámka

Ak sa zmení hodnota premennej GAME_RANGE, ako bolo popísané v predchádzajúcom kroku, vaša hra môže vyzerať a pôsobiť trochu inak.

Funkcia join je reťazcová funkcia a je prístupná z karty Programovanie textu v editore blokov

Krok 7: Udalosť kliknutie a tlačidlo - reagujte na výzvu BITs

Udalosť Button a Click - reagujte na výzvu BITs!
Udalosť Button a Click - reagujte na výzvu BITs!

Hneď ako sa na obrazovke BITs LED objaví veľký otáznik, v reakcii na výzvu ľudského hráča jednoducho urobte nasledujúce:

  1. Uhádnite, aké číslo by BIT mohol myslieť medzi 0 a 6
  2. Stlačte tlačidlo A toľkokrát, koľkokrát je vaša odpoveď - Príklad, ak je vaša odpoveď 3, potom trikrát stlačte tlačidlo A

Je zrejmé, že stlačenie tlačidla je vstupom používateľa, a preto je obsluha udalostí „on button“dostupná prostredníctvom karty Programovanie vstupu editora blokov. Zakaždým, keď používateľ stlačí tlačidlo A, táto obsluha udalostí vykoná nasledujúce:

  • Zvýšte hodnotu premennej playerGuess o 1, pokiaľ je v medziach GAME_RANGE (v tomto prípade 6)
  • Ak hráč predloží 7 a viac, odhad sa zneplatní a playerGuess sa vynuluje späť na nulu, čo v zásade znehodnotí hádanie hráčov.

Ďalšou akciou je odoslanie reakcie na výzvu, ktorou si v nasledujúcom kroku prejdeme.

Krok 8: Udalosť kliknutia na tlačidlo B - odošlite odpoveď na výzvu BIT

Udalosť kliknutia na tlačidlo B - odoslanie reakcie na výzvu BIT!
Udalosť kliknutia na tlačidlo B - odoslanie reakcie na výzvu BIT!
Udalosť kliknutia na tlačidlo B - odoslanie reakcie na výzvu BIT!
Udalosť kliknutia na tlačidlo B - odoslanie reakcie na výzvu BIT!

Ľudský hráč odošle odpoveď na BIT jedným stlačením tlačidla B. Hneď ako BIT prijme odpoveď hráčov, ako to naznačujú značky kódu na obrázku, v obsluhe udalosti tlačidla B „po kliknutí“dôjde k niekoľkým krokom:

  1. Príznak CHECK je nastavený na True - signál pre BIT na porovnanie jeho odhadu s odhadom hráčov
  2. Bodovanie pokračuje iba vtedy, ak obaja hráči uhádli čísla vyššie ako nula a v rámci limitu GAME_RANGE (6), a ak nie, nazýva sa funkcia showBadGuess () - hráč s dobrým odhadom získava bod a hráč so zlým odhadom jeden stratí!
  3. Ak sa hráči domnievajú, že sa zhodujú s BIT, funkcia showWin () sa nazýva - hráč vyhráva toto kolo!
  4. Ak nie, nazýva sa funkcia showLose () - BIT vyhráva toto kolo!
  5. Na konci každého kola sa vykoná kontrola pomocou funkcienounceWinner (), aby sa zistilo, či jeden z dvoch hráčov vyhral získaním 3 bodov - ak áno, hra sa skončí a oznámi sa konečný víťaz a všetky skóre a správy resetovať
  6. BIT reštartuje hru vydaním výzvy volaním na funkciu doChallenge () a čaká, kým hráč zareaguje a postup sa zopakuje

O nových funkciách budeme diskutovať v ďalších krokoch.

Počkaj! Ako uhádnete NULU?

  • Ak sa pozriete na náhodnú () matematickú funkciu, vidíte, že jej počiatočná hodnota je nastavená na nulu a nemožno ju zmeniť.
  • BIT teda môže v dôsledku tohto obmedzenia uhádnuť nulu a vyzvať hráča
  • Podobne môže ľudský hráč odoslať nulový odhad jednoduchým kliknutím na tlačidlo B bez toho, aby najskôr klikol na tlačidlo A!
  • Ak je to dovolené, potom ľudský hráč nemusí vynaložiť žiadne úsilie na hranie a to nedáva zmysel!
  • Toto obmedzenie bolo preto kompenzované odrážkou č. 2. diskutované vyššie

Krok 9: Výhra/prehra a ostatné funkcie

Výhra/prehra a ostatné funkcie
Výhra/prehra a ostatné funkcie
Výhra/prehra a ostatné funkcie
Výhra/prehra a ostatné funkcie
Výhra/prehra a ostatné funkcie
Výhra/prehra a ostatné funkcie

Všetky tieto funkcie sa nazývajú obslužným programom udalosti „B pri kliknutí“tlačidla B, ako je to vidieť v predchádzajúcom kroku.

Tieto funkcie sú celkom jednoduché a v tejto dobe by ste sa mali zoznámiť s intuitívnou a naratívnou povahou kódu vytvoreného kombináciou vhodne pomenovaných premenných a vizuálnych atribútov editora blokov.

  1. Funkcia showWin () zobrazuje správu, ktorá naznačuje, že hráč vyhral toto kolo výzvy, a zvýši premennú PLAYER_SCORE o 1.
  2. Podobne funkcia showLose () zobrazuje hráča, ktorý urobil zlý odhad, a udeľuje bod BIT -u zvýšením premennej BIT_SCORE o 1.
  3. Funkcia showBadGuess () zobrazuje na obrazovke veľké X, čo naznačuje, že jeden z hráčov zle uhádol (buď 0 alebo viac ako 6) - zlý hráč v tomto prípade stráca bod a druhý získava bod!

A nakoniec, funkcianounceWinner () plní úlohu oznámiť, kto je hlavným víťazom, po 3 kolách výzvy/reakcie, po ktorých nasleduje:

  • Resetovanie premenných skóre PLAYER_SCORE a BIT_SCORE
  • Krátke pozastavenie a spustenie novej hry zavolaním spúšťacej funkcie showMessage () popísanej v predchádzajúcom kroku (6) tohto IBLE

Nakoniec k simulátoru a kódu!

Krok 10: Simulátor a kód

Simulátor a kód
Simulátor a kód

Kód beží v online simulátore, ktorý sa nachádza tu

  • Simulátor sa nachádza v ľavej dolnej časti stránky
  • Alternatívne môžete tlačidlo Stiahnuť použiť na stiahnutie kódu v prípade, že máte poruke BBC Microbit
  • Ako už bolo spomenuté na začiatku IBLE, na vytváranie kódu v editore blokov ani na simuláciu a testovanie kódu nepotrebujete BBC Microbit, aj keď to nefunguje pre zvedavých jednotlivcov, ako som ja!

Poznámka k tlačidlu Upraviť

  • Ak ste si všimli, kód je verejne dostupný a existuje spôsob, ako ho upraviť pomocou tlačidla Upraviť vpravo hore
  • Úprimne vás však žiadam, aby ste si urobili kópiu tohto kódu a zmenili ho tak, aby vyhovoval vašim potrebám, aby bola v záujme tohto IBLE zachovaná pôvodná verzia.

Vďaka! A šťastné kódovanie !!!:-)

Odporúča: