Sisällysluettelo:

Mitä bitti ajattelee? Tee yksinkertainen arvauspeli BBC: n mikrobitillä !: 10 askelta
Mitä bitti ajattelee? Tee yksinkertainen arvauspeli BBC: n mikrobitillä !: 10 askelta

Video: Mitä bitti ajattelee? Tee yksinkertainen arvauspeli BBC: n mikrobitillä !: 10 askelta

Video: Mitä bitti ajattelee? Tee yksinkertainen arvauspeli BBC: n mikrobitillä !: 10 askelta
Video: Eino ja Aapeli - Mä Voisin Olla Se 2024, Marraskuu
Anonim
Mitä bitti ajattelee? Tee yksinkertainen arvauspeli BBC: n mikrobitillä!
Mitä bitti ajattelee? Tee yksinkertainen arvauspeli BBC: n mikrobitillä!

Otin pari BBC Microbitsia luettuaan niistä positiivisia arvosteluja useista online -artikkeleista.

Yrittäessäni tutustua BIT: ään pelasin pari tuntia Microsoft Blocks Editorin online -tilassa ja keksin yksinkertaisen arvauspelin.

Tässä IBLE: ssä puhumme pelin säännöistä ja selaamme eri koodilohkoihin koottuja toimintoja Blocks Editorissa.

Lopuksi innostunut yleisö voi siirtyä online -simulaattoriin ja antaa tämän yksinkertaisen pelin.

Aloitetaan.

Vaihe 1: Ennen aloittamista…

Ennen aloittamista…
Ennen aloittamista…
Ennen aloittamista…
Ennen aloittamista…

Laitteisto

BBC Microbit -levyyn on helppo tutustua. Tätä IBLEa varten sinun tarvitsee vain tietää, että se on pieni levy, jossa on 2 painikepainiketta, joukko pieniä LED-valoja ja mikro-USB-liitäntä, joka toimii virtalähteenä ja keinona ladata ohjelma taululle.

Pieniä LED -valoja voidaan ohjelmoida syttymään eri kuvioina.

Huomautus:

Et tarvitse fyysistä taulua tähän IBLEen! BBC Microbit -sivustolla on online -simulaattori, jonka avulla voit testata verkossa kehittämääsi koodia.

Ohjelmisto

Tämä IBLE ei mene yksityiskohtiin BBC Microbitin ja/tai Online Blocks Editorin käytön aloittamisesta.

Yleisöä kannustetaan tutustumaan tähän BBC Micorbit -resurssiin ennen jatkamista.

BBC Microbit on suunniteltu opettamaan ohjelmointia erittäin käyttäjäystävällisellä tavalla, joten toisen ohjelmointikielen tunteminen on mukavaa, mutta sitä ei vaadita varsinkin, jos aiot käyttää Microsoft Blocks Editoria ohjelmoinnin oppimiseen.

Siitä huolimatta en ole vielä tavannut tuotetta, joka on niin helppo aloittaa kuin BBC Microbit, koska omistan ja pelaan useiden muiden mikro-ohjainten ohjelmointialustoilla.

Vaihe 2: Arvauspelin säännöt

Arvauspelin säännöt
Arvauspelin säännöt

Pelisäännöt ovat seuraavat:

  1. Käynnistettäessä BIT ajattelee numeroa ja haastaa ihmisen pelaajan arvaamaan, mikä numero on, tulostamalla viestin LED -paneeliinsa ja odottaa vastausta
  2. Pelaaja arvaa ja painaa vasenta painiketta (A) niin monta kertaa kuin vastaus - Esimerkki, jos pelaaja arvasi 5, painiketta painetaan 5 kertaa
  3. Lähettäessään vastauksen BIT: ään pelaaja painaa oikeanpuoleista painiketta (B) kerran!
  4. Jos pelaajat arvaavat oikein, pelaaja saa pisteen, ellei BIT saa pisteen
  5. Jos yksi pelaaja arvasi alueen ulkopuolella olevan numeron, toinen pelaaja saa pisteen - BIT näyttää suuren X: n LED -näytöllä ja arvaa uuden numeron ja toistaa haasteen; Esimerkki: Jos BIT haastoi sinua arvaamaan luvun välillä 1–5 ja arvasit 6, tai jos arvasit nollan (yksinkertaisesti painamalla painiketta B ennen painikkeen A painamista), kyseinen kierros mitätöidään
  6. Haaste-vastaus jatkuu, kunnes yksi pelaajista saa suurimmat sallitut pisteet

Uuden pelin aloittaminen:

Aloita uusi peli milloin tahansa yksinkertaisesti ravista BIT! Tai yksinkertaisesti irrota ja kytke virta uudelleen.

Vaihe 3: Lohko -ohjelma: Muuttujat

Lohko -ohjelma: Muuttujat
Lohko -ohjelma: Muuttujat

Ohjelma käyttää muutamia muuttujia, jotka on nimetty vastaamaan alla lueteltuja toimintoja. Nämä muuttujat voidaan luoda napsauttamalla Lohkot -editorin Muuttujien ohjelmointi -välilehteä

BIT_SCORE - Seuraa BIT: n saamia pisteitä

bitGuessed - Tämä muuttuja sisältää BIT: n arvaaman satunnaisarvon

TARKISTA - kun asetuksena on Tosi, BIT tarkistaa, onko pelaajien arvaus sama kuin BIT -arvaus

GAME_RANGE - Tämä luku rajoittaa BIT: n tai pelaajan arvata

Esimerkki: Jos asetus on 6, kumpikin pelaaja voi arvata 1-6

MSG - Merkkijono, joka muutetaan näyttämään erilaisia viestejä pelin kontekstin perusteella

PLAYER_SCORE - seuraa pelaajan pisteitä

playerGuess - Pelaajan arvaama luku tallennetaan tähän muuttujaan

HUOMAUTUS

Ensimmäinen muuttuja nimeltä on yleinen ja oletusmuuttuja, ja se voidaan jättää huomiotta

Vaihe 4: Toiminnot

Toiminnot
Toiminnot

Osana oppimisprosessia ja parempaa organisointia varten koodi järjestettiin useisiin toimintoihin, joita voidaan kutsua tai käyttää pääohjelmassa. Aivan kuten muuttujia, toimintoja voidaan luoda ja käyttää napsauttamalla Lisäasetukset> Toimintojen ohjelmointi -välilehteä.

Tässä on lyhyt kuvaus toiminnoista:

ilmoita voittaja - Tämä toiminto tulostaa voittajaviestin, joka on osoitettu voittajalle

doChallenge - Toiminto, jota BIT kutsuu arvaamaan numeron ja asettamaan haasteen pelaajalle

showBadGuess - Näyttää viestin, jossa on valtava X LED -paneelissa, jos jompikumpi pelaajista arvasi sallitun alueen ulkopuolella

showLose - kutsutaan, jos BIT voittaa pelaajan haastekierroksen

showMessage - esittää viestin, joka haastaa pelaajan arvaamaan tietyn alueen sisällä olevan numeron

showWin - kutsutaan, kun pelaaja voittaa arvauskierroksen BIT: n yli

Vaihe 5: Ohjelman käynnistys ja ravistustapahtumat ja tapahtumakäsittelijät

Ohjelman käynnistys ja ravistustapahtumat ja tapahtumakäsittelijät
Ohjelman käynnistys ja ravistustapahtumat ja tapahtumakäsittelijät

"On start" ja "on shake" ovat tapahtumakäsittelijöitä, joita kutsutaan vastaavasti, kun "start" ja "shake" tapahtumat tapahtuvat. Kuten Blocks -koodista käy ilmi, mitä tapahtuu, kun nämä kaksi tapahtumakäsittelijää kutsutaan, ovat melkein samat kuin kohdassa:

  • ShowMessage () -toimintoa kutsutaan näyttämään viesti pelin alkaessa
  • Viestin näyttämisen jälkeen on lyhyt 650 millisekunnin tauko
  • Toimintoa doChallenge () kutsutaan, jossa BIT arvaa luvun ja odottaa, että ihmispelaaja lähettää arvauksen

Käsittelemme kaksi toimintoa seuraavassa vaiheessa.

Siitä huolimatta tapahtumien käsittelijöiden välillä on perustavanlaatuisia eroja käynnistyksen ja hämmennyksen välillä:

  1. "On start" -tapahtumakäsittelijä toimii aina, kun BIT käynnistetään - kuten virran katkaisemisessa ja uudelleen kytkemisessä BIT: ään
  2. Tietyt asiat, joiden on tapahduttava vain kerran ohjelman käynnistyksen yhteydessä, on määritetty käynnistyksen yhteydessä eikä missään muualla koko ohjelmassa
  3. Yksi tällainen asia on GAME_RANGE -muuttujan alustaminen - tässä tapauksessa se alustetaan arvoon 6, mikä tarkoittaa, että pelaajat voivat arvata numeron välillä 1 ja 6
  4. Koska käynnistys on BIT -perustoiminto, ei ole ihme, että sitä voi käyttää Blocks Editorin Basic -ohjelmointi -välilehdeltä
  5. "Shake" on toisaalta tapahtumakäsittelijä, joka kutsutaan aina, kun käyttäjä antaa syötteen BIT: lle nopean ravistuksen muodossa
  6. Siksi "on shake" -tapahtumakäsittelijä löytyy Blocks Editorin Input programming -välilehdestä

Vaihe 6: Käynnistysviesti- ja haastetoiminnot

Käynnistysviestit ja haastetoiminnot
Käynnistysviestit ja haastetoiminnot
Käynnistysviestit ja haastetoiminnot
Käynnistysviestit ja haastetoiminnot
Käynnistysviestit ja haastetoiminnot
Käynnistysviestit ja haastetoiminnot

ShowMessage () Startup Message -toiminto on yksinkertainen toiminto, joka tyhjentää BITs -LED -paletin selkeällä näytön komennolla ja näyttää vieritysviestin, joka haastaa pelaajan arvaamaan numeron.

Kuten showMessage -toimintolohkosta näkyy, pari kiinteää merkkijonopalaa liitetään yhteen GAME_RANGE -muuttujan kanssa yksinkertaisen viestin näyttämiseksi:

Arvaa 0-6!

DoChallenge () -funktiota kutsutaan jokaisen haastuskierroksen alussa, ja siksi se tekee seuraavan, kuten doChallenge -toimintolohkosta nähdään:

  1. Alustaa playerGuess -muuttujan nollaan ennen kuin hyväksyy uuden syötteen ihmispelaajalta
  2. Alustaa CHECK -muuttujan arvoksi false - mikä tarkoittaa, että kierros on alkamassa ja ei ole vielä aika verrata molempien pelaajien arvaamia lukuja
  3. Seuraavaksi ja mikä tärkeintä, BIT valitsee satunnaisluvun GAME_RANGE määrittämällä alueella ja tallentaa sen bitGuessed -muuttujaan
  4. Lopuksi LED -paletti syttyy kysymysmerkkisymbolilla, joka kehottaa ihmistä pelaamaan vastauksena BIT -haasteeseen!

Huomautus

Jos GAME_RANGE -muuttujan arvoa muutetaan edellisessä vaiheessa kuvatulla tavalla, peli saattaa näyttää ja toimia hieman eri tavalla.

Liittymistoiminto on merkkijonofunktio, ja siihen pääsee käsiksi Blocks Editorin Tekstin ohjelmointi -välilehdeltä

Vaihe 7: Napsauta -tapahtuma - Vastaa BIT -haasteeseen

Button a Click -tapahtuma - vastaa BITs -haasteeseen!
Button a Click -tapahtuma - vastaa BITs -haasteeseen!

Kun suuri kysymysmerkki näkyy BITs -LED -näytöllä, vastaus ihmisen pelaajan haasteeseen on yksinkertaisesti tehdä seuraava:

  1. Arvaa mikä numero BIT saattaa ajatella välillä 0 ja 6
  2. Paina painiketta A niin monta kertaa kuin vastaat - Esimerkki, jos vastauksesi on 3, ja paina sitten painiketta 3 kertaa

On selvää, että painikkeen painaminen on käyttäjän syöttö, ja siksi "päällä -painike" -tapahtumakäsittelijä on käytettävissä Lohkot -editorin Syöttöohjelmointi -välilehden kautta. Joka kerta, kun käyttäjä painaa painiketta A, tämä tapahtumakäsittelijä tekee seuraavat toimet:

  • Lisää playerGuess -muuttujan arvoa 1 niin kauan kuin se on GAME_RANGE -rajan sisällä (tässä tapauksessa 6)
  • Jos pelaaja lähettää 7 tai enemmän, arvaus mitätöidään ja playerGuess palautetaan nollaan, mikä mitätöi olennaisesti pelaajien arvauksen

Seuraava toimenpide on vastata haasteeseen, jonka käymme läpi seuraavassa vaiheessa.

Vaihe 8: Painike B Napsautapahtuma - Lähetä vastaus BIT -haasteeseen

Button B -tapahtuma - Lähetä vastaus BITs -haasteeseen!
Button B -tapahtuma - Lähetä vastaus BITs -haasteeseen!
Button B -tapahtuma - Lähetä vastaus BITs -haasteeseen!
Button B -tapahtuma - Lähetä vastaus BITs -haasteeseen!

Ihmispelaaja lähettää vastauksen BIT: ään painamalla painiketta B kerran. Napin B napsautustapahtumankäsittelijässä tapahtuu useita vaiheita heti, kun BIT saa pelaajien vastauksen kuvan koodimerkkien osoittamalla tavalla:

  1. TARKISTUS -lippu on asetettu arvoon Tosi - signaali BIT: lle vertaamaan arvaustaan pelaajien arvaukseen
  2. Pisteytys jatkuu vain, jos molemmat pelaajat ovat arvanneet suurempia lukuja kuin nolla ja GAME_RANGE (6) rajoissa, ja jos ei, showBadGuess () -funktiota kutsutaan - hyvä arvaaja voittaa pisteen ja huono arvaa pelaaja häviää yhden!
  3. Jos pelaajat arvaavat vastaavan BIT -arvoja, showWin () -toimintoa kutsutaan - pelaaja voittaa tämän kierroksen!
  4. Jos ei, showLose () -funktiota kutsutaan - BIT voittaa tämän kierroksen!
  5. IlmoitaWinner () -toiminto tarkistaa jokaisen kierroksen lopussa, onko toinen kahdesta pelaajasta voittanut 3 pistettä - jos näin on, peli päättyy ja lopullinen voittaja julkistetaan ja kaikki tulokset ja viestit nollaa
  6. BIT käynnistää pelin uudelleen antamalla haasteen soittamalla doChallenge () -toimintoon ja odottaa pelaajan vastaavan ja prosessi toistuu

Keskustelemme uusista toiminnoista seuraavissa vaiheissa.

Odota! Miten arvaat nollan?

  • Jos tarkastelet satunnaista () matemaattista funktiota, näet, että sen alkuarvo on nolla ja sitä ei voi muuttaa.
  • Tämän vuoksi BIT voi vapaasti arvata nollan ja haastaa pelaajan tämän rajoituksen seurauksena
  • Samoin ihmispelaaja voi lähettää nolla -arvauksen napsauttamalla painiketta B ilman, että painat ensin painiketta A!
  • Jos tämä on sallittua, ihmisen pelaajan ei tarvitse ponnistella pelatakseen, eikä siinä ole mitään järkeä!
  • Siksi tämä rajoitus on kompensoitu Luodilla #2. edellä

Vaihe 9: Voitto/häviäminen ja muut toiminnot

Voitto/tappio ja muut toiminnot
Voitto/tappio ja muut toiminnot
Voitto/häviäminen ja muut toiminnot
Voitto/häviäminen ja muut toiminnot
Voitto/häviäminen ja muut toiminnot
Voitto/häviäminen ja muut toiminnot

Kaikkia näitä toimintoja kutsutaan painikkeen B "click" tapahtumakäsittelijäksi, kuten edellisessä vaiheessa näkyy.

Nämä toiminnot ovat melko suoraviivaisia, ja tähän mennessä sinun pitäisi tuntea koodin intuitiivinen ja narratiivinen luonne, joka on luotu osuvasti nimettyjen muuttujien ja Blocks Editorin visuaalisten ominaisuuksien yhdistelmän avulla.

  1. ShowWin () -toiminto näyttää viestin, joka osoittaa, että pelaaja on voittanut tämän haastekierroksen, ja lisää PLAYER_SCORE -muuttujaa yhdellä
  2. Samoin showLose () -toiminto näyttää, että pelaaja arvasi väärin ja antaa pisteen BIT: lle lisäämällä BIT_SCORE -muuttujaa yhdellä
  3. ShowBadGuess () -toiminto näyttää suuren X: n näytöllä, mikä osoittaa, että yksi pelaajista arvasi väärin (joko 0 tai yli 6) - huono pelaaja menettää tässä tapauksessa pisteen ja toinen pisteen!

Ja lopuksi, ilmoita voittaja () -toiminto ilmoittaa, kuka on voittaja kolmen haasteen/vastauksen jälkeen ja sen jälkeen:

  • PLAYER_SCORE- ja BIT_SCORE -pisteet -muuttujien nollaus
  • Keskeytä hetkeksi ja aloita uusi peli soittamalla showMessage () käynnistystoiminto, josta keskusteltiin tämän IBLE: n edellisessä vaiheessa (6)

Lopuksi simulaattoriin ja koodiin!

Vaihe 10: Simulaattori ja koodi

Simulaattori ja koodi
Simulaattori ja koodi

Koodi on käynnissä online -simulaattorissa

  • Simulaattori sijaitsee sivun vasemmassa alakulmassa
  • Vaihtoehtoisesti voit ladata koodin Lataa -painikkeella, jos sinulla on BBC Microbit kätevä
  • Kuten IBLE: n alussa mainittiin, sinun ei tarvitse BBC Microbitia rakentaaksesi koodia Blocks Editorissa tai simuloidaksesi ja testataksesi koodiasi, vaikka se ei toimi uteliaille henkilöille, kuten minä!

Huomautus muokkauspainikkeesta

  • Jos olet havainnut, koodi on julkinen ja sitä voi muokata käyttämällä oikeassa yläkulmassa olevaa Muokkaa-painiketta
  • Pyydän kuitenkin vilpittömästi, että teet kopion tästä koodista ja muutat sitä tarpeidesi mukaan, jotta alkuperäinen versio säilytetään tämän IBLE: n edun mukaisesti

Kiitos! Ja hyvää koodausta !!!:-)

Suositeltava: