INHOUDSOPGAWE:

Wat dink die bietjie? Maak 'n eenvoudige raaisel met die BBC Microbit !: 10 stappe
Wat dink die bietjie? Maak 'n eenvoudige raaisel met die BBC Microbit !: 10 stappe

Video: Wat dink die bietjie? Maak 'n eenvoudige raaisel met die BBC Microbit !: 10 stappe

Video: Wat dink die bietjie? Maak 'n eenvoudige raaisel met die BBC Microbit !: 10 stappe
Video: Ja, korporaal! 2024, November
Anonim
Wat dink die bietjie? Maak 'n eenvoudige raaisel met die BBC Microbit!
Wat dink die bietjie? Maak 'n eenvoudige raaisel met die BBC Microbit!

Ek het 'n paar BBC Microbits opgetel nadat ek positiewe resensies daaroor gelees het in verskeie aanlynartikels.

In 'n poging om my vertroud te maak met die BIT, het ek 'n paar uur met die aanlyn Microsoft Blocks Editor rondgespeel en 'n eenvoudige raaisel gekry.

In hierdie IBLE praat ons oor die spelreëls en blaai deur die funksies wat in verskillende blokke kode in die Blocks Editor saamgestel is.

Uiteindelik kan 'n opgewonde gehoor na die aanlyn -simulator navigeer en hierdie eenvoudige speletjie 'n kans gee.

Laat ons begin.

Stap 1: Voordat u begin …

Voordat u begin …
Voordat u begin …
Voordat u begin …
Voordat u begin …

Die hardeware

Die BBC Microbit -bord is maklik om vertroud te raak met. Vir hierdie IBLE hoef u net te weet dat dit 'n klein bord met 2 drukknoppies, 'n verskeidenheid klein LED's en 'n mikro-USB-aansluiting is wat dien as 'n kragtoevoer en 'n manier om 'n program op die bord te laai.

Die verskeidenheid klein LED's kan in verskillende patrone geprogrammeer word.

Let wel:

U het nie die fisiese bord nodig vir hierdie IBLE nie! Die BBC Microbit -webwerf het 'n aanlyn -simulator om die kode wat u aanlyn ontwikkel, te toets.

Die sagteware

Hierdie IBLE gaan nie in detail oor die begin met die BBC Microbit en/of die Online Blocks Editor nie.

Die publiek word aangemoedig om hierdie BBC Micorbit -bron te ondersoek voordat hulle met die volgende stappe voortgaan.

BBC Microbit is ontwerp om programme te leer met behulp van 'n baie gebruikersvriendelike benadering en daarom is dit goed om vertroud te wees met 'n ander programmeertaal, maar dit is nie nodig nie, veral as u die Microsoft Blocks Editor gaan gebruik om programmering te leer.

Tog het ek nog nie 'n produk teëgekom wat so maklik is om mee te begin as die BBC Microbit nie, aangesien ek die eienaar is en speel met verskeie ander mikro-kontroleerder-programmeerplatforms.

Stap 2: Reëls van die raaisel

Reëls van die raaisel
Reëls van die raaisel

Die spelreëls is soos volg:

  1. By die aanskakel dink die BIT aan 'n nommer en daag die menslike speler uit om te raai wat die getal is deur 'n boodskap op sy LED -paneel te druk en wag hy op 'n antwoord
  2. Die speler raai en druk die linker drukknop (A) soveel keer as die antwoord - Byvoorbeeld, as die speler 5 raai, word die knoppie 5 keer gedruk
  3. Om die antwoord by die BIT in te dien, druk die speler een keer op die regter drukknop (B)!
  4. As die spelers raai dat dit reg is, dan behaal die speler 'n punt, indien nie, kry die BIT 'n punt
  5. As een speler 'n getal buite die reeks raai, behaal die ander speler 'n punt - die BIT vertoon 'n groot X op sy LED -skerm en gaan 'n nuwe nommer raai en herhaal die uitdaging; Voorbeeld: As die BIT u uitgedaag het om 'n getal tussen 1 en 5 te raai, en u het 6 geraai, of as u NUL geraai het (deur eenvoudig op B -knoppie te druk voordat u op A -knop gedruk het), word die ronde ongeldig
  6. Die uitdagingsreaksie duur voort totdat een van die spelers die maksimum toelaatbare punte behaal

Begin 'n nuwe speletjie:

Om te eniger tyd 'n nuwe speletjie te begin, gee die BIT 'n skud! Of ontkoppel en koppel die krag weer aan.

Stap 3: Die Blocks -program: veranderlikes

Die Blocks -program: veranderlikes
Die Blocks -program: veranderlikes

Die program gebruik 'n paar veranderlikes wat genoem word om by hul funksies hieronder te pas. Hierdie veranderlikes kan geskep word deur op die blad Veranderlikesprogrammering in die Blokke -redakteur te klik

BIT_SCORE - Hou die punte dop wat die BIT behaal het

bitGuessed - Hierdie veranderlike bevat die ewekansige waarde wat deur die BIT geraai word

CHECK - as dit op True gestel is, kyk die BIT of die spelers raai gelyk is aan die BITs raai

GAME_RANGE - Hierdie getal beperk hoe hoog die BIT of 'n speler kan raai

Voorbeeld: As dit op 6 gestel is, kan albei spelers van 1 tot 6 raai

MSG - 'n string wat verander word om verskillende boodskappe te vertoon op grond van die konteks van die spel

PLAYER_SCORE - hou die punte by wat die speler behaal het

playerGuess - Die getal wat die speler raai, word in hierdie veranderlike aangeteken

LET WEL

Die heel eerste veranderlike met die naam item is 'n algemene en standaard veranderlike en kan geïgnoreer word

Stap 4: Die funksies

Die funksies
Die funksies

As deel van die leerproses en vir 'n beter organisasie, is die kode georganiseer in 'n aantal funksies wat in die hoofprogram genoem of opgeroep kan word. Net soos veranderlikes, kan die funksies geskep en verkry word deur op die blad Gevorderd> Funksies programmering te klik.

Hieronder is 'n kort beskrywing van die funksies:

announceWinner - Hierdie funksie druk die wenboodskap wat aan die wenspeler gerig is, uit

doChallenge - Die funksie wat die BIT noem om 'n getal te raai en 'n uitdaging vir die speler te stel

showBadGuess - Toon 'n boodskap met 'n groot X op die LED -paneel as een van die spelers raai buite die toegelate reeks

showLose - word genoem as die BIT 'n uitdagingsronde oor die speler wen

showMessage - bied 'n boodskap aan om die speler uit te daag om 'n getal binne 'n vasgestelde reeks te raai

showWin - word geroep wanneer die speler die raai -ronde oor die BIT wen

Stap 5: Die program begin en die Shake Events & Event Handlers

Die opstart van die program en die Shake Events & Event Handlers
Die opstart van die program en die Shake Events & Event Handlers

Die "by begin" en "op skud" is gebeurtenishanteerders wat onderskeidelik gebel word wanneer die "begin" gebeurtenis en "skud" gebeurtenisse plaasvind. Soos gesien uit die Blocks -kode, is wat gebeur as hierdie twee gebeurtenishanteerders gebel word, byna dieselfde as in:

  • Die funksie showMessage () word opgeroep om die boodskap te vertoon wanneer die spel begin
  • Daar is 'n kort pouse van 650 milli-sekondes nadat die boodskap vertoon is
  • Die doChallenge () -funksie word genoem waarin die BIT 'n getal raai en wag totdat die menslike speler 'n raai indien

Ons behandel die twee funksies in die volgende stap.

Dit gesê, daar is fundamentele verskille tussen die "aan die begin" en "op skud" gebeurtenishanteerders:

  1. Die gebeurtenishanteerder "aan die begin" loop elke keer as die BIT begin word - soos om die krag aan die BIT te koppel en weer aan te sluit
  2. Sekere dinge wat slegs een keer moet gebeur wanneer die program begin, word gedefinieer in die 'aan die begin' en nêrens anders in die hele program nie
  3. Een so iets is om die GAME_RANGE -veranderlike te initialiseer - in hierdie geval word dit geïnitialiseer tot 6, wat beteken dat die spelers 'n getal tussen 1 en 6 kan raai
  4. Aangesien die 'aan die begin' 'n basiese BIT -funksie is, is dit geen wonder dat dit toeganklik is vanaf die blad Basiese programmering van die Blocks Editor
  5. Die 'on shake', aan die ander kant, is 'n gebeurtenishanterer wat gebel word wanneer die gebruiker 'n inset lewer in die BIT in die vorm van 'n vinnige skud
  6. Daarom kan die gebeurtenishanteerder "on shake" gevind word binne die Invoerprogrammering -oortjie van die Blocks Editor

Stap 6: Die opstartboodskap en uitdagingsfunksies

Die opstartboodskap en uitdagingsfunksies
Die opstartboodskap en uitdagingsfunksies
Die opstartboodskap en uitdagingsfunksies
Die opstartboodskap en uitdagingsfunksies
Die opstartboodskap en uitdagingsfunksies
Die opstartboodskap en uitdagingsfunksies

Die showMessage () opstartboodskapfunksie is 'n eenvoudige funksie wat die BITs LED -palet met 'n duidelike skermopdrag skoonmaak en 'n blaai -boodskap vertoon wat die speler uitdaag om 'n getal te raai.

Soos gesien in die funksieblok showMessage, word 'n paar vaste stukke tou aan die veranderlike GAME_RANGE saamgevoeg om 'n eenvoudige boodskap te vertoon wat sê:

Raai 0 - 6!

Die doChallenge () -funksie word aan die begin van elke uitdagingsronde genoem, en doen dus die volgende soos gesien uit die doChallenge -funksieblok:

  1. Initialiseer die playerGuess -veranderlike tot nul voordat 'n nuwe insette van die menslike speler aanvaar word
  2. Initialiseer die CHECK -veranderlike na vals - wat beteken dat die rondte op die punt staan om te begin en dit nog nie tyd is om die getalle wat deur albei spelers geraai is, te vergelyk nie
  3. Vervolgens kies die BIT 'n ewekansige getal binne die reeks wat deur GAME_RANGE gedefinieer is en teken dit op in die bitGuessed -veranderlike
  4. Uiteindelik word die LED -palet verlig met 'n vraagteken -simbool wat die menslike speler moet laat reageer op die BIT's -uitdaging!

Let op

As die veranderlike waarde GAME_RANGE verander word soos bespreek in die vorige stap, kan u spel 'n bietjie anders lyk en optree.

Die verbindingsfunksie is 'n stringfunksie en kan toeganklik wees vanaf die teksprogrammeer -oortjie van die Blocks Editor

Stap 7: The Button a Click -gebeurtenis - Reageer op die BITs -uitdaging

The Button a Click -geleentheid - Reageer op die BITs -uitdaging!
The Button a Click -geleentheid - Reageer op die BITs -uitdaging!

Sodra die groot vraagteken op die BITs LED -skerm verskyn, reageer dit op die uitdaging vir die menslike speler om eenvoudig die volgende te doen:

  1. Raai watter getal die BIT tussen 0 en 6 dink
  2. Druk die knoppie A soveel keer as wat u antwoord is - byvoorbeeld as u antwoord 3 is, druk dan knoppie A drie keer

Dit is duidelik dat die druk op die knoppie 'n gebruikersinvoer is en daarom is die gebeurtenishanteerder "op die knoppie" toeganklik via die invoerprogrammering -oortjie van die Blocks -redakteur. Elke keer as die gebruiker op knoppie A druk, doen hierdie gebeurtenishanteerder die volgende:

  • Verhoog die waarde van die playerGuess -veranderlike met 1 solank dit binne die GAME_RANGE -limiet is (6 in hierdie geval)
  • As die speler 7 of hoër indien, word die raaiskoot ongeldig en word die spelerGuess teruggestel na nul, wat die raai van die spelers in wese ongeldig maak

Die volgende aksie is om die antwoord op die uitdaging in te dien, waardeur ons in die volgende stap sal gaan.

Stap 8: Die knoppie B -klikgebeurtenis - Dien reaksie op die BITs -uitdaging

Die knoppie B -klikgeleentheid - Lewer reaksie op die BITs -uitdaging!
Die knoppie B -klikgeleentheid - Lewer reaksie op die BITs -uitdaging!
Die knoppie B -klikgeleentheid - Lewer reaksie op die BITs -uitdaging!
Die knoppie B -klikgeleentheid - Lewer reaksie op die BITs -uitdaging!

Die menslike speler stuur die antwoord aan die BIT deur een keer op knoppie B te druk. 'N Aantal stappe gebeur in die knoppie B "op klik" gebeurtenishanteerder sodra die BIT die spelers se antwoord ontvang, soos aangedui deur die kode merkers in die prent:

  1. Die CHECK -vlag is ingestel op True - 'n sein vir die BIT om sy raaiskoot te vergelyk met die van die spelers
  2. Die puntetelling vind slegs plaas as albei spelers getalle groter as Nul en binne die GAME_RANGE -limiet (van 6) raai, en indien nie, word die funksie showBadGuess () genoem - die speler met 'n goeie raai wen 'n punt, en die slegte raaiskoot verloor een!
  3. As die spelers raai ooreenstem met dié van die BITs, word die showWin () -funksie genoem - die speler wen hierdie ronde!
  4. Indien nie, word die showLose () -funksie genoem - die BIT wen hierdie ronde!
  5. Aan die einde van elke ronde word 'n tjek uitgevoer deur die aankondiging Winner () -funksie om te sien of een van die twee spelers gewen het deur 3 punte aan te teken - indien wel, is die wedstryd beëindig en word die finale wenner aangekondig en is alle tellings en boodskappe herstel
  6. Die BIT herbegin die spel deur 'n uitdaging aan te gaan deur die doChallenge () -funksie te bel en wag totdat die speler reageer en die proses herhaal

Ons sal die nuwe funksies in die volgende stappe bespreek.

Wag! Hoe raai jy NUL?

  • As u na die willekeurige () wiskundefunksie kyk, kan u sien dat die aanvanklike waarde daarvan op nul gestel is en nie verander kan word nie.
  • Die BIT kan dus 'n nul raai en die speler uitdaag as gevolg van hierdie beperking
  • Net so kan die menslike speler 'n nul -raaiskoot indien deur eenvoudig op knoppie B te klik sonder om eers op knoppie A te klik!
  • As dit toegelaat word, hoef die menslike speler nie moeite te doen om te speel nie, en dit maak geen sin nie!
  • Daarom is hierdie beperking deur Bullet #2 vergoed. hierbo bespreek

Stap 9: Die wen/verloor en res van die funksies

Die wen/verloor en res van die funksies
Die wen/verloor en res van die funksies
Die wen/verloor en res van die funksies
Die wen/verloor en res van die funksies
Die wen/verloor en res van die funksies
Die wen/verloor en res van die funksies

Al hierdie funksies word met die knoppie B "op klik" gebeurtenis hanteerder genoem, soos gesien in die vorige stap.

Hierdie funksies is redelik eenvoudig en teen hierdie tyd behoort u kennis te maak met die intuïtiewe en narratiewe aard van die kode wat geskep is deur 'n kombinasie van toepaslike veranderlikes en die visuele kenmerke van die Blocks Editor.

  1. Die funksie showWin () vertoon 'n boodskap wat aandui dat die speler hierdie uitdagingsronde gewen het en die PLAYER_SCORE -veranderlike met 1 verhoog
  2. Op dieselfde manier wys die showLose () -funksie dat die speler 'n slegte raaiskoot gemaak het en 'n punt aan die BIT toeken deur die BIT_SCORE -veranderlike met 1 te verhoog
  3. Die funksie showBadGuess () vertoon 'n groot X op die skerm wat aandui dat een van die spelers 'n slegte raaiskoot (van 0 of meer as 6) gemaak het - die slegte speler verloor in hierdie geval 'n punt, en die ander teken 'n punt!

En laastens voer die funksie van aankondigWinner () die taak aan om aan te kondig wie die groot wenner is na 3 rondes uitdaging/reaksie, gevolg deur:

  • Herstel van die PLAYER_SCORE en BIT_SCORE tellingveranderlikes
  • Kort stilstaan en 'n nuwe speletjie begin deur die showMessage () opstartfunksie wat in die vorige stap (6) van hierdie IBLE bespreek is, te bel

Laastens, na die simulator en die kode!

Stap 10: Die simulator en kode

Die simulator en kode
Die simulator en kode

Die kode werk in die aanlyn -simulator wat hier geleë is

  • Die simulator is links onder op die bladsy
  • Alternatiewelik kan die aflaai -knoppie gebruik word om die kode af te laai as u 'n BBC Microbit byderhand het
  • Soos aan die begin van die IBLE genoem, het u nie 'n BBC Microbit nodig om die kode in die Blocks Editor te bou of om u kode te simuleer en te toets nie, alhoewel dit nie vir nuuskierige mense soos ek werk nie!

'N Opmerking oor die wysigingsknoppie

  • As u dit waargeneem het, is die kode in die publieke domein en is daar 'n manier om dit te wysig met die knoppie Wysig regs bo
  • Ek sou egter opreg versoek dat u 'n afskrif van hierdie kode maak en dit aan u behoeftes aanpas sodat die oorspronklike weergawe in belang van hierdie IBLE behoue bly

Dankie! En gelukkige kodering !!!:-)

Aanbeveel: