Labirentteki Gemi
Bir küçük botu labirentten hedifine götürme oyunu
1. Adım: Başlarken
Etkinlik Kontrol Listesi
-
'Boat Race' Scratch projesini jumpto.cc/boat-go adresinden çevrimiçi olarak açın veya jumpto.cc/boat-get adresinden indirin ve çevrimdışı düzenleyiciyi kullanıyorsanız açın.
-
Projede bir tekne sprite ve aşağıdakilerle birlikte bir kurs alanı bulunmaktadır:
- Teknenizden kaçınması gereken ahşap;
- Teknenin almak zorunda olduğu bir ıssız ada.
Adım 2: Tekneyi kontrol etmek
Etkinlik Kontrol Listesi
-
Tekneyi farenle kontrol edeceksin. Bu kodu teknenize ekleyin:
when flag clicked point in direction
0
go to x:
-190
y:
-150
forever point towards
mouse-pointer
move
1
steps end
-
Bayrağa tıklayarak ve fareyi hareket ettirerek teknenizi test edin. Tekne fareye doğru gidiyor mu?
Not: Scratch'ta şu anda bir hata var, bu da teknenizin fare imlecine doğru hareket edemeyeceği anlamına geliyor. Bu durumda, {.blockmotion} bloğuna
point towards
olan oka tıklayın ve 'fare imlecini' tekrar seçin. -
Tekne fare imlecine ulaştığında ne olur?
Bunu durdurmak için, kodunuza bir
if
{.blockcontrol} bloğu eklemeniz gerekir, böylece tekne yalnızca fareden 5 pikselden daha uzaktaysa hareket eder. -
Sorunun çözülüp çözülmediğini kontrol etmek için teknenizi tekrar test edin.
Projeni sakla
Adım 3: Çarpma!
Tekneniz ahşap engellerin üzerinden yelken açabilir! Bunu düzeltelim.
Etkinlik Kontrol Listesi
-
Tekneniz için 2 kostüme, bir normal kostüme ve bir teknenin çöktüğü zamana ihtiyacınız olacak. Tekne kostümünüzü çoğaltın ve 'normal' ve 'isabet' olarak adlandırın.
-
'Hit' kostümünü tıklayın ve teknenin parçalarını almak ve hareket ettirmek ve döndürmek için 'Seç' aracını seçin. Teknenizi düşmüş gibi görünmesini sağlayın.
-
Bu kodu teknenize,
forever
{.blockcontrol} döngüsünün içine ekleyin, böylece kahverengi ahşap parçalara dokunduğunda çarpışır:if
touching color
?
then switch costume to
hit
say
Noooooo!
for
1
secs switch costume to
normal
point in direction
0
go to x:
-215
y:
-160
end
Bu kod
forever
{.blockcontrol} döngüsünün içindedir, böylece kodunuz teknenin çarpıp çarpmadığını kontrol eder. -
Ayrıca teknenizin her zaman 'normal' gibi görünmeye başladığından emin olmalısınız.
-
Şimdi tahta bir bariyerden geçmeye çalışırsanız, teknenizin çarptığını ve başa döndüğünü görmelisiniz.
Projeni sakla
Zorluk: Kazanma!
Teknenizin koduna {.blockcontrol} deyimi ekler misiniz, böylece oyuncu ıssız adaya ulaştığında kazanır?
Tekne sarı çöl adasına ulaştığında 'YEAH!' ve sonra oyun durmalı. Bu kodu kullanmanız gerekecek:
say
YEAH!
for
1
secs stop
all
Projeni sakla
Zorluk: Ses efektleri
Tekne çöktüğünde veya sonunda adaya ulaştığında oyuna ses efektleri ekleyebilir misin? Arka plan müziği bile ekleyebilirsiniz (bu konuda yardıma ihtiyacınız olursa önceki 'Rock Band' projesine bakın).
Projeni sakla
Adım 4: Zaman Deneme
Oyuna bir zamanlayıcı ekleyelim, böylece oyuncu ıssız adaya olabildiğince çabuk ulaşmak zorunda.
Etkinlik Kontrol Listesi
-
Sahnenize,
time
{.blockdata} adlı yeni bir değişken ekleyin. Ayrıca yeni değişkeninizin görüntüsünü de değiştirebilirsiniz. Yardıma ihtiyacınız olursa, 'Ghostbusters' projesine bakın. -
Bu kodu sahnenize ekleyin, böylece tekne çöl adasına ulaşıncaya kadar zamanlayıcı sayılır:
when flag clicked set
time
to
0
forever wait
0.1
secs change
time
by
0.1
end
-
Bu kadar! Oyununuzu test edin ve çöl adasına ne kadar çabuk gidebileceğinizi görün!
Projeni sakla
Adım 5: Engeller ve açılmalar
Bu oyun çok fazla kolay - en ilginç hale getirmek için şeyler ekleyelim.
Etkinlik Kontrol Listesi
-
Öncelikle, teknenizi hızlandıracak olan oyununuza biraz 'destek' ekleyelim. Sahne arkaplanınızı düzenleyin ve beyaz takviye oklarını ekleyin.
-
Artık teknenizin
forever
{.blockcontrol} döngüsüne bir kod ekleyebilirsiniz, böylece beyaz bir yükseltici dokunulduğunda 3 adım daha ilerler.if
touching color
?
then move
3
steps end
-
Ayrıca teknenizden kaçınmanız gereken bir eğirme kapısı da ekleyebilirsiniz. Şuna benzeyen 'gate' adlı yeni bir sprite ekleyin:
Kapının renginin diğer ahşap bariyerlerle aynı olduğundan emin olun.
-
Gate sprite'ın ortasını ayarlayın.
-
Kapınıza kod ekleyin,
forever
yavaşça dönmesini sağlayın {.blockcontrol}. -
Oyununu test et. Şimdi kaçınmanız gereken bir döner kapıya sahip olmalısınız.
Projeni sakla
Zorluk: Daha fazla engel!
Oyuna daha fazla engel ekleyebilir misin? İşte bazı fikirler:
- Fonunuza yeşil sümük ekleyebilirsiniz; bu, oyuncuyu dokunduklarında yavaşlatır. Bunu yapmak için
wait
{.blockcontrol} bloğunu kullanabilirsiniz:
wait
0.01
secs
- Bir kütük veya köpekbalığı gibi hareketli bir nesne ekleyebilirsiniz!
Bu bloklar size yardımcı olabilir:
move
1
steps if on edge, bounce
Yeni nesneniz kahverengi değilse, tekne kodunuza eklemeniz gerekir:
if
touching color
?
or
touching
shark
?
then end
Projeni sakla
Zorluk: Daha fazla tekne!
Oyununuzu 2 oyuncu arasındaki yarışa çevirebilir misiniz?
- Tekneyi kopyalayın, 'Player 2' olarak yeniden adlandırın ve rengini değiştirin.
- Bu kodu değiştirerek Oyuncu 2'nin başlangıç ??pozisyonunu değiştirin:
go to x:
-190
y:
-150
- Tekneyi kontrol etmek için fareyi kullanan kodu silin:
if
>
5
then point towards
mouse-pointer
move
1
steps end
… Ve ok tuşlarını kullanarak tekneyi kontrol etmek için kodla değiştirin.
Tekneyi ileriye taşımak için ihtiyacınız olan kod şudur:
if
key
up arrow
pressed?
then move
1
steps end
Sol ve sağ ok tuşlarına basıldığında tekneyi {.blockmotion} konumuna turn
için de koda ihtiyacınız olacak.
Projeni sakla
Zorluk: Daha fazla seviye!
Ek fonlar oluşturabilir ve oyuncunun seviyeler arasında seçim yapmasına izin verebilir misiniz?
when
space
key pressed next backdrop
Kaynak