İçindekiler:

BBC MicroBit Kullanan Hafıza Yapboz Oyunu: 7 Adım
BBC MicroBit Kullanan Hafıza Yapboz Oyunu: 7 Adım

Video: BBC MicroBit Kullanan Hafıza Yapboz Oyunu: 7 Adım

Video: BBC MicroBit Kullanan Hafıza Yapboz Oyunu: 7 Adım
Video: BBC Micro:Bit Kart İncelemesi - Micro:Bit Kart İle Neler Yapılabilir? 2024, Temmuz
Anonim
Image
Image

BBC MicroBit'in ne olduğunu bilmiyorsanız, temelde giriş ve çıkışlara sahip olacak şekilde programlayabileceğiniz gerçekten küçük bir cihazdır. Bir tür Arduino gibi, ama daha fazla ete sahip.

MicroBit hakkında gerçekten sevdiğim şey, iki adet yerleşik giriş düğmesine ve 5 x 5 led matrisine sahip olmasıydı!

Bu yüzden, neden yapması basit ama oynaması zor bir hafıza bulmacası oyunu yaratmayayım diye düşündüm!

ps: Kod yazmak istemiyorsanız, doğrudan MicroBit'e yüklemek için.hex dosyasını ekleyeceğim.

Gereçler

Tum ihtiyacin olan sey

1) BBC Mikro Bit

2) Microbit'i programlamak için dizüstü bilgisayar veya PC

3) Biraz sabır!

Adım 1: Çevrimiçi Blok Tabanlı Kodlama Platformu Makecode'u Kullanarak Proje Oluşturun

makecode.microbit.org/ adresine gidin ve yeni bir proje oluşturun. Oyunumuzun kodunu burada oluşturacağız.

İşte ekli kodum:

Adım 2: Oyun Nedir?

Bunu iki düğmeli Simon Says oyunu olarak düşün.

Ekranda bir dizi A ve B kombinasyonu gösterilecektir ve oynatıcının diziyi ezberlemesi ve ardından MicroBit üzerindeki A ve B düğmesini kullanarak girmesi gerekir.

Oyunu giderek daha zor hale getirmek için her turda harf sayısını 2 artıracağız ve ayrıca her harfin ekranda kalma süresini azaltacağız.

Hadi gidelim!

Adım 3: KODLAMA ZAMANI!!

Pek iyi değil. Makercode web sitesi gerçekten yeni başlayanlar için uygun olduğundan ve blok kodlama denen bir şeye sahip olduğundan. Burada sadece blokları alıyoruz ve daha fazla blokla birleştiriyoruz! Harika, Doğru!

Öncelikle neyi kodlamamız gerektiğini anlamamız gerekiyor.

Başlangıç bloklarında global değişkenleri ekleyeceğiz ve gerekirse parlaklığı değiştireceğiz.

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

Skoru takip etmek için skor işlevini kullanacağız.

Oyunumuzda ilk adım rastgele bir harf seçmektir: A veya B.

Bunu önce 1 ile 2 arasında rastgele seçerek ve ardından A'yı 1'e ve B'yi 2'ye atayarak ve "AB" değişkeninde depolayarak yapabiliriz.

İşte!

şimdi, A veya B'yi her seçtiğimizde, "Gecikme" ms'lik bir süre boyunca ekranda görüntüleyeceğiz.

bu seviyeye göre bir değişkende, seviye 1'i 500 ms ile başlatarak "Gecikme"yi 50 ms olana kadar 50 ms azaltacağız.

Adım 4: Bunu Her Seviye İçin İki Harf Artarak Tekrarlamak

Bunu, "Uzunluk" bloğunu kaç kez tekrarlayarak elde ederiz:

Uzunluk = 2 + (seviye - 1) x 2.

Bunun yaptığı şey, döngünün başında seviye = 1 varsa ve seviyeyi 1 arttırırsak, seviye başına uzunluğumuz 2, 4, 6, 8 olur ve böyle devam eder.

Şimdi bir harf ürettikten sonra onu da saklamak istiyoruz. Böylece, boş bir "Soru" dizesini "Soru" + "AB" olarak belirledik

Bu bize harf harf oluşturduğumuz dizenin tamamını verecektir.

Ayrıca oyuncudan cevabı alabilmemiz için bu döngünün bitip bitmediğini görmek için bir tür göstergeye ihtiyacımız var. Bunu, başlangıçta "cond" adlı bir değişkeni 0 olarak ayarlayarak ve ardından döngü sona erdiğinde 1 olarak değiştirerek yaparız. basit!

Ayrıca döngüye bir break koşulu eklememiz gerekiyor. Oyun biterse, döngüden çıkmak ve daha fazla harf üretmemek için ona ihtiyacımız var.

Bunların hepsini "Generate" adlı bir fonksiyona koyacağız, biraz başlangıç resmi ekleyeceğiz, oraya bir resim atacağız, bir ? sonunda ve bum!

Adım 5: Cevabı Almak

Kullanıcı A veya B'ye bastığında, bu bilgiyi saklamamız ve "Soru" ile karşılaştırabilmemiz için bir "Cevap" dizesi oluşturmamız gerekir.

Bunu, oyuncunun "Soru" görüntülenirken yanıtı girmesini önlemek için yalnızca "koşul" = 1 olduğunda girdi alarak yapıyoruz.

Daha sonra girdiyi bir "Cevap" olarak kaydederek bir dizgede birleştiririz.

Kapsamlı mı?

Adım 6: Cevabı Kontrol Etme

Şimdi, oluşturduğumuz "Soru"yu, oyuncunun verdiği "Cevap" ile karşılaştırıyoruz.

Eğer eşleşirlerse, bir sonraki seviyeye geçeriz, yoksa…. OYUN BİTTİ!!!

Ve sonunda skoru gösteriyoruz.

Bu aynı zamanda bir girdi alırken "koşul" = 1 ise çağrılacak "Kontrol" adlı bir işlevde tutacağız, aksi takdirde…. OYUN BİTTİ!

Adım 7: Bitti

Şimdi tek yapmamız gereken kodu MicroBit'e yüklemek ve ardından tanıdığınız herkesi test etmek!

Önerilen: