Talaan ng mga Nilalaman:

Ano ang Pag-iisip ng Bit? Gumawa ng isang Simpleng Laro ng Hulaan Sa BBC Microbit !: 10 Hakbang
Ano ang Pag-iisip ng Bit? Gumawa ng isang Simpleng Laro ng Hulaan Sa BBC Microbit !: 10 Hakbang

Video: Ano ang Pag-iisip ng Bit? Gumawa ng isang Simpleng Laro ng Hulaan Sa BBC Microbit !: 10 Hakbang

Video: Ano ang Pag-iisip ng Bit? Gumawa ng isang Simpleng Laro ng Hulaan Sa BBC Microbit !: 10 Hakbang
Video: ✨A Will Eternal EP 01 - 106 Full Version [MULTI SUB] 2024, Hulyo
Anonim
Ano ang Pag-iisip ng Bit? Gumawa ng isang Simpleng Hulaan Game Sa BBC Microbit!
Ano ang Pag-iisip ng Bit? Gumawa ng isang Simpleng Hulaan Game Sa BBC Microbit!

Kinuha ko ang isang pares ng BBC Microbits pagkatapos basahin ang positibong pagsusuri tungkol sa kanila sa maraming mga online na artikulo.

Sa isang pagtatangka na pamilyar ang aking sarili sa BIT, naglaro ako sa online na Microsoft Blocks Editor sa loob ng ilang oras at nakagawa ako ng isang simpleng laro sa paghula.

Sa IBLE na ito ay pag-uusapan natin ang tungkol sa mga patakaran ng laro at mag-navigate sa mga pag-andar na binuo sa iba't ibang mga bloke ng code sa Blocks Editor.

Sa wakas, ang nasasabik na madla ay maaaring mag-navigate sa online simulator at bigyan ang simpleng laro na ito.

Magsimula na tayo.

Hakbang 1: Bago Magsimula…

Bago Magsimula…
Bago Magsimula…
Bago Magsimula…
Bago Magsimula…

Ang Hardware

Ang BBC Microbit board ay madaling pamilyar sa iyong sarili. Para sa IBLE na ito, ang kakailanganin mong malaman ay ito ay isang maliit na board na may 2 push button, isang hanay ng mga maliliit na LED, at isang micro-USB socket na gumaganap bilang power supply at isang paraan upang mai-load ang isang programa sa board.

Ang hanay ng mga maliliit na LED ay maaaring mai-program upang magaan sa iba't ibang mga pattern.

Tandaan:

Hindi mo kailangan ang pisikal na board para sa IBLE na ito! Ang site ng BBC Microbit ay may isang online simulator upang subukan ang code na binuo mo sa online.

Ang software

Ang IBLE na ito ay hindi detalyado sa pagsisimula sa BBC Microbit at / o sa Online Blocks Editor.

Hinihimok ang madla na galugarin ang mapagkukunang ito ng BBC Micorbit bago magpatuloy sa mga susunod na hakbang.

Ang BBC Microbit ay dinisenyo upang magturo ng programa gamit ang isang napaka-user-friendly na diskarte at samakatuwid ang pamilyar sa isa pang wika ng programa ay isang magandang mayroon, ngunit hindi kinakailangan lalo na kung gagamitin mo ang Microsoft Blocks Editor upang malaman ang programa.

Gayunpaman, hindi ko pa nakasalamuha ang isang produkto na napakadaling magsimula kaysa sa BBC Microbit, na ibinigay na pagmamay-ari ko at nakikipaglaro sa maraming iba pang mga platform ng programa ng micro-controller.

Hakbang 2: Mga Panuntunan ng Hulaan na Laro

Mga Panuntunan ng Hulaan na Laro
Mga Panuntunan ng Hulaan na Laro

Ang mga patakaran ng laro ay ang mga sumusunod:

  1. Sa pagpapagana, ang BIT ay nag-iisip ng isang numero at hinahamon ang manlalaro na hulaan kung ano ang bilang na iyon sa pamamagitan ng pag-print ng isang mensahe sa LED panel nito, at naghihintay ng isang sagot
  2. Gumagawa ang hula ng manlalaro at itinulak ang Kaliwang Push Button (A) nang maraming beses bilang sagot - Halimbawa, kung nahulaan ng 5 ang manlalaro, pagkatapos ay ang pindutan ay naitulak ng 5 beses
  3. Upang isumite ang sagot sa BIT, ang manlalaro ay itinutulak ang Right Push Button (B) nang isang beses!
  4. Kung tama ang hula ng mga manlalaro, ang puntos ng manlalaro ay isang puntos, kung hindi ang BIT ay nakakakuha ng isang punto
  5. Kung nahulaan ng isang manlalaro ang isang numero sa labas ng saklaw, ang iba pang mga manlalaro ay nakapuntos ng isang puntos - ang BIT ay nagpapakita ng isang malaking X sa 'LED display at nagpapatuloy upang hulaan ang isang bagong numero at ulitin ang hamon; Halimbawa: Kung hinamon ka ng BIT na hulaan ang isang numero sa pagitan ng 1 at 5, at nahulaan mo ang 6, o kung nahulaan mo ang ZERO (sa pamamagitan lamang ng pagtulak sa Button B bago itulak ang Button A), pagkatapos ay hindi wasto ang pag-ikot na iyon
  6. Ang hamon-tugon ay nagpapatuloy hanggang sa isa sa mga manlalaro puntos ang maximum na pinahihintulutang puntos

Pagsisimula ng isang Bagong Laro:

Upang magsimula ng isang bagong laro anumang oras, bigyan lamang ang pag-iling ng BIT! O, idiskonekta lamang at ikonekta muli ang lakas.

Hakbang 3: Ang Programa ng Mga Bloke: Mga variable

Ang Programa ng Mga Block: Mga variable
Ang Programa ng Mga Block: Mga variable

Gumagamit ang programa ng ilang mga variable na pinangalanan upang maitugma ang kanilang mga pagpapaandar na nakalista sa ibaba. Ang mga variable na ito ay maaaring malikha sa pamamagitan ng pag-click sa tab na Programable ng Mga Variable sa Blocks Editor

BIT_SCORE - Sinusubaybayan ang mga puntos na nakuha ng BIT

bitGuessed - Ang variable na ito ay humahawak sa random na halaga na nahulaan ng BIT

Suriin - kapag itinakda sa Totoo, susuriin ng BIT kung hulaan ng mga manlalaro ay katumbas ng hula ng BITs

GAME_RANGE - Nililimitahan ng bilang na ito kung gaano kataas ang mahuhulaan ng BIT o ng isang manlalaro

Halimbawa: Kung nakatakda sa 6, maaaring hulaan ng alinman sa mga manlalaro mula 1 hanggang 6

MSG - Isang string na binago upang maipakita ang iba't ibang mga mensahe batay sa konteksto ng laro

PLAYER_SCORE - sinusubaybayan ang mga puntos na naiskor ng manlalaro

playerGuess - Ang bilang na nahulaan ng manlalaro ay naitala sa variable na ito

TANDAAN

Ang pinakaunang variable na pinangalanang item ay isang pangkalahatan at default na variable at maaaring balewalain

Hakbang 4: Ang Mga Pag-andar

Ang Mga Pag-andar
Ang Mga Pag-andar

Bilang bahagi ng proseso ng pag-aaral at para sa mas mahusay na organisasyon, ang code ay naayos sa isang bilang ng mga pag-andar na maaaring tawagan o maipatawag sa pangunahing programa. Tulad ng mga variable, ang mga function ay maaaring malikha at ma-access sa pamamagitan ng pag-click sa tab na Advanced> Function Programming.

Narito sa ibaba ang isang maikling paglalarawan ng mga pag-andar:

announceWinner - Ang pagpapaandar na ito ay naglilimbag ng Panalong mensahe na nakatuon sa nanalong manlalaro

doChallenge - Ang pagpapaandar na tinatawagan ng BIT upang hulaan ang isang numero at magpose ng hamon sa manlalaro

showBadGuess - Nagpapakita ng isang mensahe na may isang malaking X sa LED panel kung alinman sa mga manlalaro ay nahulaan sa labas ng saklaw na pinapayagan

showLose - ay tinatawag kung ang BIT ay nanalo ng isang pag-ikot ng hamon sa player

showMessage - nagtatanghal ng isang mensahe upang hamunin ang player na hulaan ang isang numero sa loob ng isang hanay ng hanay

showWin - ay tinawag kapag nanalo ang manlalaro ng hula sa pag-ikot sa BIT

Hakbang 5: Ang Pagsisimula ng Programa at ang Mga Kaganapan sa Pag-iling at Mga Tagapangasiwa ng Kaganapan

Ang Startup ng Programa at ang Mga Kaganapan sa Pag-iling at Mga Tagapangasiwa ng Kaganapan
Ang Startup ng Programa at ang Mga Kaganapan sa Pag-iling at Mga Tagapangasiwa ng Kaganapan

Ang "on start" at "on shake" ay mga handler ng kaganapan na tinawag ayon sa pagkakabanggit kapag nangyari ang "start" event at "shake" na mga kaganapan. Tulad ng nakikita mula sa Blocks code, kung ano ang mangyayari kapag tinawag ang dalawang handler ng kaganapan na halos kapareho ng sa:

  • Ang function na showMessage () ay tinawag upang ipakita ang mensahe kapag nagsimula ang laro
  • Mayroong isang maikling pag-pause ng 650 milli-segundo matapos ipakita ang mensahe
  • Ang pagpapaandar na doChallenge () ay tinawag kung saan hulaan ng BIT ang isang numero at naghihintay para sa manlalaro na magsumite ng hula

Saklawin namin ang dalawang pag-andar sa susunod na hakbang.

Sinabi nito, may mga pangunahing pagkakaiba sa pagitan ng "sa pagsisimula" at "sa pag-iling" na mga handler ng kaganapan:

  1. Tumatakbo ang handler ng "on start" na kaganapan sa tuwing nagsisimula ang BIT - tulad ng pagdidiskonekta at muling pagkonekta ng lakas sa BIT
  2. Ang ilang mga bagay na dapat mangyari nang isang beses lamang kapag nagsimula ang programa ay tinukoy sa "sa pagsisimula" at hindi saanman sa buong programa
  3. Ang isang ganoong bagay ay pinasisimulan ang variable ng GAME_RANGE - sa kasong ito, pinasimulan ito sa 6 na nangangahulugang hulaan ng mga manlalaro ang isang numero sa pagitan ng 1 at 6
  4. Tulad ng "sa pagsisimula" ay isang pangunahing pagpapaandar ng BIT, hindi nakakagulat na naa-access ito mula sa Pangunahing programa na tab ng Blocks Editor
  5. Ang "on shake" sa kabilang banda ay isang handler ng kaganapan na tinatawag tuwing nagbibigay ang user ng isang input sa BIT sa anyo ng isang mabilis na pag-iling
  6. Samakatuwid, ang tagapamahala ng kaganapan na "on shake" ay matatagpuan sa loob ng tab na Input na programa ng Blocks Editor

Hakbang 6: Ang Startup Mensahe at Mga Pag-andar ng Hamon

Ang Startup Mensahe at Mga Pag-andar ng Hamon
Ang Startup Mensahe at Mga Pag-andar ng Hamon
Ang Startup Mensahe at Mga Pag-andar ng Hamon
Ang Startup Mensahe at Mga Pag-andar ng Hamon
Ang Startup Mensahe at Mga Pag-andar ng Hamon
Ang Startup Mensahe at Mga Pag-andar ng Hamon

Ang pagpapaandar ng showMessage () Startup Mensahe ay isang simpleng pag-andar na nililimas ang BITs LED palette na may isang malinaw na utos ng screen at ipinapakita ang isang mensahe sa pag-scroll na hinahamon ang manlalaro na hulaan ang isang numero.

Tulad ng nakikita mula sa block ng pag-andar ng showMessage, ang isang pares ng mga nakapirming piraso ng string ay naidugtong na magkasama sa variable na GAME_RANGE upang maipakita ang isang simpleng mensahe na nagsasabing:

Hulaan 0 - 6!

Ang pagpapaandar na doChallenge () ay tinatawag sa simula ng bawat pag-ikot ng hamon, at samakatuwid ang mga sumusunod ay nakikita mula sa doChallenge function block:

  1. Pinasimulan ang variable ng playerGuess sa zero bago tanggapin ang isang bagong input mula sa manlalaro
  2. Pinasimulan ang variable ng CHECK sa false - nangangahulugang magsisimula na ang pag-ikot at hindi pa oras upang ihambing ang mga bilang na nahulaan ng parehong mga manlalaro
  3. Susunod, at pinakamahalaga, pumili ang BIT ng isang random na numero sa loob ng saklaw na tinukoy ng GAME_RANGE at itinatala ito sa variable na bitGuessed
  4. Sa wakas, ang LED palette ay naiilawan ng isang simbolo ng tandang pananong na humihikayat sa manlalaro para sa isang input bilang tugon sa hamon ng BITs!

Tandaan

Kung ang halaga ng variable na GAME_RANGE ay binago tulad ng tinalakay sa nakaraang hakbang, maaaring magkakaiba ang hitsura at pagkilos ng iyong laro.

Ang function na sumali ay isang pag-andar ng string at maaaring ma-access mula sa tab na programa ng Text ng Blocks Editor

Hakbang 7: Ang Button na isang Kaganapan sa Pag-click - Tumugon sa Hamon ng BITs

Ang Button isang Kaganapan sa Pag-click - Tumugon sa BITs Hamon!
Ang Button isang Kaganapan sa Pag-click - Tumugon sa BITs Hamon!

Kapag lumitaw ang malaking marka ng tanong sa screen ng BITs LED, ang pagtugon sa hamon para sa manlalaro ay gawin lamang ang sumusunod:

  1. Hulaan kung anong bilang ang maaaring iniisip ng BIT sa pagitan ng 0 at 6
  2. Pindutin ang Button A ng maraming beses hangga't ang iyong sagot ay - Halimbawa kung ang iyong sagot ay 3, pagkatapos ay pindutin ang Button A 3x beses

Malinaw na, ang pagpindot sa pindutan ay isang input ng gumagamit at samakatuwid ang "sa pindutan" na handler ng kaganapan ay maa-access sa pamamagitan ng tab na Input na programa ng editor ng Mga Block. Sa bawat oras, pinindot ng gumagamit ang Button A, ginagawa ng handler ng kaganapan ang sumusunod:

  • Palakihin ang halaga ng variable ng playerGuess ng 1 hangga't nasa loob ng limitasyong GAME_RANGE (6 sa kasong ito)
  • Kung ang manlalaro ay nagsumite ng 7 o mas mataas, ang hula ay hindi wasto at ang playerGuess ay nai-reset pabalik sa Zero, mahalagang pinawawalang-bisa ang hula ng mga manlalaro

Ang susunod na aksyon ay upang isumite ang tugon sa hamon, na kung saan ay susundan namin sa susunod na hakbang.

Hakbang 8: Ang Button B Pag-click sa Kaganapan - Magsumite ng Tugon sa BITs Hamon

Ang Button B Pag-click sa Kaganapan - Magsumite ng Tugon sa BITs Hamon!
Ang Button B Pag-click sa Kaganapan - Magsumite ng Tugon sa BITs Hamon!
Ang Button B Pag-click sa Kaganapan - Magsumite ng Tugon sa BITs Hamon!
Ang Button B Pag-click sa Kaganapan - Magsumite ng Tugon sa BITs Hamon!

Isinumite ng manlalaro ang sagot sa BIT sa pamamagitan ng pagpindot sa Button B nang isang beses. Ang isang bilang ng mga hakbang na nangyayari sa Butler B "sa pag-click" na handler ng kaganapan sa sandaling matanggap ng BIT ang mga manlalaro sagot tulad ng ipinahiwatig ng mga marker ng code sa imahe:

  1. Ang CHECK flag ay nakatakda sa True - isang senyas para sa BIT na ihambing ang hula nito sa mga manlalaro
  2. Nagpapatuloy lamang ang pagmamarka kung ang parehong mga manlalaro ay nahulaan ang mga bilang na mas malaki kaysa sa Zero at sa loob ng limitasyon ng GAME_RANGE (ng 6) at kung hindi, ang function ng showBadGuess () ay tinawag - ang mahusay na manlalaro ng hula ay nanalo ng isang punto, at ang masamang hula ng manlalaro ay mawalan ng isa!
  3. Kung ang mga manlalaro ay hulaan na tumutugma sa mga BIT, tinawag ang pagpapaandar na showWin () - nanalo ang manlalaro sa pag-ikot na ito!
  4. Kung hindi, ang pagpapaandar na showLose () ay tinawag - ang BIT ay nanalo sa pag-ikot na ito!
  5. Ginagawa ang isang tseke sa pagtatapos ng bawat pag-ikot ng pagpapa-anunsyo ng winWinner () upang makita kung ang isa sa dalawang manlalaro ay nanalo sa pagmamarka ng 3 puntos - kung gayon, natapos ang laro at inihayag ang pangwakas na nagwagi at lahat ng mga marka at mensahe ay i-reset
  6. Ang BIT ay restart ng laro sa pamamagitan ng pag-isyu ng isang hamon sa pamamagitan ng pagtawag sa doChallenge () function at naghihintay para sa player na tumugon at ang proseso ay umuulit.

Tatalakayin namin ang mga bagong pag-andar sa mga susunod na hakbang.

Teka lang! Paano mo hulaan ang ZERO?

  • Kung titingnan mo ang random () Pag-andar ng matematika, maaari mong makita na ang paunang halaga ay nakatakda sa Zero at hindi mababago.
  • Samakatuwid ang BIT ay malayang hulaan ang isang Zero at hamunin ang manlalaro bilang isang resulta ng limitasyong ito
  • Katulad nito, ang manlalaro ng tao ay maaaring magsumite ng isang Zero hula sa pamamagitan lamang ng pag-click sa Button B nang hindi nag-click sa Button A muna!
  • Kung pinapayagan ito pagkatapos ang tao manlalaro ay hindi kailangang gumawa ng anumang pagsisikap upang i-play at na walang katuturan!
  • Samakatuwid, ang limitasyon na ito ay binayaran ng Bullet # 2. tinalakay sa itaas

Hakbang 9: Ang Manalo / Mawalan at Pahinga ng Mga Pag-andar

Ang Manalo / Talo at Pahinga ng Mga Pag-andar
Ang Manalo / Talo at Pahinga ng Mga Pag-andar
Ang Panalo / Talo at Pahinga ng Mga Pag-andar
Ang Panalo / Talo at Pahinga ng Mga Pag-andar
Ang Manalo / Talo at Pahinga ng Mga Pag-andar
Ang Manalo / Talo at Pahinga ng Mga Pag-andar

Ang lahat ng mga pagpapaandar na ito ay tinawag ng Button B "sa pag-click" na handler ng kaganapan tulad ng nakikita sa nakaraang hakbang.

Ang mga pagpapaandar na ito ay medyo tuwid at sa oras na ito ay dapat na maging pamilyar ka sa intuitive at pagsasalaysay na likas na katangian ng code na nilikha ng isang kumbinasyon ng mga apelyido na pinangalanang mga variable at ang mga visual na katangian ng Blocks Editor.

  1. Ang pagpapaandar ng showWin () ay nagpapakita ng isang mensahe na nagpapahiwatig na ang manlalaro ay nanalo sa pag-ikot ng hamon na ito at pinapabilis ang variable ng PLAYER_SCORE ng 1
  2. Katulad nito, ipinapakita ng pagpapaandar ng showLose () ang manlalaro na gumawa ng isang hindi magandang hulaan at iginawad ang isang punto sa BIT sa pamamagitan ng pagdaragdag ng variable ng BIT_SCORE ng 1
  3. Ang function ng showBadGuess () ay nagpapakita ng isang malaking X sa screen na nagpapahiwatig na ang isa sa mga manlalaro ay gumawa ng isang hindi magandang hulaan (alinman sa 0 o mas malaki sa 6) - ang masamang manlalaro sa kasong ito ay nawalan ng isang punto, at ang iba pang mga marka ng isang puntos!

At ang panghuli, ang pagpapaandar ng announceWinner () ay nagsasagawa ng gawain ng pagpapahayag kung sino ang engrandeng nagwagi pagkatapos ng 3 pag-ikot ng hamon / tugon na sinundan ng:

  • I-reset ang mga variable ng marka ng PLAYER_SCORE at BIT_SCORE
  • Huminto sa madaling sabi, at nagsisimula ng isang bagong laro sa pamamagitan ng pagtawag sa showMessage () na pagpapaandar na pagpapaandar na tinalakay sa nakaraang hakbang (6) ng IBLE na ito

Sa wakas, sa simulator at ang code!

Hakbang 10: Ang Simulator at Code

Ang Simulator at Code
Ang Simulator at Code

Tumatakbo ang code sa online simulator na matatagpuan dito

  • Ang simulator ay matatagpuan sa ibabang kaliwa ng pahina
  • Bilang kahalili, maaaring magamit ang pindutang Mag-download upang mai-download ang code kung sakaling mayroon kang madaling gamiting BBC Microbit
  • Tulad ng nabanggit sa simula ng IBLE, hindi mo kailangan ng isang BBC Microbit upang maitayo ang code sa Blocks Editor o upang gayahin at subukan ang iyong code, kahit na hindi ito gagana para sa mga usyosong indibidwal tulad ng aking sarili!

Isang Tala sa Edit Button

  • Kung napagmasdan mo, ang code ay nasa pampublikong domain at may isang paraan upang mai-edit ito sa pamamagitan ng paggamit ng pindutang I-edit sa kanang tuktok
  • Gayunpaman, taos-puso akong hihilingin sa iyo na gumawa ng isang kopya ng code na ito at baguhin ito upang umangkop sa iyong mga pangangailangan upang ang orihinal na bersyon ay mapanatili sa interes ng IBLE na ito

Salamat! At masaya coding !!!:-)

Inirerekumendang: