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 direction0go to x:-190y:-150forever point towardsmouse-pointermove1steps 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 towardsolan 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:iftouching color?then switch costume tohitsayNoooooo!for1secs switch costume tonormalpoint in direction0go to x:-215y:-160endBu 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 settimeto0forever wait0.1secs changetimeby0.1end -
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.iftouching color?then move3steps 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,
foreveryavaşç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, bounceYeni nesneniz kahverengi değilse, tekne kodunuza eklemeniz gerekir:
if
touching color
?or
touching
shark ? then endProjeni 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 endSol 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 backdropKaynak