Scratch 3.0 İle İkizini Yaratarak Balon Patlatma Oyunu

Diğer Scratch yazılarına hazırlama için  TIKLAYINIZ.

Bırakmak videolu anlatımı için  TIKLAYINIZ.

Scratch balon patlatma oyunu için iki kukla yeterlidir. Bir balon ve bir iğne ile bu oyun tasarlanabilir.

Sağ alttaki kedili butona basarak mor balonu seçtik. Diğer kostümlerini silip patladığı zaman oluşacak kostümü ise biz çizdik. Sağ alttaki kedili butona basıp çizimle “kukla oluşturu” seçip iğneyi çizdik. Bilgisayarımızdan kendi kuklalarımızı yükleyerek de yapabiliriz.

İlk olarak

iğne kuklamızın kodlarını yazalım. İğnenin sağ ve sola hareket etmesini, kenara geldiğinde sekmesini istiyoruz. Ayrıca her oyun başladığında iğne ortaya gelsin istiyoruz.

Scratch balon patlatma oyununu başlatmak için bir başlatıcıya ihtiyacımız var. Genelde bu başlatıcı sahnenin sol üstündeki yeşil bayrak olur. İstersek ekrana “Boşluk tuşuna basarak oyunu başlatabilirsiniz.” Deyip boşluk (space) tuşu ile oyunu başlatabiliriz. Bunun için olaylar sekmesinden “boşluk tuşuna basınca ” kodunu alıp ekledik. İğnenin ortada olması için hareket sekmesinde “x: 0 y: -146 konumuna git.” Kodunu seçtik. Sağ oka basınca sağa, sol oka basınca sola gitmesini istiyoruz ve bunu sürekli kontrol etmeli. Bu yüzden kontrol sekmesinden sürekli tekrarla kodunu aldık. İçerisini de iki tane “Eğer” kodu kullandık. Çünkü eğer sağ ok basılıysa şunu yap gibi komutlar vereceğiz.

Algıla sekmesinden “sağ ok tuşuna basıldı mı?” seçtik Burada sekmede kodu ararken “boşluk tuşuna basıldı mı?” şeklindedir. Yanındaki ok ile istediğimiz tuşu seçebiliyoruz. Sağ ok basılı ise y sine bir şey olmayacak x’ in değeri artacaktır. Sol için ise x’ in değeri azalacaktır. Azalmasını kod bloğumuza yaptırmak için “-” kullandık. İğnemiz kenara geldiğinde ekrandan dışarı çıkıyor. Bunu engellemek için hareket sekmesinde bulunan “kenara geldiyse sek kodunu kullandık.” Ama iğnenin yönünü sağa-sola çevirmemiz gerekiyor. Yoksa iğne her yöne dönecektir.

Balon kuklamızın kodlarını yazalım.

Balon da aynı iğne gibi başlamalıdır. Bunun için olaylar sekmesinde yer alan “boşluk tuşuna basılınca” kodunu kullandık. Biraz daha oyunlaştırmak için değişken olarak “Puan” değişkeni tanımladık. Puan sıfırdan başlaması için değişkenler sekmesinden “Puan 0 olsun. ” kodunu aldık. Puanın bir değerden başlaması gerekmektedir. Yoksa programımız ne yapacağını şaşırabilir. J İlk balonumuzun başta gözükmesi için görün kodunu kullandık.

Hep sürekli tekrarla kullandık. Ama bunu şu değere kadar yap diye bir kodumuz da var. Balonumuz kendi ikizini 30 kez yaratmasını istiyoruz. Bunu sürekli tekrarla kodunu kullanarak bir değişkenle saydırıp sonra durdurabilirdik. Ama uzun olurdu. Bunun yerine kontrol kısmından “30 defa tekrarla” kodunu aldık. Yukarıdan aşağı balonların düşmesini istiyoruz. Bunun için y konumu yukarıdan başlamalı, 200 olabilir. X konumu ise farklı olması için operatörlerden sayılar arasında rastgele sayı seç kodunu kullandık.

Konumu belirlendikten sonra kendi ikizini yaratan kodu yazdık. Bu kod kontrol kısmında bulunuyor.Balon kendinden bir tane daha yaparak birden fazla balonun düşmesini sağlıyor. İkizini oluşturduktan sonra hemen önceki balonla bir düşmesin diye rastgele bir süre bekletmek için “1 saniye bekle”  kodunu kullandık. İçerisine farklı saniyelerde beklemesi için şu sayılar arasından rastgele seç kodunu kullandık. Daha sonra balonun kullanıcı tarafından düşüşünün görülmesi için görünüm sekmesindeki göster kodunu kullandık.

İlk asıl olan balonumuz aşağıya düşmeyecektir. Düşmesi için kod yazmadık. Bu yüzden bu balonu gizlememiz gerekir. Gizlemek için görünüm sekmesindeki gizle kodunu kullandık.

Balon kuklamız;

ikiz olarak başladığında ise düşmesini istiyoruz. Düşüp iğneye değip değmediğini değerlendirmeliyiz. Düşmesi için y konumunu azaltmamız gerekir. Bunu hareket sekmesindeki “y konumunu değiştir” ile yaptık. “-” yapmamızın sebebi koordinat sisteminde y nin aşağı doğru azalmasıdır.

Azaltmak için de – kullanmalıyız. Eğer balonumuz iğneye değerse kullanıcımız bir balonu patlattığı için puanı 1 puan arttırmalıyız. Eğer kodunu alıp algılama sekmesinden iğneye değip değmediğini sorguladık. İğneye değerse puanı arttırmak için değişken sekmesinde bulunan “Puanı 1 kadar değiştir” kodunu kullandık. İğneye değdiğini kullanıcı daha iyi fark etsin diye ses sekmesinden “Pop” sesini ekledik. Patladığında ikinci kostümüne geçmesini istiyoruz.

Bu da oyunumuza estetiklik katacaktır. Diğer kostüme “sonraki kostüm” koduyla geçtik. Bu kostümle 0.5 saniye kalmasını sağladık. Eğer bu kodu yazmazsak ikinci kostümü kullanıcı göremeden balon silinecektir. Balonla işimiz bittiğine göre silebiliriz. Silmeyip yukarıdan tekrar başlatabilirdik. Ama o zamanda patlatılacak balonlar arttığından oyunun süresi uzardı.

iğne

ikiz olarak başlayan balonların hepsini patlatamayabilir. İllaki patlatamayacakları olacaktır. Bu balonların y’ si “-“ değere iner. Belli bir y değerinin altına indiğinde bu balon ikizini de silebiliriz. Bunun yapmak için kontrol sekmesinde bulunan “eğer” kodunu alıp koyduk. Koşulunu ise operatörlerde bulunan büyüktür operatörünü alıp içerisine koyduk. Hareket sekmesinde bulunan “y konumu” alıp -160 olup olmadığını sorguladık. Eğer konum -160 altına inerse ikizi sil kodunu kullanarak ikizi sildik.

Oyunumuzu geliştirebiliriz!
  • 5 tane balon düşürdüğünde oyun bitsin ve puanını söylesin.
  • Belli bir süre örneğin 20 saniye oynanabilsin ve süre bitince oyun bitsin.
  • Tek bir balon değil de iki balonun ikizini kullanarak farklı renklerde balonların düşmesi sağlanabilir.
  • Puanı 4 olunca başka renkte balonlar da düşmeye başlasın ve oyun zorlaşsın.

Puan arttıkça balonların düşme hızı artsın.

Leave a Comment