11 Mayıs 2016 Çarşamba

(10. Ders) Sayı Tahmin Etme Oyunu

Bugünkü dersimizde sayı tahmin etme oyunu yapacağız. Bu oyun bilmece, bulmaca ve matematiksel işlemler üzerine yapacağımız oyunlar için temel oluşturacaktır.

Oyunun işlem basamakları;
*bilgisayar bir sayı tutacak
*kullanıcının üç hakkı olacak ve üç tahminde bilgisayarın tuttuğu sayıyı bulmaya çalışacak.

Tanımlar:
* İki tane değişken oluşturacağız. Bu değişkenlerden birine bilgisayarın 1-10 arasında rastgele sayı üretmesini sağlayarak ilk değişkene bu sayıyı atacağız. (ilk değişkenin ismi sayı olacak)
*İkinci değişkene ise oyunu oynayan kişinin tahmin ettiği sayıyı aktaracağız. (ikinci değişkenin ismi tahmin olacak)
* İki sayı birbirine eşit olduğunda oyunu kazanmış olacağız.

Kod bloğu şu şekilde olacak:

15 Nisan 2016 Cuma

(9. Ders) Top Sektirme Oyununda Buton Ekleme ve Kaybetme

Top sektirme oyununu 8. derste işlemiştik. Bu dersimizde oyunu biraz daha geliştireceğiz. Sahnenin üst kısımlarına butonlar ekleyeceğiz, top butona her değdiğinde butonların kaybolmasını sağlayacağız.


8. derste topun nasıl hareket edeceğini, çizgiye çarptığında nasıl geri döndüğünü anlatmıştır. Bu derste sadece yeni buton ekleme ve değişkenler ile ilgili işlemleri anlatacağım.

Buton Ekleme:
Yeni karakter çiz komutu ile bir dikdörtgen çiziyoruz.

  
Her yeşil bayrağa tıklandığında görünür olması için göster komutu veriyoruz. Top butona değdiğinde oluşturduğumuz skor değişkenini 1 değiştir diyerek skoru 1 artırmış olacağız ve gizle komutunu vererek butonu gizleyeceğiz.

Top Karakterinde yapılacak değişiklikler:


Top butonlara çarptığında bir engele çarpmış gibi geri dönmesini sağlamalıyız. Bunun için top butona verdiğimiz renklere değdiğinde yönünü gittiği yönün tersine dönebilmesi için kendi yönünden 180 çıkarmamız gerekiyor.
Bu kodu verdiğimizde top butona değdiğinde geri dönecek, fakat bazen algılama sorunları yaşayabiliyor.

12 Nisan 2016 Salı

Blogger Yayınına Kopyaladığınız Yazının Biçim Ayarlarını Ayarlama

Blogger sayfamıza yayın eklerken bazı durumlarda başka internet sitelerinden kopyalama yapabiliyoruz. Fakat kopyaladığımız yazı biçim ayarları (yazı tipi, boyutu, rengi, arkaplan rengi) ile birlikte kopyalandığından blog sitemize uygun olmayabiliyor. Böyle durumlarda biçim ayarlarını iptal edebiliriz.


Biçim ayarlarını iptal etmek istediğimiz yazıyı seçip biçimlendirmeyi kaldır (yukarıdaki resimde kutu içine alınan simge) seçeneğini seçiyoruz. Yazımız ilk haline döndü.

4 Nisan 2016 Pazartesi

(8. Ders) Top Sektirme Oyunu (Dxball) ve Operatörler

Bu haftaki dersimizde her çocuğun ilk oyunlarından olan Dxball top sektirme/zıplatma oyununun yapılışını öğreneceğiz.

Oyunu hazırlamak için yapmamız gerekenler:
  • Sahnenin alt tarafına bir renk şeridi oluşturuyoruz, böylelikle top şeride değdiğinde oyun sonlanmış olacak.
  • Bir çizgi oluşturuyoruz, çizgiye sadece sağa ve sola gitme komutları vererek topu kontrol etmiş olacağız,
  • Top bir başlangıç noktasından başlayacak, kenara ve çizgiye değdiğinde yön değiştirecek.
Çizgi Komutları
Çizgi için sağ yön tuşuna tıklayınca sağa, sol yön tuşuna tıklayınca sola gidecek. Bunu için gerekli komutları geçen hafta yazmıştık. http://bilisimdersim.blogspot.com.tr/2016/03/7-ders-labirent-oyununa-sure-ekleme.html

Topa Eklenecek Komutlar
Topun hareket edebilmesi için 7 adım git ve kenara geldiğinde geri dön komutları verilmelidir.
Bu şekilde çalıştığında top düz bir şekilde hareket edecek, kenara çarptığında da geri dönecektir.
Topun yönünü değiştirebilmek için üzerindeki mavi çizgiyi çapraz şekilde yapmalıyız. Bu kod bloğunu tamamladığımızda top ekranda kendi kendine hareket edecektir.




Top ekranın altında renklendirdiğimiz şeride değdiğinde oyunun sonlanması için eğer ise sürekli komutu içine (hangi rengi vermişsek -ben kırmızı verdim-) kırmızı renge değiyor ise bütün blokları durdur şeklinde komut vermemiz gerekiyor. 

Oyunda asıl önemli nokta top çizgiye çarptığında yön değiştirerek hareket etmesi bunun için operatörler bölümünü kullanacağız.

Operatörler bölümü nedir, ne için kullanılır?
Operatörler, mantıksal ve sayısal işlemleri yapmak için kullandığımız bölümdür. Sayısal olarak toplama, çıkarma, çarpma, bölme, karekök vb birçok işlemi hazır olarak, mantıksal olarak küçüktür, büyüktür, ve, veya, değil gibi karşılaştırmalı işlemleri yapabilirsiniz.

Top çizgiye çarptığında yön değiştirerek hareket etmesi için; top çizgiye değdiğinde aşağıda anlattığım yönlere dönecek ve hareket edecek.

Buradaki -60 ile 60 arasında rastgele bir sayı üret  komutu ile bu sayılar arasında rastgele bir sayı üretmesini ve yönüne dön komutu ile rastgele seçilen yöne doğru hareket etmesini sağlıyoruz.

Yön skalasını gösteren şekil yandadır.

Oyunumuz tamamlanmıştır. Haftaya dxball oyununa skor ekleme, butonlar ekleyerek topun butonları parçalamasını sağlama gibi eklentiler ekleyeceğiz.


30 Mart 2016 Çarşamba

(7. Ders) Labirent Oyununa Süre Ekleme, Değişken Nedir, Nasıl Oluşturulur?

Bu yazımızda 6. derste yaptığımız labirent oyununa eklemeler yapacağız;
  • Yön tuşları ile hareket ettirmek için farklı komutlar kullanacağız,
  • Süre eklemeyi öğreneceğiz.
6. derste karakterimizi yön tuşları ile hareket ettirmeyi öğrenmiştik. Fakat kullandığımız yöntem ile iki tuşa aynı anda bastığımızda (örnek: hem sağ hem üst tuşlarına) sadece tek tuş işliyordu yani sadece tek yöne gidiyordu. Bugün öğreneceğimiz yöntem ile iki tuşa aynı anda bastığımızda (örnek: hem sağ hem üst tuşlarına) çapraz gidebilecek. Komut şu şekilde olacak;

Buradaki önemli husus x ve y koordinatlarını kullanmak;

Sağa gitmek için X karakterini artırmak,
Sola gitmek için X karakterini azaltmak,
Yukarı gitmek için  Ykarakterini artırmak,
Aşağı gitmek için Y karakterini azaltmak,

şeklinde olmalıdır.


Süre ekleyebilmemiz için Değişkenler menüsünden Değişken Oluştur seçeneğini kullanarak değişken oluşturmalıyız. 

Scratch programında değişken ne demektir;

Değişkenler sayıları yada kelimeleri kayıt etmemizi (aklında tutmasını) sağlayan hafıza birimidir.Değişken oluşturarak programda kullanacağımız sayı ve kelimeleri kayıt edebiliriz.


Süre eklemek için programın sayıları tutacağı bir kayıt alanına ihtiyacı olur ve bu alanı değişkenler ile oluştururuz.
Süreyi artırmak için yandaki komutları uygulamalıyız.
Pembe renge değene kadar ( oyun tamamlanana kadar) her saniyede bir değişkeni 1 artırarak süre eklemiş oluruz.

24 Mart 2016 Perşembe

(6. Ders) Karakteri Yön Tuşları İle Hareket Ettirme, Labirent Oyunu

Bu dersimizde labirent oyunu yapacağız.

Labirent oyunu yapabilmek için sahneye çizgiler çiziyoruz yada internetten labirent resmi indirerek sahneye aktarıyoruz. Labirentte kullanacağımız bir karakter ekliyoruz.


Karakteri yön tuşları ile hareket ettirebilmek için aşağıdaki komutları uygulamalıyız;

"Yukarı Ok tuşuna basıldığında" komutunu kullanarak tüm tuşlara görev verebiliriz. 
"0 yönüne dön"  komutu ile yukarı / aşağı / sağa / sola döndürebiliriz.
"5 adım git" komutu ile döndüğümüz yöne göre ilerletebiliriz.
Bu komutları yukarı / aşağı / sağ / sol tuşları için ayrı ayrı yaptığımızda yön tuşları ile hareket etmiş olacak.

Şimdi ise karakterimiz siyah çizgilere değdiğinde yanmış olacağından oyunu bitireceğiz.


Kontrol kısmından Tıklandığında ve Eğer ....... ise sürekli komutunu veriyoruz.
Algılama kısmından rengine değiyor mu komutunu ekleyerek siyah renge değdiğinde hata mesajı verdireceğiz.
1 saniyede konumuna git komutu ile karakteri başlangıç noktasına göndereceğiz.

Bu işlemin aynısını bitiş içinde yaptığımızda oyunumuz tamamlanmış olacak.



11 Mart 2016 Cuma

(5. Ders) Birden Fazla Nesneyi Hareket Ettirme, Ses Ekleme


Bu uygulamada su altı animasyonu yapacağız.  4 karakter ekliyoruz. Canlı adını verdiğimiz nesne yüzerek balığı yakalayıp yiyecek, yüzücü ekranın sonuna kadar gidip dönecek, yengeç durduğu yerde kıskaçlarını hareket ettirecek.

Sahne olarak da su altı sahnesini ekliyoruz.


Balığa ait kod bloğu açıklamaları:

x:-205 y:-142 konumuna git: belirlediğimiz başlangıç noktası
3 saniyede x:71 y:-120 konumuna git: belirlediğimiz konuma 3 saniye içinde gidecek.
1 katman alta geç: burada canlı tarafından yenecek olan balık alt katmana geçerek gerçekçilik sağlanıyor.
Piksellere böl efekti: Balığı piksellere bölerek balığın yendiği anlaşılması için.
2 saniyede x:185 y:113 konumuna git: 2 saniyede canlı ile birlikte aynı konuma gidiyor.



Canlıya ait kod bloğu açıklamaları:

Canlı karakterini ekledikten sonra ikinci kostümü de ekleyerek hareket efekti vereceğiz.

x:-203 y:144 konumuna git: belirlediğimiz başlangıç noktası
3 saniyede x:63 y:-90 konumuna git: belirlediğimiz konuma 3 saniye içinde gidecek (balıkla aynı noktaya gidiyor)
2 saniyede x:173 y:135 konumuna git: 2 saniyede balık ile birlikte aynı konuma gidiyor.(balığı yemiş gibi göstermek için)

Alttaki Sürekli / sonraki kostüm ve 0.4 saniye bekle komutları da hareket ederken kostüm değiştirmesi için.



Diğer karakterlere ait kod blokları:


                                Yüzen adama ait,      Yengeçe ait,        Sahneye ait kod bloğu.


Sahneye eklediğimiz sesin tüm animasyon boyunca devam etmesini istiyorsak sürekli komutu içinde sesi bitene kadar çal komutu vermemiz gerekiyor.