Sayfalar

1 Aralık 2018 Cumartesi

Aşamalı Labirent Oyunu(1)

Merhaba sevgili öğrencilerim. 

Bu kez üç aşamalı bir labirent oyunu hazırlayacağız. Oyunu hazırlarken 3 adet kukla ve 4 adet dekor kullanacağız. Sizler kullanılacak dekor ve kukla sayısında değişiklik yapabilir veya farklı özellikleri oyununuza ekleyebilirsiniz. Oyunumuz tamamlandığında fare imlecine doğru hareket eden bir kuklamız olacak. Kuklamız ile labirenti çözdükçe farklı labirentlerde oyuna devam edeceğiz. 

Öncelikle dekor çizimleri ile başlayalım. Oyununuz için 3 adet(3 bölüm yapacağımız için) dekor çizeceğiz. Çizim konusunda serbestsiniz. İstediğiniz gibi tasarımlarınızı gerçekleştirebilirsiniz. Ben kendi dekorlarımı hazırlayayım. 

Evet oyunuma 3 adet dekor çizimimi yaptım. Şimdi sırada kukla seçimi var. Kukla kütüphanesini kullanabilir veya kendi kuklanızı çizebilirsiniz. Kuklalardan biri bizim hareket ettireceğimiz kukla olacak. Diğeri bölüm atlamamızı sağlayacak olan kukla olacak. Bir diğeri ise oyunu biraz zorlaştırmak için kullanılacak bir kukla olacak. 


İşlemleri doğru tamamladı iseniz ekran görüntünüz benimki gibi olacaktır. Bende maymun, muz, ve bitiş adından 3 kukla ve 3 adet dekor bulunuyor. Tasarım aşaması bitti. Şimdi kodları yazmaya başlayabiliriz.

Maymun kuklamız için gerekli kodları yazmaya başlayalım. İlk olarak maymunun fareyi takip etmesini sağlayalım. Oyunda fareyi kullanacağım için oyunu boşluk tuşuna basarak çalıştıracağım. "fare okuna dön" komutu ile kuklamın fareye doğru yönlenmesini sağlayacağım. Hareket etmesi için ise "10 adım git" komutunu kullanacağım. Bu kodların her zaman çalışabilmesi için ise kodlarımı "sürekli tekrarla" kodunun içerisine ekleyeceğim. 


Dikkat: Sürekli tekrarla komutu içerisinde yer alan kodlar program çalıştığı sürece çalışır. 

Evet maymun fare imlecini takip ediyor. Çözmemiz gereken bir diğer durum siyah çizgilere dokunduğunda başa dönmesini sağlamak. Bunun için "noktasına git" ve "eğer ise" komutlarını kullanacağız. Yazmamız gereken ifadeyi öncelikle kendimiz bir tasarlayalım. Daha sonra bunu bilgisayar diline çevirelim. Eğer maymun siyah çizgiye dokunursa oyuna başladığı noktaya dönsün. Evet yapmak istediğim şey tam olarak bu. Şimdi bunu bilgisayarın anlayacağı dilde yazalım. 


Yukarıda gördüğünüz kodlar kurduğumuz cümlenin bilgisayarcası. :) "Mavi "Rengine değdi mi?" nereden çıktı?" diye merak ettiyseniz "Algılama" sekmesinden temin edebilirsiniz. Renk seçimini yaparken renk kısmına bir kez tıkladıktan sonra ekranda hangi rengi seçeceksek oraya tıklıyoruz. Eğer siyah kısma iki kez tıklarsanız aynı rengi seçmiş olacağınız için renk seçimi yapamıyorum diye düşünebilirsiniz. Siyah kısma bir kez tıkladıktan sonra hangi rengi seçecekseniz o rengin üzerine gidin ve tıklayın. Ve bu kod sürekli kontrol edilmek zorunda olan bir durum olduğu için "sürekli tekrarla" kodunun içine eklemeyi unutmayın. 

Boşluk tuşuna basarak ilk testimizi gerçekleştirelim. Benim maymunum çok hızlı ve kontrolü çok zor. Kontrolü kolay bir maymun olmasını sağlamam gerekiyor. Bunun için maymunu hareket ettirecek kodlarda değişiklik yapmalıyım. "10 adım git" kodunu "4 adım git" şeklinde değiştiriyorum. Artık maymunum ekranda daha yavaş hareket edeceği için kontrolü çok daha kolay olacak.

İşi zorlaştırmak için bir muz koymuştum. Bu muzu yiyen maymun biraz büyüyecek ve labirentte gezmesi zorlaşacak. Bunun için yine "eğer ise" kodunu kullanacağız. Ancak bu sefer "Algılama" sekmesinden "değdi mi?" kodunu alıyoruz. 


Muzu yiyen maymunun büyüklüğünün 5 birim büyümesini sağladım. Muza dokunduğu sürece maymun büyüyecek. Bu kodu eklediğimizde muzun da temas anında gizlenmesini sağlamalıyız. Bunu yapmadığımız takdirde maymun muza dokunur ve sürekli büyüyerek labirente sığmaz. Sürekli olarak oyunun başladığı noktaya döner. Muz kuklasını seçip şu kodları yazıyorum. 


Bu kodlar boşluk tuşuna basılmasının ardından çalışmaya başlayacak. Maymun muza dokunduğu anda muz gizlenecek ve maymunun labirente sığmayacak kadar büyümesi engellenmiş olacak. Şimdi oyunu başlatarak maymunun muzu yemesini sağlayın ve oyunu durdurarak tekrar başlamasını sağlayın. Yani muzu yedikten sonra kırmızı durdurma butonuna basın ve tekrar boşluk tuşuna basarak oyunu başlatın. Muzun oyunun yeniden başlamasına rağmen ekranda yer almadığını göreceksiniz. Bunun sebebi kodlarımızda muzun tekrar görünür hale gelmesini sağlamamış olmamız. Boşluk tuşuna basıldığında sadece bir kez görünür hale getirirsek bu hatayı düzeltmiş oluruz.



Kodlarımızın son hali yukarıdaki gibi olmalı. Artık boşluk tuşuna basıldığı anda muz görünür hale gelecek ve maymun muzu yedikten sonra muz kaybolacak. Muz için yazılacak kodlar şimdilik bu kadar. Artık maymunumuza geri dönerek kodlarımızı yazmaya devam edelim.

Baya çalışmışız şimdi teneffüs zamanı... :)
(Dersin devamı için tıklayınız.)

Hiç yorum yok:

Yorum Gönder