Turinys:

Ką šiek tiek galvoja? Sukurkite paprastą atspėjimo žaidimą naudodami „BBC Microbit“: 10 žingsnių
Ką šiek tiek galvoja? Sukurkite paprastą atspėjimo žaidimą naudodami „BBC Microbit“: 10 žingsnių

Video: Ką šiek tiek galvoja? Sukurkite paprastą atspėjimo žaidimą naudodami „BBC Microbit“: 10 žingsnių

Video: Ką šiek tiek galvoja? Sukurkite paprastą atspėjimo žaidimą naudodami „BBC Microbit“: 10 žingsnių
Video: Высокая плотность 2022 2024, Liepa
Anonim
Ką šiek tiek galvoja? Sukurkite paprastą atspėjimo žaidimą naudodami „BBC Microbit“!
Ką šiek tiek galvoja? Sukurkite paprastą atspėjimo žaidimą naudodami „BBC Microbit“!

Aš pasiėmiau porą „BBC Microbits“, kai perskaičiau teigiamus atsiliepimus apie juos keliuose internetiniuose straipsniuose.

Bandydamas susipažinti su BIT, porą valandų žaidžiau su internetiniu „Microsoft Blocks Editor“ir sugalvojau paprastą atspėjimo žaidimą.

Šiame IBLE mes kalbėsime apie žaidimo taisykles ir naršysime funkcijas, surinktas skirtinguose kodo blokuose blokų redaktoriuje.

Galiausiai susijaudinusi publika gali pereiti prie internetinio simuliatoriaus ir išbandyti šį paprastą žaidimą.

Pradėkime.

1 žingsnis: Prieš pradėdami…

Prieš pradedant…
Prieš pradedant…
Prieš pradedant…
Prieš pradedant…

Aparatūra

Su „BBC Microbit“plokšte lengva susipažinti. Norėdami naudoti šį IBLE, jums tereikia žinoti, kad tai maža plokštė su 2 mygtukais, daugybė mažų šviesos diodų ir „micro-USB“lizdas, kuris veikia kaip maitinimo šaltinis ir priemonė įkelti programą į plokštę.

Mažų šviesos diodų masyvas gali būti užprogramuotas taip, kad užsidegtų skirtingais raštais.

Pastaba:

Šiam IBLE jums nereikia fizinės lentos! „BBC Microbit“svetainėje yra internetinis simuliatorius, skirtas patikrinti jūsų sukurtą kodą internete.

Programinė įranga

Šiame IBLE nėra išsamiai aprašyta, kaip pradėti naudotis „BBC Microbit“ir (arba) internetinių blokų redaktoriumi.

Prieš tęsdami kitus veiksmus, auditorija raginama ištirti šį „BBC Micorbit“šaltinį.

„BBC Microbit“buvo sukurtas taip, kad išmokytų programuoti labai patogiu metodu, todėl gerai mokėti naudotis kita programavimo kalba, tačiau to nereikia, ypač jei ketinate naudoti „Microsoft Blocks“redaktorių, kad išmoktumėte programuoti.

Nepaisant to, aš dar nesu susidūręs su produktu, kurį būtų taip lengva pradėti naudoti nei „BBC Microbit“, turint omenyje tai, kad turiu ir žaidžiu su keliomis kitomis mikrovaldiklių programavimo platformomis.

2 žingsnis: atspėjimo žaidimo taisyklės

Spėliojimo žaidimo taisyklės
Spėliojimo žaidimo taisyklės

Žaidimo taisyklės yra tokios:

  1. Įjungus, BIT sugalvoja skaičių ir ragina žaidėją atspėti, kas tai yra, atspausdindamas pranešimą savo LED skydelyje ir laukia atsakymo
  2. Žaidėjas spėja ir spaudžia kairįjį mygtuką (A) tiek kartų, kiek atsako - Pavyzdys, jei žaidėjas atspėjo 5, tada mygtukas paspaudžiamas 5 kartus
  3. Norėdami pateikti atsakymą į BIT, žaidėjas vieną kartą paspaudžia dešinįjį mygtuką (B)!
  4. Jei žaidėjai spėja teisingai, žaidėjas pelno tašką, jei ne BIT gauna tašką
  5. Jei vienas žaidėjas atspėjo skaičių už diapazono ribų, kitas žaidėjas gauna tašką - BIT LED ekrane rodo didelį X ir pradeda atspėti naują skaičių ir pakartoti iššūkį; Pavyzdys: Jei BIT uždavė jums atspėti skaičių nuo 1 iki 5, o jūs atspėjote 6, arba jei atspėjote nulį (tiesiog paspausdami mygtuką B prieš paspausdami mygtuką A), tai turas anuliuojamas
  6. Iššūkis-atsakymas tęsiasi tol, kol vienas iš žaidėjų surinks didžiausią leistiną tašką

Naujo žaidimo pradžia:

Jei norite bet kuriuo metu pradėti naują žaidimą, tiesiog pakratykite BIT! Arba tiesiog atjunkite ir vėl prijunkite maitinimą.

3 žingsnis: blokų programa: kintamieji

Blokų programa: kintamieji
Blokų programa: kintamieji

Programa naudoja keletą kintamųjų, pavadintų, kad atitiktų jų funkcijas, išvardytas žemiau. Šiuos kintamuosius galima sukurti spustelėjus skirtuką Kintamųjų programavimas blokų redaktoriuje

BIT_SCORE - Stebi BIT surinktus taškus

bitGuessed - Šis kintamasis turi atsitiktinę BIT atspėtą vertę

PATIKRINTI - kai nustatyta tiesa, BIT tikrina, ar žaidėjų spėjimas yra lygus BIT spėjimui

GAME_RANGE - šis skaičius riboja BIT ar žaidėjo spėjimo aukštį

Pavyzdys: jei nustatytas 6, bet kuris žaidėjas gali atspėti nuo 1 iki 6

MSG - eilutė, kuri keičiama, kad būtų rodomi skirtingi pranešimai, atsižvelgiant į žaidimo kontekstą

PLAYER_SCORE - stebi žaidėjo surinktus taškus

playerGuess - žaidėjo atspėtas skaičius įrašomas į šį kintamąjį

PASTABA

Pats pirmasis kintamasis, pavadintas elementu, yra bendras ir numatytasis kintamasis ir gali būti ignoruojamas

4 žingsnis: funkcijos

Funkcijos
Funkcijos

Kaip mokymosi proceso dalis ir geresnis organizavimas, kodas buvo suskirstytas į daugybę funkcijų, kurias galima iškviesti arba panaudoti pagrindinėje programoje. Funkcijas, kaip kintamuosius, galima sukurti ir pasiekti spustelėjus skirtuką Išplėstinė> Funkcijų programavimas.

Žemiau yra trumpas funkcijų aprašymas:

paskelbti nugalėtoją - ši funkcija išspausdina laimėtojui skirtą pranešimą apie laimėjimą

„doChallenge“- funkcija, kurią BIT ragina atspėti skaičių ir sukelti iššūkį žaidėjui

„showBadGuess“- LED skydelyje parodo pranešimą su didžiuliu X, jei kuris nors iš žaidėjų atspėjo už leistino diapazono ribų

showLose - vadinamas, jei BIT laimi iššūkį prieš žaidėją

showMessage - pateikia pranešimą, kuriuo žaidėjas raginamas atspėti skaičių nustatyto diapazono ribose

showWin - kviečiamas, kai žaidėjas laimi spėlionių raundą prieš BIT

5 veiksmas: programos paleidimas ir purtymo įvykių ir įvykių tvarkytojai

Programos paleidimas ir purtymo įvykių ir renginių tvarkytojai
Programos paleidimas ir purtymo įvykių ir renginių tvarkytojai

„Pradedant“ir „sukratant“yra įvykių tvarkytojai, kurie atitinkamai iškviečiami, kai įvyksta „pradžios“ir „purtymo“įvykiai. Kaip matyti iš blokų kodo, kas atsitinka, kai šaukiami šie du įvykių tvarkytojai, yra beveik tas pats, kas:

  • Funkcija showMessage () iškviečiama rodyti pranešimą, kai žaidimas prasideda
  • Po pranešimo rodymo yra trumpa 650 milisekundžių pertrauka
  • Kviečiama funkcija „doChallenge ()“, kurioje BIT atspėja skaičių ir laukia, kol žaidėjas pateiks spėjimą.

Kitame žingsnyje aptarsime dvi funkcijas.

Tai reiškia, kad esminiai skirtumai tarp įvykių „paleidimo“ir „sukratymo“:

  1. „On start“įvykių tvarkyklė veikia kiekvieną kartą, kai paleidžiamas BIT - kaip ir atjungiant bei vėl prijungiant maitinimą prie BIT
  2. Kai kurie dalykai, kurie turi įvykti tik vieną kartą paleidus programą, yra apibrėžti skiltyje „Pradėti“ir niekur kitur visoje programoje
  3. Vienas iš tokių dalykų yra kintamojo GAME_RANGE inicijavimas - šiuo atveju jis inicijuojamas iki 6, o tai reiškia, kad žaidėjai gali atspėti skaičių nuo 1 iki 6
  4. Kadangi „paleidžiant“yra pagrindinė BIT funkcija, nenuostabu, kad ją galima pasiekti iš „Blocks Editor“skirtuko „Pagrindinis programavimas“
  5. Kita vertus, „purtant“yra įvykių tvarkytojas, kuris iškviečiamas kiekvieną kartą, kai vartotojas įveda į BIT greitą purtymą.
  6. Todėl įvykių tvarkyklę „purtant“galima rasti blokų redaktoriaus įvesties programavimo skirtuke

6 veiksmas: paleidimo pranešimas ir iššūkio funkcijos

Paleidimo pranešimas ir iššūkių funkcijos
Paleidimo pranešimas ir iššūkių funkcijos
Paleidimo pranešimas ir iššūkių funkcijos
Paleidimo pranešimas ir iššūkių funkcijos
Paleidimo pranešimas ir iššūkių funkcijos
Paleidimo pranešimas ir iššūkių funkcijos

„ShowMessage“() paleidimo pranešimo funkcija yra paprasta funkcija, kuri išvalo BIT šviesos diodų paletę su aiškaus ekrano komanda ir parodo slenkantį pranešimą, raginantį žaidėją atspėti skaičių.

Kaip matyti iš „showMessage“funkcijų bloko, pora fiksuotų eilutės dalių pridedamos prie kintamojo GAME_RANGE, kad būtų parodytas paprastas pranešimas:

Spėk 0 - 6!

Funkcija „doChallenge“() iškviečiama kiekvieno iššūkio raundo pradžioje, todėl, kaip matyti iš „doChallenge“funkcijų bloko, atliekami šie veiksmai:

  1. Prieš priimdamas naują žaidėjo įvestį, inicijuoja kintamąjį „playerGuess“iki nulio
  2. Inicijuoja CHECK kintamąjį į klaidingą - tai reiškia, kad turas prasidės ir dar ne laikas lyginti abiejų žaidėjų atspėtus skaičius
  3. Kitas ir svarbiausias BIT pasirenka atsitiktinį skaičių GAME_RANGE apibrėžtame diapazone ir įrašo jį į kintamąjį bitGuessed
  4. Galiausiai, LED paletė užsidega klaustuko simboliu, raginančiu žmogaus žaidėją įvesti atsakymą į BIT iššūkį!

Pastaba

Jei GAME_RANGE kintamojo vertė bus pakeista, kaip aptarta ankstesniame žingsnyje, jūsų žaidimas gali atrodyti ir veikti šiek tiek kitaip.

Prisijungimo funkcija yra eilutės funkcija ir ją galima pasiekti iš blokų redaktoriaus skirtuko „Teksto programavimas“

7 žingsnis: mygtuko paspaudimo įvykis - atsakykite į BIT iššūkį

Įvykis mygtuku paspausti - atsakykite į BIT iššūkį!
Įvykis mygtuku paspausti - atsakykite į BIT iššūkį!

Kai BITs LED ekrane pasirodo didelis klaustukas, atsakymas į žmogaus žaidėjo iššūkį yra tiesiog atlikti šiuos veiksmus:

  1. Atspėk, kokį skaičių gali galvoti BIT tarp 0 ir 6
  2. Paspauskite mygtuką A tiek kartų, kiek atsakote - pavyzdys, jei jūsų atsakymas yra 3, tada paspauskite mygtuką A 3 kartus

Akivaizdu, kad mygtuko paspaudimas yra vartotojo įvestis, todėl įvykių tvarkyklė „įjungta“pasiekiama per blokų redaktoriaus įvesties programavimo skirtuką. Kaskart vartotojui paspaudus mygtuką A, šis įvykių tvarkytojas atlieka šiuos veiksmus:

  • Padidinkite kintamojo „playerGuess“vertę 1, jei jis neviršija GAME_RANGE ribos (šiuo atveju - 6)
  • Jei žaidėjas pateikia 7 ar daugiau, spėjimas negalioja ir „playerGuess“grąžinamas į nulį, iš esmės negaliojantys žaidėjų spėjimai

Kitas veiksmas yra atsakymo į iššūkį pateikimas, kurį aptarsime kitame žingsnyje.

8 žingsnis: mygtuko B paspaudimo įvykis - pateikite atsakymą į BIT iššūkį

Mygtuko B paspaudimo įvykis - pateikite atsakymą į BIT iššūkį!
Mygtuko B paspaudimo įvykis - pateikite atsakymą į BIT iššūkį!
Mygtuko B paspaudimo įvykis - pateikite atsakymą į BIT iššūkį!
Mygtuko B paspaudimo įvykis - pateikite atsakymą į BIT iššūkį!

Žaidėjas pateikia atsakymą į BIT, vieną kartą paspausdamas mygtuką B. Kai BIT gauna žaidėjų atsakymą, kaip nurodyta paveikslėlio kodų žymekliuose, B mygtuko įvykių tvarkytuvėje atliekami keli veiksmai:

  1. „CHECK“vėliava nustatyta į „True“- signalas, kad BIT galėtų palyginti savo spėjimą su žaidėjų spėjimu
  2. Taškai skaičiuojami tik tuo atveju, jei abu žaidėjai atspėjo skaičius, didesnius už nulį ir neviršijant GAME_RANGE ribos (iš 6), o jei ne, iškviečiama „showBadGuess“() funkcija - geras spėjantis žaidėjas laimi tašką, o blogas spėjantis žaidėjas praranda vieną!
  3. Jei žaidėjai spėja, kad jie atitinka BIT, funkcija „showWin“() vadinama - žaidėjas laimi šį turą!
  4. Jei ne, funkcija showLose () vadinama - BIT laimi šį turą!
  5. Kiekvieno raundo pabaigoje tikrinama funkcija „paskelbti nugalėtojas“(), ar vienas iš dviejų žaidėjų laimėjo pelnydamas 3 taškus - jei taip, žaidimas baigiamas ir paskelbiamas galutinis nugalėtojas bei visi rezultatai ir pranešimai atstatyti
  6. BIT iš naujo paleidžia žaidimą, paskelbdamas iššūkį iškviesdamas „doChallenge“() funkciją ir laukia, kol žaidėjas atsakys ir procesas kartosis

Kituose žingsniuose aptarsime naujas funkcijas.

Laukti! Kaip atspėti NULI?

  • Jei pažvelgsite į atsitiktinę () matematikos funkciją, pamatysite, kad jos pradinė vertė yra nulinė ir jos negalima pakeisti.
  • Todėl BIT gali laisvai atspėti nulį ir mesti iššūkį žaidėjui dėl šio apribojimo
  • Panašiai ir žaidėjas gali pateikti nulinį spėjimą tiesiog spustelėdamas mygtuką B, nepaspaudęs mygtuko A!
  • Jei tai leidžiama, žaidėjui nereikia dėti jokių pastangų ir tai neturi prasmės!
  • Todėl šį apribojimą kompensavo 2 kulka. aptartas aukščiau

9 žingsnis: laimėjimas/pralaimėjimas ir likusios funkcijos

Laimėjimas/pralaimėjimas ir likusios funkcijos
Laimėjimas/pralaimėjimas ir likusios funkcijos
Laimėjimas/pralaimėjimas ir likusios funkcijos
Laimėjimas/pralaimėjimas ir likusios funkcijos
Laimėjimas/pralaimėjimas ir likusios funkcijos
Laimėjimas/pralaimėjimas ir likusios funkcijos

Visos šios funkcijos vadinamos B mygtuko „paspaudimo“įvykių tvarkytoju, kaip parodyta ankstesniame žingsnyje.

Šios funkcijos yra gana paprastos ir iki to laiko jūs turėtumėte susipažinti su intuityviu ir pasakojamu kodo pobūdžiu, sukurtu derinant tinkamai įvardintus kintamuosius ir vaizdinius blokų redaktoriaus atributus.

  1. Funkcija showWin () rodo pranešimą, nurodantį, kad žaidėjas laimėjo šį iššūkio etapą, ir padidina kintamąjį PLAYER_SCORE 1
  2. Panašiai „showLose“() funkcija parodo, kad žaidėjas padarė klaidingą spėjimą ir suteikia tašką BIT, padidindamas kintamąjį „BIT_SCORE“1
  3. Funkcija showBadGuess () ekrane rodo didelį X, rodantį, kad vienas iš žaidėjų atspėjo blogai (0 arba daugiau nei 6) - blogas žaidėjas šiuo atveju praranda tašką, o kitas pelno tašką!

Galiausiai, funkcija „skelbti laimėtojas“() atlieka užduotį paskelbti, kas yra pagrindinis nugalėtojas, po 3 iššūkių/atsakymų etapų, po kurių:

  • PLAYER_SCORE ir BIT_SCORE balų kintamųjų nustatymas iš naujo
  • Trumpam pristabdyti ir pradėti naują žaidimą paskambinus „showMessage“() paleisties funkcijai, aptartai ankstesniame šio IBLE veiksme (6)

Pagaliau pereikite prie simuliatoriaus ir kodo!

10 veiksmas: simuliatorius ir kodas

Simuliatorius ir kodas
Simuliatorius ir kodas

Kodas veikia internetiniame simuliatoriuje, esančiame čia

  • Simuliatorius yra apatiniame kairiajame puslapio kampe
  • Taip pat galite atsisiųsti kodą, jei turite „BBC Microbit“
  • Kaip minėta IBLE pradžioje, jums nereikia „BBC Microbit“, kad sukurtumėte kodą blokų redaktoriuje arba imituotumėte ir išbandytumėte savo kodą, nors tai netinka smalsiems asmenims, tokiems kaip aš!

Pastaba apie redagavimo mygtuką

  • Jei pastebėjote, kodas yra viešai prieinamas ir yra būdas jį redaguoti naudojant mygtuką Redaguoti viršuje dešinėje
  • Tačiau nuoširdžiai prašau, kad padarytumėte šio kodo kopiją ir pakeistumėte ją, kad atitiktų jūsų poreikius, kad būtų išsaugota originali šio IBLE intereso versija.

Dėkoju! Ir laimingas kodavimas !!!:-)

Rekomenduojamas: