Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore SCRATCH İLE PROGRAMLAMA

SCRATCH İLE PROGRAMLAMA

Published by Sıfır Bir Yayınları, 2022-10-19 06:16:44

Description: SCRATCH İLE PROGRAMLAMA

Keywords: SCRATCH İLE PROGRAMLAMA

Search

Read the Text Version

Oyuncu 2 Kuklasının Rolü Sol tuşu ile sola doğru 10 birim, sağ tuşu ile de sağa doğru 10 birim hareket ederek kendi kalesini, yani kırmızı kaleyi korumaya çalışacaktır. Oyuncu 2 Kodları ve Açıklaması Yeşil bayrak tıklanınca altta yer alan komutlar çalıştırılacaktır (1- OLAYLAR grubu). Ardından oyuncu 2 başlangıç konumu olan x:3 ve Y:153 konumuna gidecektir (2-HAREKET grubu). Sürekli olarak hangi tuşa basıldığını anlamak adında sürekli tekrarla kodunu kullanıyoruz (3-KONTROL). Eğer sağ tuşu basılır ise (4-KONTROL ve ALGILAMA) oyuncu 2 kuklası sağa doğru hareket etmelidir. Sağ demek yatay eksende yani X ekseninde 10 birim hareket etmek anlamına gelir. (5 – HAREKET) Eğer sol tuşu basılır ise (6-KONTROL ve ALGILAMA) oyuncu 2 kuklası sola doğru hareket etmelidir. Sol demek yatay eksen de yani X ekseninde -10 birim hareket etmek anlamına gelir (7 – HAREKET). Şekil 8-46: Oyuncu 2 Kodları OYUNLAR 189

SCRATCH İLE PROGRAMLAMATop (Ball) Kuklasının Rolü • Sürekli hareket eden bu kukla, en önemli kukladır. • Oyunculardan herhangi birine temas ettiğinde, karşı yöne gitmeli. • Kalelerden herhangi birine temas ettiğinde ise rakibine puan kazandırmalıdır. • 60 saniye sonunda hangi oyuncu daha üstün ise onun kazandığını bize söyler. Ball Kuklasının Kodları ve Açıklamaları Şekil 8-47: Ball Kuklasının Kodları 190

1. Yeşil bayrak tıklanınca altında yer alan kodlar çalışacaktır. Bu komut OLAYLAR OYUNLAR grubunda yer alır. 2. Oyuncu1 adında bir değişken tanımlayınız. Bu değişken oyuncu1 yani mavi renkli çubuğun attığı gollerin sayısını tutacaktır. DEĞİŞKENLER grubunda hem oluşturup hem de başlangıç değerini sıfırlayabiliriz. 3. Oyuncu2 adında bir değişken tanımlayınız. Bu değişken oyuncu2 yani yeşil renkli çubuğun attığı gollerin sayısını tutacaktır. DEĞİŞKENLER grubunda hem oluşturup hem de başlangıç değerini sıfırlayabiliriz. 4. Top yani ball kuklasını merkeze alıyoruz. X:0 ve Y:0 noktası merkezi ifade eder. Bu komut HAREKET grubunda yer alır. 5. 15 derece dön komut ile topun düz yerine bir açı ile hareketine başlaması sağlanacaktır. HAREKET grubunda yer alır. 6. Oyun içinde topun hareketi sürekli olacaktır. Bu nedenle sürekli tekrarla komutu kullanılacaktır. KONTROL grubunda bu komut yer alır. 7. Top kuklasının 10 adım git komutu ile hareket etmesini sağlıyoruz. Daha hızlı hareket etmesini isterseniz 10 yerine 15 ya da daha fazla kullanabilirsiniz. Bu komut HAREKET grubunda yer alır. 8. Kenara gelen topun sekmesi oyun içinde kalması ve oyunun devam etmesi açısından çok önemlidir. Bu nedenle kenara geldiyse sektir komutunu kullanıyoruz. Bu komut HAREKET grubunda yer alır. 9. Ball yani top kuklasının, oyuncu1 kuklasına değip değmediğinin tespit edilmesi gerekir. Eğer ... ise komutunu KONTROL grubunda, … değiyor mu? komutunu ise ALGILAMA grubunda görebilirsiniz. 10. Topun yön değiştirmesi için bir başka açıya yönelmesi gerekiyor. Geldiği yönün tersine dönmesi için 180 –yönü yaparak ters açıya dönmesi sağlanıyor. …yönüne yönel komutunu HAREKET grubunda, çıkarma işlemini (“-“) OPERATÖRLER grubunda ve yön komutunu yine HAREKET grubunda bulabilirsiniz. 11. Ball yani top kuklasının, oyuncu2 kuklasına değip değmediğinin tespit edilmesi gerekir. Eğer ... ise komutunu KONTROL grubunda, … değiyor mu? komutunu ise ALGILAMA grubunda görebilirsiniz. 12. Topun yön değiştirmesi için bir başka açıya yönelmesi gerekiyor. Geldiği yönün tersine dönmesi için 180 –yönü yaparak ters açıya dönmesi sağlanıyor. …yönüne yönel komutunu HAREKET grubunda, çıkarma işlemini (“-“) OPERATÖRLER grubunda ve yön komutunu yine HAREKET grubunda bulabilirsiniz. 191

SCRATCH İLE PROGRAMLAMA Şekil 8-48: Ball Kuklasının Kodlarının Devamı 1. Yeşil bayrak tıklanınca altında yer alan kodlar çalışacaktır. Bu komut OLAYLAR grubunda yer alır. 2. Topun kalelere değip değmediğinin kontrolü sürekli olarak yapılacaktır. Bu nedenle sürekli tekrarla komutuna ihtiyaç duyarız. KONTROL grubunda bu komutu bulabilirsiniz. 3. Eğer top siyah renge, yani oyuncu1’in kalesine değiyor ise öncelikle bunun tespit edilmesi gerekir. Eğer ... ise komutunu KONTROL, siyah rengine dokunuyor mu? komutunu ise ALGILAMA grubunda bulabilirsiniz. 4. Eğer top siyah renge değerse bu durumda oyuncu2 gol atmış sayılır ve oyuncu2 isimli değişken 1 arttırılır. DEĞİŞKENLER grubunda bu komutu bulabilirsiniz. 5. Gerçek maçlarda gol atıldığında oyun nasıl orta noktadan başlıyorsa biz de topumuzu merkez noktaya yani x:0, y:0 noktasına taşırız. Bunun için HAREKET grubuna bakınız. 6. Top düz gitmesin diye hafif bir açı veririz. Bunun için de yine HAREKET grubuna bakınız. 7. Eğer top kırmızı renge yani oyuncu2’nin kalesine değiyor ise öncelikle bunun tespit 192

edilmesi gerekir. Eğer ... ise komutunu KONTROL, kırmızı rengine dokunuyor mu? OYUNLAR komutunu ise ALGILAMA grubunda bulabilirsiniz. 8. Eğer top kırmızı renge değerse bu durumda oyuncu1 gol atmış sayılır ve oyuncu1 isimli değişken 1 arttırılır. DEĞİŞKENLER grubunda bu komutu bulabilirsiniz. 9. Gerçek maçlarda gol atıldığında oyun nasıl orta noktadan başlıyorsa biz de topumuzu merkez noktaya yani x:0, y:0 noktasına taşırız. Bunun için HAREKET grubuna bakınız. 10. Top düz gitmesin diye hafif bir açı veririz. Bunun için de yine HAREKET grubuna bakınız. Şekil 8-49: Ball Kuklasının Kodlarının Devamı • 1. Oyunun bitmesi için tanınan süre 60 saniyedir. Bu nedenle zamanlayıcı 60’tan büyük olunca komutuna ihtiyaç duyarız. Bu komut OLAYLAR grubunda yer almaktadır. • 2-3. Eğer oyuncu1, oyuncu2’den daha büyük ise bu durumda OYUNCU 1 KAZANDI mesajı vermemiz gerekir. • 4-5 Eğer oyuncu1, oyuncu2’den daha küçük ise bu durumda OYUNCU 2 KAZANDI mesajı vermemiz gerekir. • 6-7 Eğer oyuncu1, oyuncu2’ye eşit ise bu durumda BERABERE mesajı vermemiz gerekir. • 8 Ardından tüm oyunun durması gerekir. Bu durumda durdur-tümü komutunu kullanırız. Bu komut KONTROL grubunda yer alır. 193

SCRATCH İLE PROGRAMLAMAOyunlar-11: Çarkıfelek Amaç Dönen bir çarkın durduğu noktada, hangi renge temas ettiğine bağlı olarak bize puan verecektir. Proje Görseli Şekil 8-50: Proje Görseli İşlem Adımları 1. Kedi karakterini siliniz. 2. Çark kuklası çizilmesi için öncelikle bir yuvarlak çiziniz ve sonrasında 8 eşit parçaya bölünüz. Burada dikkat edilmesi gereken nokta şudur; aynı renklerin üzerinde aynı puanlar olması gerekir. Mor renk ise IFLAS için ayrılmıştır. 3. Çarkın durduğu noktanın ne olduğunu tespit etmek için AMON isimli kuklayı kullanabilirsiniz. 194

ÇARK Kuklasının Oyundaki Rolü OYUNLAR Boşluk tuşuna basıldığında, çark kuklasının kendi etrafında dönmesi sağlanacaktır. Durduğu anda da AMON kuklasına durduğunun bilgisini vermesi gerekir ki kaç puan aldığı belli olsun. ÇARK Kuklasının Kodları ve Açıklamaları Şekil 8-51: Çark Kuklasının Kodları 1. Yeşil bayrak tıklanınca altında yer alan kodlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Çarkıfelek kuklasını merkeze alıyoruz. X:0, y:0 noktasında gitmesi gerekiyor. HAREKET grubunda bu komutu bulabilirsiniz. 3. Puan isminde bir değişken oluşturuyoruz. Hem puan değişkenini oluşturmak hem de sıfırlamak için DEĞİŞKENLER grubundan faydalanabilirsiniz. 4. Boşluk tuşuna basılınca çarkın dönmesini sağlayacağız. Bu komutu KONTROL grubunda bulabilirsiniz. 5. Çarkın ne kadar döneceğinin rastgele olmasını sağlamak istiyoruz. Bunun için … defa tekrarla (KONTROL) komutu için 10 ile 50 arasında rastgele sayı seç komutunu (OPERATÖRLER) kullanıyoruz. 195

SCRATCH İLE PROGRAMLAMA6. Her defasında 15 derece dönmesini sağlamak için 15 derece dön komutunu kullanıyoruz (HAREKET grubu). 7. Çarkın dönmesi bittiğinde artık çarkın görevi bitmiş ve hangi renkte durduğunun tespiti için AMON kuklasına haber göndermek gerekir. Bunun için haber salmamız gerekir. Carkdurdu isminde bir haber yok, bu haberi biz oluşturuyoruz. İstediğiniz ismi verebilirsiniz (KONTROL). AMON Kuklasının Oyundaki Rolü Amon kuklası, çarkın durdurduğu anda göreve başlar. Hangi renkte ise ona göre bize puan verir. Eğer mor renge değerse puanımızı sıfırlar. AMON Kuklasının Kodları ve Açıklamaları Şekil 8-52: Amon Kuklasının Kodları 196

• 1. Amon kuklası, çarkın durması ile beraber çalışmaya başlayacaktır. Bu nedenle OYUNLAR carkdurdu haberini aldığımda komutunu kullanmamız gerekir. Bu komutu OLAYLAR grubunda bulabilirsiniz. • 2-3 Eğer kırmızı renge dokunuyor ise üzerinde yazan 3000 puan kadar puan değişkenini arttıracaktır. Eğer … ise komutunu KONTROL grubunda, renge dokunuyor mu? komutunu ALGILAMA, puan değişkenini ve arttırmak komutunu da DEĞİŞKENLER grubunda bulabilirsiniz. • 4-5 Eğer yeşil renge dokunuyor ise üzerinde yazan 1000 puan kadar puan değişkenini arttıracaktır. Eğer … ise komutunu KONTROL grubunda, renge dokunuyor mu? Komutunu ALGILAMA ve puan değişkenini arttırmak komutunu da DEĞİŞKENLER grubunda bulabilirsiniz. • 5-6 Eğer mavi renge dokunuyor ise üzerinde yazan 2000 puan kadar puan değişkenini arttıracaktır. Eğer … ise komutunu KONTROL grubunda, renge dokunuyor mu? komutunu ALGILAMA ve puan değişkenini arttırmak komutunu da DEĞİŞKENLER grubunda bulabilirsiniz. • 6-7 Eğer mor renge dokunuyor ise puan 0 olarak belirlenecektir. Eğer … ise komutunu KONTROL grubunda, renge dokunuyor mu? komutunu ALGILAMA ve puanı sıfırlamak için puani … yap komutunu da DEĞİŞKENLER grubunda bulabilirsiniz. 197

SCRATCH İLE PROGRAMLAMAOyunlar-12: Gürültü Metre Amaç Ortamda bulunan gürültünün düzeyini gösteren bir gösterge yapalım. Proje Görseli Şekil 8-53: Proje Görseli İşlem Adımları 1. Kedi kuklasını siliniz. 2. Gösterge çubuğu çiziniz. Çubuğun yönü oldukça önemlidir. Çubuk sağa doğru bakmalıdır. Şekil 8-54: Gösterge Çubuğu 3. Sahneye gösterge ekleyiniz. Bu göstergeyi www.gokhansu.com/projeler adresinde bulabilirsiniz. 198

Gösterge Çubuğunun Rolü OYUNLAR Ortam gürültüsüne göre hareket edecektir. En az gürültü olduğu durumlarda yeşil bölgelerde gezerken gürültü artığında sarı ve kırmızı bölgeye doğru hareket edecektir. Gösterge Çubuğunun Kodları Şekil 8-55: Gösterge Çubuğunun Kodları 1. Yeşil bayrak tıklanınca, aşağısında olan tüm kodlar çalışacaktır. OLAYLAR grubunda bu kodu bulabilirsiniz. 2. Gürültü ölçme işlemi sürekli olarak yapılacağından, sürekli tekrarla komutunu kullandık. Bu komutu da KONTROL grubunda bulabilirsiniz. 3. En önemli kodumuz burada yer alır. Adım adım nasıl yaptığımız göstererek başlayalım. 199

SCRATCH İLE PROGRAMLAMA Şekil 8-56: Birleştirme İşlemlerinin Adımları Öncelikle kodlarımızın açıklamasını yapalım. Ses yüksekliği bildiğiniz üzere en az 0 ve en fazla 100 olabilir. Bizim göstergemiz ise en az -140 derece yönüne, en fazla ise 140 derece yönüne doğru dönmelidir. 200

Şekil 8-57: Göstergenin Max-Min Değerleri En Küçük Ses Yüksekliği Gösterge Çubuğu En Büyük 0 -140 140 100 Dolayısıyla ses yüksekliğinin 1 birim yükselmesi, gösterge çubuğunun 2,8 derece dönmesini gerektirir. İşte bu nedenle ses yüksekliğini 2,8 değeri ile çarpıyoruz. 4. Ölçüm esnasında minik bir bekleme koyuyoruz. Bunun için 0.1 saniye bekleme koyduk. KONTROL grubunda bu kodu bulabilirsiniz. OYUNLAR 201

SCRATCH İLE PROGRAMLAMAOyunlar-13: Balık Adam Avlama Amaç Değişik noktalardan yengecin üzerine doğru gelen balık adamları avlamak. Proje Görseli Şekil 8-58: Proje Görseli İşlem Adımları 1. Kedi kuklasını siliniz. 2. Crab (yengeç) kuklasını ekleyiniz. 3. Diver kuklasını ekleyiniz. 4. Kurşun kuklasını temsil eden bir minik çizgi çiziniz. 202

CRAB (YENGEÇ) Kuklasının Rolü OYUNLAR Aslında yengeç kuklasının herhangi bir rolü yoktur. Kurşun kuklasını üzerinde barındırmaktadır. Sadece kaybetme durumunu yengeç kuklasına yükledik. CRAB Kuklasının Kodları Şekil 8-59: Crab Kuklasının Kodları 1. Yeşil bayrak tıklanınca altında yer alan kodlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Yakalayacağımız balık adamların sayısını tutmak için SKOR isminde bir değişken oluşturunuz ve skor değişkeninin ilk değerini 0 olarak belirleyiniz. Skor değişkenini, DEĞİŞKENLER grubunda bulabilirsiniz. 3. Crab, yani yengeç kuklası için bir başlangıç noktası belirliyoruz. HAREKET grubunda bu komutu bulabilirsiniz. 4. Yengeç kuklasının oyunu kaybetmesi için balık adam, yani diver kuklasının değmesi gerekir. Bu nedenle balık adamın değmesini beklemek durumundadır. ... Olana kadar bekle komutunu KONTROL grubunda, … değiyor mu? komutunu ise ALGILAMA grubunda bulabilirsiniz. 5. Kullanıcıya kaybettiği bilgisi veriliyor. Bunun için GÖRÜNÜM grubunda … saniye boyunca … de komutunu bulabilirsiniz. 203

SCRATCH İLE PROGRAMLAMADIVER (Balık Adam) Kuklasının Rolü Sürekli olarak farklı noktalardan doğan balıkadam, yengeç kuklasına doğru yönelip yengeci avlamaya çalışacaktır. Eğer kurşun yer ise yeniden farklı bir noktada doğacak ve yengece saldırmaya çalışacaktır. DIVER (Balık Adam) Kuklasının Kodları Şekil 8-60: Diver Kuklasının Kodları 1. Yeşil bayrak tıklanınca altında yer alan kodlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Balık adam kuklası sürekli olarak yengece saldıracağı için sürekli tekrarla komutunu kullanıyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 204

3. Balıkadam kuklasının ekranın üst kısımlarında rastgele noktalarda doğmasını OYUNLAR istiyoruz. Bu nedenle -200 ile 200 arasında rastgele bir yatay doğrultuda ve 175 gibi bir dikey noktada, yani üst kısımda doğması gerekir. Konumuna git komutunu HAREKET grubunda ve … ile … arasında rastgele sayı seç komutunu ise OPERATÖRLER grubunda bulabilirsiniz. 4. Yengece doğru yönelmesini sağlıyoruz, çünkü balıkadam kuklasının amacı yengeci avlamak. HAREKET grubunda bu komutu bulabilirsiniz. 5. Balıkadam kuklasının yengece dokunana kadar çabalaması için crab değiyor mu? olana kadar tekrarla komutlarını kullanıyoruz. Olana kadar tekrarla komutunu KONTROL grubunda ve … değiyor mu? komutunu ise ALGILAMA grubunda bulabilirsiniz. 6. Hedefe doğru adım atmasını sağlıyoruz. Bunun için … adım git komutunu kullanıyoruz. Bu komutu HAREKET grubunda bulabilirsiniz. 7. Yengece doğru yapılan bu yolculukta, eğer kurşun ile temas ederse ne yapacağını belirlemek için eğer ... ise komutuna ihtiyacımı var. Bu komutu KONTROL grubunda bulabilirsiniz. Ayrıca ... değiyor mu? komutunu da ALGILAMA grubunda bulabilirsiniz. 8. Balıkadam kurşun kuklasına temas ederse bu durumda kaç adet balıkadam vurulduğunu gösteren skor değişkeni 1 arttırılır. DEĞİŞKENLER grubunda bu komutu bulabilirsiniz. 9. Vurulan balıkadamı yeni bir konuma taşımadan önce gizliyoruz. Çünkü başka bir kurşuna maruz kalabilir. Bu komutu GÖRÜNÜM grubunda bulabilirsiniz. 10. Minik bir beklemenin ardından yeniden doğacak. Bu bekleme komutunu KONTROL grubunda bulabilirsiniz. 11. Yengece doğru yeniden saldıracak olan balık adamın görünür olmasını sağlıyoruz. Bu komutu GÖRÜNÜM grubunda bulabilirsiniz. 12. Balıkadam kuklasının ekranın üst kısımlarında rastgele noktalarda doğmasını istiyoruz. Bu nedenle -200 ile 200 arasında rastgele bir yatay doğrultuda ve 175 gibi bir dikey noktada, yani üst kısımda doğması gerekir. Konumuna git komutunu HAREKET grubunda ve … ile … arasında rastgele sayı seç komutunu ise OPERATÖRLER grubunda bulabilirsiniz. 13. Yengece doğru yönelmesini sağlıyoruz, çünkü balıkadam kuklasının amacı yengeci avlamak. HAREKET grubunda bu komutu bulabilirsiniz. 205

SCRATCH İLE PROGRAMLAMAKURŞUN Kodları ve Açıklaması Şekil 8-61: Kurşun Kodları 1. Yeşil bayrak tıklanınca altında yer alan kodlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Sürekli olarak kurşun, bir noktada yani yengecin arkasında durması gerekiyor. Bunun için sürekli tekrarla komutunu kullanıyoruz, bu komutu KONTROL grubunda bulabilirsiniz. 3. Yengecin konumunu veriyoruz. Çünkü kurşun yengecin altında duruyor. HAREKET grubunda bu komutu bulabilirsiniz. 4. Yengecin altında duran bu kurşunun gizlenmesi gerekiyor. Çünkü balık adama doğru gitmesi için gereken hareket henüz yapılmadı. GÖRÜNÜM grubunda bu komutu bulabilirsiniz. 206

5. Eğer fareye basılırsa kurşunun hareket etmesini tetiklemek istiyoruz. Bunun için fareye OYUNLAR basıldığını tespit etmemiz gerekir. Eğer … ise komutlarını KONTROL grubunda, fareye basılı mı? komutunu ise ALGILAMA grubunda bulabilirsiniz. 6. Fare okuna doğru bakmasını sağlıyoruz. Bunun için fare-imlecine doğru yönel kodunu kullanıyoruz, bu komut HAREKET grubunda yer alır. 7. Artık kurşun kuklası görünür hâle gelmeli ki kullanıcı nereye hareket ettiğini görsün. Bunun için göster komutunu kullanıyoruz, bu komut da GÖRÜNÜM grubunda yer alır. 8. Görünür hâle gelen kurşun, kenara değene kadar hareket edecek. … olana kadar tekrarla (KONTROL) komutu ve kenara değdi mi (ALGILAMA) komutlarını birleştiriyoruz. 9. Hedefe doğru 10 adım atmasını sağlıyoruz. … adım git komutunu HAREKET grubunda bulabilirsiniz. 207

SCRATCH İLE PROGRAMLAMAOyunlar-14: Hareketli Dart Amaç Sürekli hareket eden dart tahtasını vurmaya çalışıyoruz. Fare okunu takip eden kukla, dart tahtası üzerinde farenin tuşuna basıldığında değdiği renge göre puan verecektir. Süre 30 saniyedir. Proje Görseli Şekil 8-62: Proje Görseli İşlem Adımları 1. Kedi kuklasını siliniz. 2. İstediğiniz bir dekor ekleyiniz. 3. Ateş isminde bir kukla çiziniz Şekil 8-63: Ateş Kuklası 208

4. Hedef isminde bir DART tahtası çiziniz Şekil 8-64: Dart Kuklası HEDEF Kuklasının Rolü Sürekli olarak ekranın rastgele bölgelerine doğru süzülerek hareket etmek. HEDEF Kuklasının Kodları Şekil 8-65: Hedef Kuklasının Kodları 1. Yeşil bayrak tıklanınca altında yer alan komutlar çalışacaktır. OLAYLAR grubundan bu komuta erişebilirsiniz. 2. Oyun boyunca DART, yani hedef kuklası hareket edecektir. Bunun için sürekli tekrarlamamız gerekir. KONTROL grubunda bu komutu bulabilirsiniz. 3. Her saniye ekranın farklı bölgelerine doğru süzülmesini sağlıyoruz. Hedefin daha yavaş süzülmesi için 1 saniye yerine 2 saniye, daha hızlı süzülmesi için ise 1 saniye yerine 0.5 saniye gibi değerler deneyiniz. HAREKET grubunda bu komutu bulabilirsiniz. ATEŞ Kuklasının Rolü Sürekli fare okunu takip eden ATEŞ isimli kukla, fare oku tıklandığında eğer hedef kuklasına temas ettiyse hangi rengine temas etmesine bağlı olarak bize puan verecektir. Renkler Puanlar OYUNLAR Beyaz 1 Siyah 2 Mavi 3 Kırmızı 4 Sarı 5 209

SCRATCH İLE PROGRAMLAMAATEŞ Kuklasının Kodları Tüm kodlar ekranda gösterilmemektedir. Şekil 8-66: Ateş Kuklasının Kodları 1. Yeşil bayrak tıklanınca altta yer alan kodlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Sürekli olarak bir takip süreci olacaktır. Bu nedenle sürekli tekrarla komutunu kullanıyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 3. Ateş isimli kuklamız sürekli olarak fare okunu izleyecektir. Bu nedenle fare-imlecine git komutunu kullanıyoruz. Bu komut HAREKET grubunda yer almaktadır. 4. Eğer hedef isimli kuklaya temas ettiğimiz anda aynı zamanda da fareye tıklarsak bize puan verecektir. Hem kuklaya dokunmamız hem de o anda fareye basmamız gerekir. İşte bu nedenle ve isimli operatörü kullanıyoruz. Aşağıda nasıl birleştirdiğimizi görebilirsiniz. 210

Şekil 8-67: Birleştirme Adımları OYUNLAR 5. Eğer beyaz renge değer ise ne yapılacağını anlamak için eğer … ise koduna ihtiyacımız var. Bu komutu KONTROL grubunda, beyaz renge dokunma komutunu da ALGILAMA grubunda bulabilirsiniz. 6. Yukarıdaki tabloda her renk için bir puan belirlemiştik. Beyaz renk için 1 belirlendiği için her beyaz renge değmesinde puan değişkeni 1 artacaktır. DEĞİŞKENLER grubunda bulabilirsiniz. 7. Kullanıcıya aynı anda ses ile de bilgilendirme yapmak daha iyi olacaktır. Bu nedenle temas olduğunda POP sesi çıkarsın istiyoruz. Bu komutu SES grubunda bulabilirsiniz. 8. Hangi renge temas ettiğini kullanıcıya yazı olarak da bildirmek istiyoruz. Bu nedenle kısa süreli olarak beyaz yazmasını sağlıyoruz. Bu komutu GÖRÜNÜM grubunda bulabilirsiniz. 9. Eğer siyah renge değer ise ne yapılacağını anlamak için eğer … ise koduna ihtiyacımız var. Bu komutu KONTROL grubunda, siyah renge dokunma komutunu da ALGILAMA grubunda bulabilirsiniz. 10. Yukarıdaki tabloda her renk için bir puan belirlemiştik. Siyah renk için 2 belirlendiğinden her siyah renge değmesinde puan değişkeni 2 artacaktır. DEĞİŞKENLER grubunda bulabilirsiniz. 211

SCRATCH İLE PROGRAMLAMA11. Kullanıcıya aynı anda ses ile de bilgilendirme yapmak daha iyi olacaktır. Bu nedenle temas olduğunda POP sesi çıkarsın istiyoruz. Bu komutu SES grubunda bulabilirsiniz. 12.Hangi renge temas ettiğini kullanıcıya yazı olarak da bildirmek istiyoruz. Bu nedenle kısa süreli olarak siyah yazmasını sağlıyoruz. Bu komutu GÖRÜNÜM grubunda bulabilirsiniz. NOT Beyaz ve siyah renge temasın kodları ve açıklamaları yukarıda verilmiştir. Mavi kırmızı ve sarı renklere temas işlemlerini de siz yapınız. Unutmayınız her bir renkte farklı puanlar alacaksınız. Sahnenin Rolü Oyunun kuralları genel olarak sahneye yazılır. Bu nedenle hem değişkenleri sıfırlama hem de oyunun 30 saniyede tamamlama işlerini sahnede yapacağız. Sahnenin Kodları Şekil 8-68: Sahnenin Kodları 1. Yeşil bayrak tıklanınca altında yer alan komutlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Puan isminde bir değişken tanımlıyoruz. Bu değişken, dokunduğumuz renklerden kaynaklı olarak alacağımız puanları saklamak için. Başlangıç değerini sıfır olarak belirliyoruz. DEĞİŞKENLER grubunda bu komutu bulabilirsiniz. 3. Süre isminde bir değişken tanımlıyoruz. Bu değişkenin amacı kullanıcıya kalan süre hakkında bilgilendirme yapmasını sağlamak. Başlangıç değeri olarak 30 veriyoruz çünkü oyunumuzun 30 saniye içinde bitmesini istiyoruz. DEĞİŞKENLER grubunda bu komutu bulabilirsiniz. 212

4. Oyun 30 saniye süreceği için 30 defa tekrarla komutu bizim için gereklidir. KONTROL grubunda bu komutu bulabilirsiniz. 5. Her saniye, sürenin bir bir azalmasını sağlamak için 1 saniye bekle komutu kullanıyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 6. Sure değişkeni 1 azaltılıyor. Kullanıcı böylece kalan süreyi ekranda görebiliyor. Bu komutu DEĞİŞKENLER grubunda bulabilirsiniz. 7. Tüm oyunu 30 saniye sürenin sonunda durdurmamız gerekiyor. Bunun için durdur- tümü komutunu kullanıyoruz. Bu komut KONTROL grubunda yer almaktadır. Oyunlar-15: Uzay Savaşları Amaç Sürekli olarak yukarı aşağı giden meteorlardan kaçmak ve meteorları vurmak amacıyla yaptığımız oyunumuzda 3 adet meteor vardır. Her bir meteorun hızı farklıdır. Amaç 60 saniyede en az 20 meteor vurmak ve hayatta kalmaktır. Proje Görseli Şekil 8-69: Proje Görseli OYUNLAR 213

SCRATCH İLE PROGRAMLAMAİşlem Adımları 1. Kedi kuklasını siliniz. 2. Spaceship kuklasını ekleyiniz. 3. Mermi isminde minik bir kukla çiziniz, 4. Meteor isminde 3 adet yuvarlak kukla çiziniz. SPACESHIP Kuklasının Rolü Sürekli olarak fare okuna bağlı şekilde yatay eksende hareket eden spaceship kuklasının amacı meteorlardan kaçmaktır. Aynı zamanda 60 saniye içinde kazanıp kaybetme işlemi de burada yer alır. SPACESHIP kodları Şekil 8-70: Spaceship Kodları 1. Yeşil bayrak tıklandığında aşağıda yer alan işlemler yapılacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Spaceship kuklasını bir başlangıç noktasına götürüyoruz. Bunun ekranın alt taraflarında bir noktada olması önemlidir. HAREKET grubunda bu komutu bulabilirsiniz. 3. Vurduğumuz her bir meteorun sayısını tutacak olan skor isminde bir değişken oluşturuyoruz. Bu değişkenin de başlangıç değerini sıfır olarak belirliyoruz. DEĞİŞKENLER grubunda bu komutu bulabilirsiniz. 4. Spaceship kuklası sürekli olarak fare okunu takip edeceği için sürekli tekrarla komutu kullanmamız gerekir. Bu komutu KONTROL grubunda bulabilirsiniz. 5. Spaceship kuklasının X, yani yatay pozisyonunu, farenin X pozisyonu ile entegre etmek istiyoruz. Bunun amacı fare oku hareket ettikçe spaceship kuklasının da yatay olarak onu takip etmesidir. 214

Şekil 8-71: Spaceship Kodlarının Devamı OYUNLAR • 1. Oyunun tamamlanması için 60 saniye süre belirledik. Zamanlayıcı 60 saniyenin bitiminde çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. • 2-3 Eğer skor isimli değişken 20’den büyük yani 21 ve üstünde ise oyunun kazanıldığını kullanıcıya bildirmek gerekir. • 4-5 Eğer değil ise oyunun kaybedildiğini kullanıcıya bildirmek gerekir (GÖRÜNÜM). • 6. Bu süre ve bildirimler sonucunda da tüm oyunun durdurulması gerekir. Durdur-tümü komutunu KONTROL grubunda bulabilirsiniz. 215

SCRATCH İLE PROGRAMLAMAMERMİ Kuklasının Rolü Bu kuklanın rolü, sürekli olarak spaceship, yani uzay gemisini takip etmek ve eğer boşluk tuşuna basılırsa yukarı doğru hareket etmektir. Meteorlara çarptığında ise meteorları imha eder ve puan verir. MERMİ Kuklasının Kodları Şekil 8-72: Mermi Kuklasının Kodları 1. Yeşil bayrak tıklanınca altında yer alan kodlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Mermi, aşağıdan yukarıya doğru fırlatılacağı için yönünü yukarı olarak belirliyoruz. Scratch de 0 yönü yukarı anlamına gelir. … yönüne yönel komutunu HAREKET grubunda bulabilirsiniz. 3. Mermiyi gizliyoruz. GÖRÜNÜM grubunda bu komutu bulabilirsiniz. 4. Sürekli olarak mermi kuklası çalışacağı için sürekli tekrarla komutuna ihtiyacımız var. Bu komutu KONTROL grubunda bulabilirsiniz. 5. Mermi kuklası, spaceship kuklasının içinde gezecektir. Bunu sağlamak için spaceship git komutunu kullanıyoruz. Bu komut HAREKET grubunda yer alır. 216

6. Eğer boşluk tuşuna basılırsa mermi ile hareket kodlarını yazacağız. Bu nedenle önce, boşuk tuşuna basıldığını anlamamız gerekir. Eğer … ise kodlarını KONTROL, boşluk tuşuna basıldı mı? komutunu ise ALGILAMA grubunda bulabilirsiniz. 7. Gizlenen merminin görünür olmasını sağlıyoruz. GÖRÜNÜM grubunda bu komutu bulabilirsiniz. 8. Görünür hâle gelen mermi kuklasının kenara, yani üst kenara değene kadar hareket etmesini sağlayacağız. Bu nedenle kenara değiyor mu? (ALGILAMA) olana kadar tekrarla (KONTROL) komutlarına ihtiyacımız var. 9. 10 adm git komutu ile hareket etmesini sağlıyoruz. Bu komutu da HAREKET grubunda bulabilirsiniz. METEOR Kuklalarının Rolü Meteor kuklaları sürekli olarak yukarı aşağı doğru hareket edecektir. Eğer spaceship kuklasına temas ederse oyun bitecektir. Eğer mermi kuklasına değer ise hem bize puan verecek hem de farklı bir noktada tekrar doğacaktır. METEOR Kuklasının Kodları ve Açıklamaları Şekil 8-73: Meteor Kuklasının Kodları OYUNLAR 217

SCRATCH İLE PROGRAMLAMA1. Yeşil bayrak tıklanınca çalışmaya başlayacaktır. Bu komutu OLAYLAR grubunda bulabilirsiniz. 2. Meteorlar ekranın üst kısımlarında farklı noktalarda doğacaktır. Bunu sağlamak için öncelikle -220 ile 220 arasında rastgele sayı seç komutunu OPERATÖRLER grubundan alıyoruz. Ardından x:0 y:0 konumuna git komutunu HAREKET grubundan alıyoruz. Y konumunu 150 olarak belirliyoruz. 3. Meteorların aşağı doğru yönelmesini sağlıyoruz. Scratch de 180 yönü AŞAĞI anlamına gelir. … yönüne yönel komutunu HAREKET grubunda bulabilirsiniz. 4. Meteorların hareketleri sürekli olacağı için sürekli tekrarla komutunu kullanıyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 5. Meteorların hareket etmesi için 10 adım git komutunu kullandık. Oyunun daha zevkli olması için her bir meteorun farklı adımlar gitmesini sağlayınız. Örneğin, 6, 8, 10 gibi. HAREKET grubunda bu komutu bulabilirsiniz. 6. Kenara gelen meteorların ters yönde hareket etmesini sağlamak için kenara geldiysen sektir komutunu kullanıyoruz. HAREKET grubunda bu komutu bulabilirsiniz. 7. Meteor eğer mermi kuklasına değer ise bunun tespit edilmesi gerekir. Bu nedenle eğer … ise komutunu kullanıyoruz. KONTROL grubundaki bu komutun içine mermiye değdi mi komutunu ekliyoruz (ALGILAMA). 8. Mermiye değen meteor kuklası, skor değişkenini 1 arttıracaktır. Bunun için DEĞİŞKENLER grubundan komutu bulabilirsiniz. 9. Skor arttırıldıktan sonra, meteorun farklı bir noktaya gitmesi sağlanmalıdır. 10. Meteor eğer spaceship kuklasına değer ise oyunun tümünün durdurulması gerekiyor. Öncelikle spaceship kuklasına değdiğini anlamak gerekir. Eğer … ise komutun KONTROL grubunda, … değiyor mu? komutunu ise ALGILAMA grubunda bulabilirsiniz. 11. Bu durumda tüm oyun durdurulacaktır. Durdur-tümü komutunu KONTROL grubunda bulabilirsiniz. 218

Oyunlar-16: Balık Avlama OYUNLAR Amaç Fare oku ile beraber gezen olta kuklası, farenin basılması ile beraber aşağıdaki balıkları avlamaya çalışıyor. 60 saniyede 40 ve üstünde balık avlamak kazanmak için yeterlidir. Proje Görseli Şekil 8-74: Proje Görseli İşlem Adımları 1. Kedi kuklasını siliniz. 2. Olta için bir kukla oluşturunuz, görünür olsun diye kare bir şekil çizdim, sizler olta şeklinde çiziniz. 3. 3 adet balık ekleyiniz. Kütüphanede yer alan Fish kuklası işinizi görecektir. 4. Eklentilerden KALEM eklentisini de ekleyiniz. 219

SCRATCH İLE PROGRAMLAMAOLTA Kuklasının Rolü Sürekli olarak fare okunu takip eden olta kuklası, fare tuşuna basınca balık yakalamak için aşağıya doğru gidecektir ve arkasında da iz bırakacaktır. OLTA Kuklasının Kodları Şekil 8-75: Olta Kuklasının Kodları 1. Yeşil bayrak tıklandığında altında yer alan komutlar çalışacaktır. OLAYLAR grubunda bulabilirsiniz. 2. Puan isminde bir değişken oluşturuyoruz. Bu değişken yediğimiz balıkların sayısını saklayacaktır. DEĞİŞKENLER grubundan hem oluşturunuz hem de başlangıç değeri olarak da sıfır veriniz. 3. Olta sürekli olarak fare okunu takip edeceği için sürekli tekrarla komutunu kullanıyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 220

4. Sürekli olarak fare okunu takip etmesi için HAREKET grubundan fare-imleci git OYUNLAR komutunu kullanıyoruz. 5. Eğer fareye basılırsa olta harekete geçecek ama önce fareye basılıp basılmadığını tespit etmek gerekir. Bunun için eğer … ise … değilse komutunu kullanıyoruz. DEĞİLSE kullanma nedenimiz fare basılmadığında ekranın kalem etkisinden arındırmak, yani çizdiğimiz olta ipini silmek. 6. Fare basıldığında KALEM grubundan kalemi bastır komutu ile çizime hazır hâle getiriyoruz. 7. 180 yönüne yönel komutu, oltanın yönünü aşağı çevirmeye yarar. HAREKET grubunda bu komutu bulabilirsiniz. 8. Oltanın ekranın en alt noktasına değene kadar ilerlemesini istiyoruz. Bunun için kenara değiyor mu? (ALGILAMA) olana kadar tekrarla (KONTROL) komutlarına ihtiyacımız var. 9. Adım atmasını sağlayarak oltanın aşağıya doğru hareket etmesini sağlıyorum. 10 adım git komutunu HAREKET grubunda bulabilirsiniz. 10. Eğer fareye basılı değilse ekranda çizdiğimiz tüm çizgiler silinsin istiyoruz. Tümünü sil komutunu KALEM grubunda bulabilirsiniz. Şekil 8-76: Olta Kuklasının Kodlarının Devamı • 1. Oyunun tamamlanması için 60 saniye süre belirledik. Zamanlayıcı 60 saniyenin bitiminde çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. • 2-3 Eğer puan isimli değişken 40’dan büyük, yani 41 ve üstünde ise oyunun kazanıldığını kullanıcıya bildirmek gerekir. • 4-5 Eğer değil ise oyunun kaybedildiğini kullanıcıya bildirmek gerekir (GÖRÜNÜM). • Bu süre ve bildirimler sonucunda da tüm oyunun durdurulması gerekir. Durdur-tümü komutunu KONTROL grubunda bulabilirsiniz. 221

SCRATCH İLE PROGRAMLAMAFISH Kuklasının Rolü Fish, yani balık kuklalarının görevi, sürekli olarak sağa sola doğru hareket etmektir. Ayrıca olta kendisine değdiğinde de bize puan kazandıracaktır. FISH Kuklasının Kodları ve Açıklamaları Şekil 8-77: Fish Kuklasının Kodları 222

1. Yeşil bayrak tıklanınca komutu ile balıkları hareket ettirmeye başlıyoruz. Bu komutu OYUNLAR OLAYLAR grubunda bulabilirsiniz. 2. Balık, yani FISH kuklasının 4 adet birbirinden farklı kılığı vardır. Bu nedenle 1 ile 4 arasında rastgele sayı seç (OPERATÖRLER) komutu ile kılığına geç (GÖRÜNÜM) komutunu birleştirdik. Böylece farklı farklı desenli balıklar önümüze gelecek. 3. Göster komutu ile balığın ilk başta görünür olmasını sağlıyoruz. Bu komutu GÖRÜNÜM grubunda bulabilirsiniz. 4. 90 yönüne, yani sağa doğru yönelmesini sağlıyoruz. Bildiğiniz üzere balıklar sağa sola doğru hareket edecekler. Bu komutu HAREKET grubunda bulabilirsiniz. 5. Dönüş stilini sol-sağ yap komutu, balığın sadece sağa sola doğru yönelmesini sağlar. Eğer bu komut seçilmezse balık tepetaklak olabilir. Bu komutu HAREKET grubunda bulabilirsiniz. 6. Y konumunu -50 ile -150 arasında bir yerde tutuyoruz. Bunun sebebi, balıkların ekranın alt kısımlarında doğmasını sağlamaktır. 7. Artık balıklar sürekli olarak hareket etmeliler. Bunun için sürekli tekrarla komutunu kullanmamız gerekir. KONTROL grubunda bu komutu bulabilirsiniz. 8. Balığın hareket etmesi için … adım git komutunu kullanıyoruz. Bu komutu HAREKET grubunda bulabilirsiniz. Bu oyundaki tüm balıkların kodları aynıdır; ancak oyunun daha keyifli olması için adım sayılarını 8-10-12 vb. değiştiriniz. 9. Kenara gelen balıkların ters yönde hareket etmesini sağlamak için kenara geldiyse sektir komutunu kullanıyoruz. Bu komut HAREKET grubunda yer alır. 10. Eğer oltaya değer ise ne yapacağını belirleyeceğiz, ancak ondan önce deyip değmediğini tespit etmek gerekir. Bunun için eğer … ise komutuna ihtiyacımız var, bu komut KONTROL grubunda yer alır. Oltaya değiyor mu ise ALGILAMA grubunda yer alır. 11. Oltaya değen balık öncelikle bize puan kazandıracaktır. Puan değişkenini 1 arttırıyoruz. Bu komutu DEĞİŞKENLER grubunda bulabilirsiniz. 12. Yakalanan balık başka bir noktada yeniden doğacaktır. Ancak öncelikle balığı gizlememiz gerekir. Gereken komutu GÖRÜNÜM grubunda bulabilirsiniz. 13. 1 ile 5 saniye arasında rastgele bir sayı seçip (OPERATÖRLER) o kadar saniye beklemesini (KONTROL) sağlıyoruz. 14. Yine -50 ile -150 arasında herhangi bir rastgele konumda doğmasını sağlıyoruz. 15. Balık, yani FISH kuklasının 4 adet birbirinden farklı kılığı vardır. Bu nedenle 1 ile 4 arasında rastgele sayı seç (OPERATÖRLER) komutu ile kılığına geç (GÖRÜNÜM) komutunu birleştirdik. Böylece farklı farklı desenli balıklar önümüze gelecek. 16. Yeni yeri ve yeni kılığı belli olan balık, artık yeniden görünür hâle gelmelidir. Bunun için GÖRÜNÜM grubundan faydalanabilirsiniz. 223

SCRATCH İLE PROGRAMLAMAOyunlar-17: Kelebek Yiyen Kurbağa Amaç Fare okunu takip eden dil isimli kukla, farenin basılması ile beraber kelebek avlamaya çalışacaktır. 60 saniyede 50 kelebek yakalarsa kurbağa doyacaktır. Aksi hâlde aç kalacaktır. Proje Görseli Şekil 8-78: Proje Görseli İşlem Adımları 1. Kedi kuklasını siliniz. 2. Butterfly isimli kukladan 2 adet ekleyiniz. 3. Frog isimli kukla ekleyiniz. 4. Dili temsil eden yuvarlak bir nesne çiziniz. Adını da dil olarak belirleyiniz. 224

FROG (Kurbağa) Kuklasının Rolü OYUNLAR Aslında frog kuklasının bir rolü yok. Sadece bulunduğu yerde durması gerekiyor. Ancak puanın sıfırlanması ve zamanlayıcı için kullanacağız. FROG Kuklasının Kodları Şekil 8-79: Frog Kuklasının Kodları 1. Yeşil bayrak tıklanınca altındaki kodlar çalışacaktır. OLAYLAR grubunda bu kodu bulabilirsiniz. 2. Puan isimli değişken oluşturuluyor ve aynı zamanda da başlangıç değeri olarak “0” veriliyor. DEĞİŞKENLER grubunda bu komutu bulabilirsiniz. 3. Başlangıç konumunu belirliyoruz. Bu komutu HAREKET grubunda bulabilirsiniz. Şekil 8-80: Frog Kodlarının Devamı • 1. Oyunun tamamlanması için 60 saniye süre belirledik. Zamanlayıcı 60 saniyenin bitiminde çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. • 2-3 Eğer puan isimli değişken 50’den büyük yani 51 ve üstünde ise oyunun kazanıldığını kullanıcıya bildirmek gerekir. 225

SCRATCH İLE PROGRAMLAMA• 4-5 Eğer değil ise oyunun kaybedildiğini kullanıcıya bildirmek gerekir (GÖRÜNÜM). Bu süre ve bildirimler sonucunda da tüm oyunun durdurulması gerekir. Durdur-tümü komutunu KONTROL grubunda bulabilirsiniz. DİL Kuklasının Rolü En önemli kuklalardan birisi de bu kukladır. Normalde kurbağanın dili civarında duran bu dil isimli kukla, fareye basılması ile beraber bir çizgi ile o noktaya gidecektir. Ve fareye basılmasının bırakılması ile de tekrar yerine dönecektir. DİL Kuklasının Kodları ve Açıklamaları Şekil 8-81: Dil Kuklasının Kodları 226

1. Yeşil bayrak tıklanınca altında yer alan komutlar çalışacaktır. OLAYLAR grubunda bu OYUNLAR komutu bulabilirsiniz. 2. Kalem kalınlığını 10 olarak belirliyoruz. KALEM eklentisini yükledikten sonra bu komutu bulabilirsiniz. 3. Dil kuklası sürekli olarak çalışacağı için sürekli tekrarla komutunu kullanmak gerekir. Bu komut da KONTROL grubunda yer alır. 4. Eğer fareye basılır ise ne yapılacağını belirleyeceğiz. Bunun için eğer … ise komutunu KONTROL grubundan kullanıyoruz. Fareye basıldı mı? komutuna da ALGILAMA grubundan erişebilirsiniz. 5. Kalemi bastır komutu ile çizim yapmaya başlayacağımızı belirtiyoruz. 6. Dil kuklasını başlangıç noktasına taşıyoruz. Bunun için HAREKET grubunu kullanıyoruz. 7. Minik bir bekleme ekliyoruz. 1 saniye bekle komutunda düzenleme yapıyoruz ve 0.2 olarak değiştiriyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 8. Fare oku neredeyse dil kuklası oraya gitsin istiyoruz. Bunun için fare-imlecine git komutunu kullanıyoruz ki bu komut da HAREKET grubunda yer alır. 9. Tekrar bir bekleme ekliyoruz. 1 saniye bekle komutunda düzenleme yapıyoruz ve 0.2 olarak değiştiriyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 10. Ardından tekrar başlangıç noktasına dönüyoruz. HAREKET grubunda bu komutu bulabilirsiniz. 11. Çizimi bitirdiğimizi belirtiyoruz. Bunun için kalemi kaldırmamız gerekiyor. Bu komutu KALEM grubunda bulabilirsiniz. 12. Ardından çizdiğimiz tüm okları silmemiz gerekiyor. Bunun için yine KALEM grubundan tümünü sil komutunu kullanıyoruz. 227

SCRATCH İLE PROGRAMLAMABUTTERFLY Kuklasının Rolü Sürekli olarak etrafta gezinen kelebekler, dil isimli kuklanın değmesi ile beraber bize puan kazandıracak ve başka bir noktada doğacaktır. BUTTERFLY Kuklasının Kodları ve Açıklamaları Şekil 8-82: Butterfly Kuklasının Kodları 1. Yeşil bayrak tıklanınca altında yer alan komutlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Kelebek kuklalarının sadece sağa ve sola dönmesini sağlıyoruz. Bu komutu HAREKET grubunda bulabilirsiniz. 3. Sağa doğru yönelerek başlamasını istiyoruz. Bunun için 90 yönüne yönel komutunu kullanıyoruz. 90, sağ anlamına gelmektedir. HAREKET grubunda bu komutu bulabilirsiniz. 228

4. Sürekli tekrarla komutu ile içinde yer alan tüm kuralların sürekli geçerli olduğunu OYUNLAR ifade ediyoruz. Bu komutu KONTROL grubunda bulabilirsiniz. 5. 3 adım git komutu ile kelebeklerin hareket etmesini sağlıyoruz. Bu komutu HAREKET grubunda bulabilirsiniz. 6. Kelebeklerin daha gerçekçi hareket etmesini sağlamak için biraz dönüş açısı veriyoruz. Bunu yaparken -2 ile +2 arasında rastgele sayı seç komutu ile minik açılar verdiriyoruz. Bunu da …derece dön komutu ile beraber kullanıyoruz. 7. Elbette kenara gelen kelebeklerin sekmesi ve geldikleri yönün tersine dönmeleri gerekiyor. Bunun için de kenara geldiyse sektir komutunu kullanıyoruz ki bu komut da HAREKET grubunda yer alır. 8. Uçan kelebekler, eğer dil kuklasına değer ise ne yapılacağını belirlemek gerekir. İşte bu nedenle eğer … ise (KONTROL) komutunun içine dile değiyor mu? komutunu (ALGILAMA) ekliyoruz. 9. Dil kuklasına temas edince öncelikle puan isimli değişkeni 1 arttırmak gerekir. Bu komutu DEĞİŞKENLER grubunda bulabilirsiniz. 10. Dil kuklasına temas eden kelebeğin, farklı bir noktaya gitmesini sağlamak için rastgele konuma gitmesini sağlıyoruz. Bu komutu HAREKET grubunda bulabilirsiniz. 11. Dil kuklasına temastan sonra, yine yönünü 90 yani sağa doğru yönelmesini sağlıyoruz. 229

SCRATCH İLE PROGRAMLAMAOyunlar-18: Masa Saati Yapalım Amaç Sadece kalem eklentisi kullanarak saat, dakika ve saniyeyi gösteren bir masa saati yapalım. Proje Görseli Şekil 8-83: Analog Saat İşlem Adımları 1. Kedi kuklasını siliniz. 2. Minik bir yuvarlak kukla oluşturunuz ki tüm çizimler bu kukla üzerinden yürüyecektir. Adına YUVARLAK ismini koyabilirsiniz. 3. İnternetten boş bir saat dekoru bulunuz ve sahneye ekleyiniz. 230

YUVARLAK Kuklanın Rolü OYUNLAR Hem saati gösteren AKREP, hem dakikayı gösteren YELKOVAN hem de saniye ibrelerini oluşturmak bu minik kuklanın görevidir. YUVARLAK Kuklasının Kodları ve Açıklamaları Şekil 8-84: Yuvarlak Kuklasının Kodları 1 1. Yeşil bayrak tıklanınca altında yer alan komutlar çalışacaktır. Bu komutu OLAYLAR grubunda bulabilirsiniz. 2. Bildiğiniz üzere saat, dakika, saniye ibareleri sürekli olarak oluşur. Bu nedenle sürekli tekrarla komutunu kullanıyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 3. Her aşamada ekranı temizlememiz gerekiyor. Bunun için KALEM grubundan tümünü sil komutunu kullanıyoruz. 4. Saati gösteren AKREP’i çizmek için saat isminde bir haber salıyoruz. OLAYLAR grubunda haberini sal komutundan yeni bir haber oluşturuyoruz ve adını SAAT olarak belirliyoruz. 5. Dakikayı gösteren YELKOVAN’ı çizmek için dakika isminde bir haber salıyoruz. OLAYLAR grubunda haberini sal komutundan yeni bir haber oluşturuyoruz ve adını dakika olarak belirliyoruz. 6. Saniyeyi gösteren ibreyi çizmek için saniye isminde bir haber salıyoruz. OLAYLAR grubunda haberini sal komutundan yeni bir haber oluşturuyoruz ve adını saniye olarak belirliyoruz. 231

SCRATCH İLE PROGRAMLAMA Şekil 8-85: Yuvarlak Kuklasının Kodları 2 1. Saat haberi geldiğinde çalışmaya başlayacak kodların başlatıcısı konumunda olan bu komut OLAYLAR grubunda yer alır. 2. Yuvarlak isimli kuklanın, X:0 ve Y:0 konumuna gitmesini sağlıyoruz. HAREKET grubunda bu komutu bulabilirsiniz. 3. Saati gösteren akrep için kalem kalınlığını 10 yapıyoruz. Akrep, diğer ibrelerden daha kalın olacaktır. KALEM grubunda bu komutu bulabilirsiniz. 4. Saati gösteren akrebin rengini siyah yapıyoruz. Bu komutu KALEM grubunda bulabilirsiniz. 5. Artık çizim yapmaya başlayacağız, bunun için kalemi bastırmak gerekir. KALEM grubunda bu komutu bulabilirsiniz. 6. Bildiğiniz üzere, 12 adet saat var ve 360 derecelik bir çerçevede hareket ederler. Bu nedenle her bir saat dilimi 360/12, yani 30 derecelik bir alanda hareket eder. İşte bu nedenle şimdiki saat ile 30 dereceyi çarpıyoruz ve bu yöne doğru yöneliyoruz… 232

Şekil 8-86: Birleştirme Adımları OYUNLAR 7. Saati gösteren akrep ibresi, en kısa ibredir. Bu nedenle 75 adım git komutu yeterli olacaktır. Bu komutu HAREKET grubunda bulabilirsiniz. 8. Çizim işi bitince kalemi kaldırmamız gerekiyor. Bu nedenle kalemi kaldır komutunu kullanıyoruz ki bu komut da KALEM grubunda yer alır. 9. Tekrar başlangıç noktasına dönmek ve diğer ibreleri çizmek gerekir. Bu nedenle x:0 ve y:0 konumuna gideriz. HAREKET grubunda bu komutu bulabilirsiniz. 233

SCRATCH İLE PROGRAMLAMA Şekil 8-87: Yuvarlak Kuklasının Kodları 3 1. Dakika haberi geldiğinde çalışmaya başlayacak kodların başlatıcısı konumunda olan bu komut OLAYLAR grubunda yer alır. 2. Yuvarlak isimli kuklanın, X:0 ve Y:0 konumuna gitmesini sağlıyoruz. HAREKET grubunda bu komutu bulabilirsiniz. 3. Dakikayı gösteren yelkovan için kalem kalınlığını 6 yapıyoruz. Yelkovan, akrep ibresinden daha ince olacaktır. KALEM grubunda bu komutu bulabilirsiniz. 4. Dakikayı gösteren yelkovanın rengini mavi yapıyoruz. Bu komutu KALEM grubunda bulabilirsiniz. 5. Artık çizim yapmaya başlayacağız, bunun için kalemi bastırmak gerekir. KALEM grubunda bu komutu bulabilirsiniz. 6. Bildiğiniz üzere, 60 adet dakika var ve 360 derecelik bir çerçevede hareket ederler. Bu nedenle her bir dakika dilimi 360/60, yani 6 derecelik bir alanda hareket eder. İşte bu nedenle şimdiki dakika ile 6 dereceyi çarpıyoruz ve bu yöne doğru yöneliyoruz. 7. Dakikayı gösteren yelkovan ibresi, akrepten daha uzundur. Bu nedenle 85 adım git komutu yeterli olacaktır. Bu komutu HAREKET grubunda bulabilirsiniz. 234

8. Çizim işi bitince kalemi kaldırmamız gerekiyor. Bu nedenle kalemi kaldır komutunu OYUNLAR kullanıyoruz ki bu komut da KALEM grubunda yer alır. 9. Tekrar başlangıç noktasına dönmek ve diğer ibreleri çizmek gerekir. Bu nedenle x:0 ve y:0 konumuna gideriz. HAREKET grubunda bu komutu bulabilirsiniz. Şekil 8-88: Yuvarlak Kuklasının Kodları 4 1. Saniye haberi geldiğinde çalışmaya başlayacak kodların başlatıcısı konumunda olan bu komut OLAYLAR grubunda yer alır. 2. Yuvarlak isimli kuklanın, X:0 ve Y:0 konumuna gitmesini sağlıyoruz. HAREKET grubunda bu komutu bulabilirsiniz. 3. Saniye için kalem kalınlığını 3 yapıyoruz. Saniye, yelkovan ibresinden daha ince olacaktır. KALEM grubunda bu komutu bulabilirsiniz. 4. Saniyenin rengini kırmızı yapıyoruz. Bu komutu KALEM grubunda bulabilirsiniz. 5. Artık çizim yapmaya başlayacağız, bunun için kalemi bastırmak gerekir. KALEM grubunda bu komutu bulabilirsiniz. 235

SCRATCH İLE PROGRAMLAMA6. Bildiğiniz üzere, 60 adet saniye var ve 360 derecelik bir çerçevede hareket ederler. Bu nedenle her bir saniye dilimi 360/60, yani 6 derecelik bir alanda hareket eder. İşte bu nedenle şimdiki saniye ile 6 dereceyi çarpıyoruz ve bu yöne doğru yöneliyoruz… 7. Saniye ibresi en uzun ibredir. Bu nedenle 100 adım git komutu yeterli olacaktır. Bu komutu HAREKET grubunda bulabilirsiniz. 8. Çizim işi bitince kalemi kaldırmamız gerekiyor. Bu nedenle kalemi kaldır komutunu kullanıyoruz ki bu komut da KALEM grubunda yer alır. 9. Tekrar başlangıç noktasına dönmek ve diğer ibreleri çizmek gerekir. Bu nedenle x:0 ve y:0 konumuna gideriz. HAREKET grubunda bu komutu bulabilirsiniz. 236

Oyunlar-19: Basit Pac-Man Amaç Pac-man oyununun basit bir hâlini yapmak istiyoruz. Yön tuşları ile topları yakalamaya çalışan pac-man kuklası, aynı zamanda canavarlardan kaçmaya çalışıyor. Proje Görseli Şekil 8-89: Proje Görseli Costume2 İşlem Adımları 1. Kedi kuklasını siliniz. 2. Pacman kuklası çiziniz. Bu kuklanın 2 kılığı vardır. Costume1 Şekil 8-90: Ağzı Kapalı pacman Şekil 8-91: Ağzı Açık pacman OYUNLAR 237

SCRATCH İLE PROGRAMLAMA3. Canavar kuklası çiziniz. Biz oyunda 3 adet farklı canavar kullandık. 4. Ball isimli kuklayı kütüphaneden ekleyiniz. PACMAN Kuklasının Oyundaki Rolü Pacman kuklası canavarlardan kaçarak puan toplamaya çalışacaktır. Pacman kuklası orijinal oyunda olduğu gibi sürekli olarak ağzını açıp kapatacaktır. Bu nedenle 2 adet kılığı vardır. PACMAN Kuklasının Kodları ve Açıklamaları Şekil 8-92: Pacman Kuklasının Kodları 1. Yeşil bayrak tıklanınca altında yer alan tüm kodlar çalışacaktır. OLAYLAR grubunda bu komutu bulabilirsiniz. 2. Pacman kuklası sürekli olarak ağzını açıp kapatacağı için sürekli tekrarla komutu kullanıyoruz. KONTROL grubunda bu komutu bulabilirsiniz. 3. Costume1 kılığına geçmemiz için ağzı kapatıyoruz. Bu komutu GÖRÜNÜM grubunda bulabilirsiniz. 4. Bir süre bekleme yapmamız gerekiyor. Bunun için 1 saniye bekle komutunu kullanıyoruz. Siz dilerseniz süreyi kısaltabilir ya da uzatabilirsiniz. KONTROL grubunda bu komutu bulabilirsiniz. 5. Costume2 kılığına geçmemiz için ağzı açıyoruz. Bu komutu GÖRÜNÜM grubunda bulabilirsiniz. 6. Bir süre bekleme yapmamız gerekiyor. Bunun için 1 saniye bekle komutunu kullanıyoruz. Siz dilerseniz süreyi kısaltabilir ya da uzatabilirsiniz. KONTROL grubunda bu komutu bulabilirsiniz. 238


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook