Sadržaj:

Puzzle igra memorije pomoću BBC MicroBita: 7 koraka
Puzzle igra memorije pomoću BBC MicroBita: 7 koraka

Video: Puzzle igra memorije pomoću BBC MicroBita: 7 koraka

Video: Puzzle igra memorije pomoću BBC MicroBita: 7 koraka
Video: CS50 2013 - Week 10 2024, Juli
Anonim
Image
Image

Ako ne znate što je BBC MicroBit, to je u osnovi zaista mali uređaj koji možete programirati tako da ima ulaze i izlaze. Kindof poput Arduina, ali više razrađen.

Ono što mi se jako svidjelo kod MicroBita je to što ima dva ugrađena ulazna dugmeta i 5 x 5 LED matricu!

Pa sam pomislio, zašto ne stvoriti zagonetku koja je jednostavna za izradu, ali je teško igrati!

ps: Ako ne želite kodirati, priložit ću.hex datoteku za izravno učitavanje na MicroBit.

Supplies

Sve što ti je potrebno je

1) BBC MicroBit

2) Laptop ili PC za programiranje Microbita

3) Malo strpljenja!

Korak 1: Kreirajte projekt koristeći mrežnu platformu za kodiranje zasnovanu na bloku, Makecode

Idite na https://makecode.microbit.org/ i kreirajte novi projekt. Ovdje ćemo stvarati kôd za našu igru.

Evo mog koda u prilogu:

Korak 2: Šta je igra?

Pa, zamislite ovo kao igru Simon Says s dva dugmeta.

Na ekranu će se prikazati niz kombinacija A i B, a igrač mora zapamtiti slijed i zatim ga unijeti pomoću tipki A i B na MicroBitu.

Kako bismo igru sve više otežavali, povećat ćemo broj slova za 2 u svakoj rundi, a također ćemo smanjiti vrijeme koje svako slovo ostaje na ekranu.

Idemo!

Korak 3: VRIJEME JE KODIRANJA !

Pa, ne baš. Kako je web mjesto makercode zaista prilagođeno početnicima i ima nešto što se zove blok kodiranje. Ovdje samo uzimamo blokove i kombiniramo s više blokova! Nevjerovatno, U redu!

Pa prvo moramo razumjeti za šta moramo kodirati.

U početnim blokovima ćemo dodati globalne varijable i po potrebi promijeniti svjetlinu.

"level" = 1, "Delay" = 500, "set.score" = 0.

Koristit ćemo funkcionalnost bodova za praćenje rezultata.

U našoj igri, prvi korak je odabir slučajnog slova: A ili B.

To možemo učiniti tako da prvo nasumično izaberemo između 1 i 2, a zatim dodijelimo A na 1 i B na 2 i pohranimo ih u varijablu "AB".

Voila!

sada, svaki put kad odaberemo A ili B, prikazat ćemo ga na ekranu u razdoblju odgode ms.

ovo je u promenljivoj po nivou, smanjićemo "Kašnjenje" za 50 ms, sve dok ne bude 50 ms, pokretanjem nivoa 1 sa 500 ms.

Korak 4: Ponovite ovo za svaki nivo s povećanjem od dva slova

To postižemo ponavljanjem bloka "Dužina" koliko puta

Dužina = 2 + (nivo - 1) x 2.

Ovo se radi ako imamo nivo = 1 na početku petlje i povećamo nivo za 1, naša dužina po nivou postaje 2, 4, 6, 8 itd.

Sada, nakon što generiramo pismo, želimo ga i pohraniti. Dakle, postavili smo prazan niz "Pitanje" kao "Pitanje" + "AB"

Ovo će nam dati cijeli niz koji smo generirali slovo po slovo.

potrebna nam je i neka vrsta indikacije da vidimo je li ova petlja završena ili ne kako bismo mogli dobiti odgovor od igrača. to radimo postavljanjem varijable koja se zove "cond" na početku kao 0, a zatim je mijenjamo na 1 po završetku petlje. jednostavno!

takođe moramo dodati uslov prekida u petlju. Ako je igra završena, onda nam je potrebna da bismo izašli iz petlje i ne generirali više slova.

Sve ovo stavit ćemo u funkciju koja se zove "Generiraj", dodati početnu sliku, ubaciti sliku tamo, dodati? na kraju, i bum!

Korak 5: Dobijte odgovor

Kada korisnik pritisne A ili B, moramo pohraniti te podatke i napraviti niz "Odgovor" kako bismo ih mogli uporediti s "Pitanjem".

To činimo tako što ulaz unosimo samo kada je "cond" = 1 kako bismo spriječili igrača da unese odgovor dok se prikazuje "Pitanje".

Zatim kombiniramo ulaz u niz i spremamo ga kao "Odgovor".

Comprende?

Korak 6: Provjera odgovora

Sada samo uspoređujemo "pitanje" koje smo generirali s "odgovorom" koji je dao igrač.

Ako se poklapaju, idemo na sljedeći nivo, inače…. IGRA JE GOTOVA !!!

I prikazujemo rezultat na kraju.

Ovo ćemo također zadržati u funkciji pod nazivom "Check" koja će se pozivati ako je "cond" = 1 prilikom primanja unosa, inače …. GAME OVER!

Korak 7: Gotovo

Sve što trebamo učiniti je prenijeti kôd na MicroBit, a zatim testirati sve koje poznajete!

Preporučuje se: