İçindekiler:
- Gereçler
- 1. Adım: Başlatın
- Adım 2: Sonsuza Kadar Yağmur
- Adım 3: Silah Karakterini Hareket Ettirmek
- Adım 4: Merminin Başlatılması
- Adım 5: Oyun sonu
Video: Yağmur Yağsın: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Bu, Micro:bit'te oynanacak bir oyundur.
Oyunun adı Rain ve amaç düşen nesnelerin çarpmasını önlemek.
Ya sağdan sola hareket ettirerek ve/veya nesneleri vurarak.
Oyun aşağıdaki kontrollerle çalıştırılır.
Shake – Yeni bir oyun başlatır.
A – Karakteri sola hareket ettirir.
B – Karakteri sağa hareket ettirir.
A+B – Mermiyi düşen nesnelere ateşler.
Mermi tarafından vurulan her düşen nesne için bir puan verilir.
Düşen bir nesne tarafından vurulursa, üç can kaybettikten sonra bir hayat kaybederler, oyun biter, bu üzgün yüz görüntüsü ve skor ile gösterilir.
Oyunun her aşaması, metinde açıklanan bir dizi işleve ayrılmıştır.
Açıklama blok kodunu kullanır ve Javascript de mevcuttur.
Gereçler
mikro: bit
MakeCode Düzenleyicisi
1. Adım: Başlatın
Oyun parametrelerinin başlatılması, sayısal ve Boole değişkenlerinin bir kombinasyonunun atanmasıyla gerçekleştirilir.
Varsa önceki bilgilerin ekranının düzenlenmesi, silah karakterinin başlangıç pozisyonunun atanması ve kullanıcıya Micro-bit'i oyunun başlaması için hazır hale getirmesi için zaman tanınması.
Değişkenlere işlevlerini belirten adlar verilirse kodun anlaşılmasını kolaylaştırır.
Örneğin, 'ateş', 'füze'yi fırlatan 'silahı' başlatır.
Benzer şekilde, oyunsonu sayısı 3'ten büyükse oyunsonu doğrudur.
Tabanca alt sırada yalnızca yatay olarak hareket ettiğinden, y her zaman 4'tür ve x değişkeni, çiz ve çiz komutlarını kullanarak uygun LED'i yakmak için değiştirilir.
Başlatma işlemi, Başlatmada ve Sarsıntıda olmak üzere iki işlevde kullanılır.
Adların gösterdiği gibi, Aramaları Başlatırken, kullanılan değişkenleri gerekli değerlere ayarlamak için kodun başlangıcında başlat.
Sallama çağrılarında Kullanıcı yeni bir oyun başlattığında başlatır.
Bu, kullanıcının oyunu yeniden başlatmasına ve oyun parametre değişkenlerini başlatmasına, ekranı temizlemesine ve oyun karakterini başlangıç konumuna getirmesine olanak tanır.
Adım 2: Sonsuza Kadar Yağmur
Bu, oyun kodunun düşen nesneleri rastgele oluşturan ve ekrandan aşağı hareket ettirmeden önce başlangıç konumlarını başlatan kısmıdır.
Düşme izlenimi, LED'in açılıp kapanması ile konum sayacının arttırılması arasındaki zaman gecikmesi ile tanımlanır. Konum sayacının her artışında, düşen nesnenin oyun karakteriyle çarpışıp çarpışmadığını belirlemek için bir kontrol yapılır.
Bir çarpışma tespit edilirse, en fazla üç can kaybı olur ve oyun sonu bildirimi verilir ve puan görüntülenir ve düşen nesne döngüsü sonlandırılır.
Rainstart, bu karakterin başlangıç x konumudur ve ekranda "y" konumu için "for" döngüsü değiştirme indeksi2 tarafından artırılır. 0'dan 4'e, 0 üstte ve 4 altta.
Yağmurun göremeyeceğimiz kadar hızlı yağmasını istemiyoruz, bu yüzden ara vererek bir gecikme ekliyoruz.
Yağmur yağdığında, tabancayla bir çarpışma olup olmadığını belirlemek için ileriyi kontrol eder, bu, 'nokta' kullanılarak gerçekleştirilir, bu, önündeki LED'in durumunu belirler.
Yağmurun önündeki LED yanarsa, bu bir vuruş olarak belirlenir ve bir can kaybı veya oyun biter.
Her şeyi düzenli tutmak için önceden yanan LED'i çıkarmalıyız, böylece iz bırakmadan sürekli düşen bir yağmur damlası görünümü olur.
Adım 3: Silah Karakterini Hareket Ettirmek
Silah karakterini hareket ettirmek için kullanılan iki giriş işlevi vardır.
Bunlar, Açık düğmesine A basılmış ve Açık düğmesine B basılmıştır.
Açık düğmesine A basıldı.
Bu işlev, A düğmesine basıldığında oyun karakterini sola hareket ettirir.
Oyunun sonu değilse ve silah değeri izin verilen aralık içindeyse, önceki silah karakteri konumu işaretlenmez, silah değeri düşürülür ve yeni silah konumu çizilir.
Tabanca değeri 0'dan küçükse, tabanca x=0, y=4 olarak çizilir.
Açık düğmesine B basıldı.
Bu işlev, B düğmesine basıldığında oyun karakterini sağa hareket ettirir.
Oyunun sonu değilse ve izin verilen menzil içindeki silah değeriyle, önceki silah karakteri konumu işaretlenmez, silah değeri artırılır ve yeni top konumu çizilir.
Tabanca değeri 4'ten büyükse, tabanca x=4, y=4'te çizilir.
Adım 4: Merminin Başlatılması
Silah karakterini sola ve sağa hareket ettirebiliyoruz ve artık yağmur yağan nesnelere mermiyi ateşleyebilmesi gerekiyor.
Bu, oyun kodunun mermiyi oluşturan ve ekranda yukarı taşımadan önce başlangıç konumlarını başlatan kısmıdır.
Yukarı hareket izlenimi, LED'in açılıp kapanması ile konum sayacının arttırılması arasındaki zaman gecikmesi ile tanımlanır. Konum sayacının her artışında, merminin düşen bir nesneyle çarpışıp çarpışmadığını belirlemek için bir kontrol yapılır.
Bir çarpışma algılanırsa, o konumda düşen nesne silinir, puan güncellenir, düşen nesne konumu değişkeni sıfırlanır, mermi konumu ve başlatıcı sıfırlanır ve mermi döngüsü sonlandırılır.
Oyun sonu yanlışsa, başlangıç konumu için ateş = doğru ve füze = 4.
Bir süre döngüsü oluşturulur, bu, ateş = doğru iken mermilerin tek veya sürekli ateşlenmesini sağlar.
Füze değişkeni 4'ten (altta) 0'a (üstte) düşürülür.
Füze ekranda yukarı çıkarken her noktada bir yağmur nesnesi ile çarpışma olup olmadığını kontrol eder, eğer çarpışma tespit edilmezse mermi ekrandan yukarı ve aşağı hareket etmeye devam eder.
Bir çarpışma algılanırsa, yağmur nesnesi işaretlenmez, çünkü artık yok edilir, değişkeni sıfırlanır ve isabet sayacı 1 artırılır.
Füze, bunun yok edildiği izlenimini vermek için planlanmamış.
Yağmur, füze ve ateş değişkenleri sıfırlanır.
Adım 5: Oyun sonu
Bu işlev oyun sonu bayrağını ayarlar, oyun sonu bildirimini ve skoru görüntüler ve kaybedilen her can için yıkım patlamasını görüntüler.
Oyun sonu işlevi, kullanıcı bir can kaybettiğinde ve üç canın tümü sona erdiğinde oyunun sona erdiğini bildiren iki örnek için çağrılır.
Oyun sonu işlevi her çağrıldığında, oyunsonu sayısı artırılır, 3'ten azsa, silah karakterinin yok edilmesini canlandıran patlama işlevi çağrılır. Patlama animasyonu, şok dalgasının etkilerini animasyonla gösteren değişen LED konumları dizisidir.
Aynı zamanda ekranı temizlerken, silah değişkenini varsayılan başlangıç konumuna sıfırlamak ve oyunu yeniden yorumlamadan önce bir duraklama uygulamak.
Endgamecount = 3 ise, patlama işlevi çağrılır ve bunu takiben oyunun sonunu gösteren üzgün yüz ve ardından elde edilen puan görüntülenir. Skor temizlendikten sonra Micro:bit'i sallayarak oyunu yeniden başlatmaya hazırsınız.
Önerilen:
Arduino ve Yağmur Damlası Sensörü Kullanan Yağmur Dedektörü: 8 Adım
Arduino ve Yağmur Damlası Sensörü Kullanan Yağmur Dedektörü: Bu derste, bir yağmur sensörü kullanarak bir yağmurun nasıl algılanacağını ve bir buzzer modülü ve OLED Ekran ve Visuino kullanarak nasıl ses çıkarılacağını öğreneceğiz.Videoyu izleyin
Meten Aan Su: Yağmur Yoğunluk Ölçer: 6 Adım
Meten Aan Water: Rain Intensity Meter: IntroBu cihaz yağış şiddetini ölçmek için yaratılmıştır. Yağış miktarını ölçmenin birçok yolu vardır. Ancak, istenen bilgi yağış yoğunluğu ise, çoğu ölçüm cihazı çok pahalıdır. Bu cihaz ucuz ve kolay
DIY IR Araba Yağmur Sensörü: 6 Adım
DIY IR Araba Yağmur Sensörü: gerekli parçalar:1- Engelden Kaçınma için IR Sensörü KY-032 (AD-032)2- 5V röle modülü3- herhangi bir tip 12V mobil şarj cihazı4- IR LED vericisini ve alıcısını monte etmek için küçük şeffaf kutu(yapabilirsiniz eski bir uydu alıcısından alın).5- evrensel PCB kartı 6
PiSiphon Yağmur Ölçer (Prototip): 4 Adım
PiSiphon Yağmur Ölçer (Prototip): Bu proje, Bell sifon Yağmur Ölçer üzerinde bir iyileştirmedir. Daha doğru ve sızdıran sifonlar geçmişten bir şey olmalı. Geleneksel olarak yağış, manuel bir yağmur göstergesi ile ölçülür. Otomatik hava istasyonları (IoT hava durumu istasyonları dahil
LORA Yağmur Sensörü: 6 Adım
LORA Yağmur Sensörü: Otomatik seramı yapmak için bazı sensörlere ihtiyacım vardı. Bu yağmur sensörünü sprinklerin açılıp açılmayacağına karar vermek için kullanacağım. Bu yağmur sensörünü iki şekilde anlatacağım. analog bağlantı noktasını kullanarak dijital bağlantı noktasını kullanma