Yeni Başlayanlar için Construct 2 Rehberi

4

Index

Tagged

Stats

81,546 visits, 101,565 views

Tools

Translations

License

This tutorial is licensed under CC BY 4.0. Please refer to the license text if you wish to reuse, share or remix the content contained within this tutorial.

Oyun İşlevleri “Functionality” Ekleme

Öncekinde olduğu gibi her olayı detaylı bir şekilde açıklamaya kalkarsak, bu çok uzun bir rehber olur. Haydi şimdi tanımları gelecek olaylar için daha açık hale getirelim. Bir koşul veya faaliyet eklemenin adımlarını hatırlamaya çalışalım:

1. Yeni bir olay New Event eklemeye çift tıklayın veya faaliyet eklemek için faaliyet ekle Add Action* linkine tıklayın

2. Koşul veya faaliyet eklenecek objeye çift tıklayın.

3. Seçmek istediğiniz faaliyet/koşula çift tıklayın.

4. Gerekiyorsa, parametreler girin.

Şimdiden sonra, olaylar objeler gibi tanımlanacak, parametreden sonra ve faaliyet/koşuldan sonra takip edecektir. Örnek vermek gerekirse, biraz önce eklediğimiz olay şöyle gösterilecektir:

Koşul ekle System -> Every tick

Faaliyet ekle Oyuncu Player-> Set angle towards position -> X: Mouse.X, Y:Mouse.Y

Oyuncu Ateş Etsin

Oyunu oynayan tıkladığı zaman, oyuncu bir kurşun sıkmalı. Bu oyuncu için bir obje fırlat Spawn an object faaliyeti ile sağlanır, bu faaliyetle oyuncunun aynı pozisyonunda ve aynı açıyla bir objenin yeni bir görüntüsü yaratılır. Daha önce eklenen kurşun davranışıyla Bullet Movement kurşun “bullet” ileriye doğru uçup gidecektir. Takip eden olayı yapın:

Koşul: Mouse -> On click -> Left clicked (the default)

Faaliyet: Player -> Spawn another object -> Obje için kurşun Bullet objesini seçin. Katman Layer için, 1’i seçin. (Ana katman "Main" layer is layer 1 - Construct 2’nin sıfırdan itibaren hesap yaptığını unutmayın). Görüntü noktasını Image point 0 olarak bırakın.

Olayınız aşağıdaki gibi görünmelidir:

Oyunu çalıştırdığınızda, kurşunların silahın ucundan değilde oyuncunun ortasından çıktığını göreceksiniz. Bunu silahın bitimine bir görüntü noktası image point ekleyerek düzeltelim. ( Bir görüntü noktası bir görüntedeki pozisyonu gösteren ve böylece buradan objeleri fırlatmanızı sağlayan bir özelliktir.)

Projede yer alan oyuncuya sağ tıklayın veya obje bara tıklayın ve Edit animationsı tıklayın.

Oyuncular için görüntü editörü tekrar görünecektir. “Origin” ve “image points” araçlarına tıklayın:

… ve görüntü noktaları “image points” penceresi açılır:

Objenin orijinin kırmızı bir nokta olarak olduğunu fark edeceksiniz. Bu objenin denge noktası “hotspot” veya nirengi noktası “pivot point”’dır. Objeyi döndürürseniz, bu orijin etrafında döner. Biz silahı temsil eden başka bir görüntü eklemeyi istiyoruz, bunun için yeşil olan ekle Add butonuna tıklayın:

Görüntü editörünü kapatın. Daha önce eklediğimiz Spawn an object faaliyetine çift tıklayın ve görüntü noktasınıimage point 1 olarak değiştirin. ( Orijin her zaman ilk görüntü noktasıdır “image point” ve Construct 2 hesaplamaya 0 dan başlar.) Olay aşağıdaki gibi görünür – sağdaki notta görüntü noktası Image point 1 olarak görülür:

Oyunu çalıştırın. Şimdi silahınızın ucundan kurşunlar çıkacaktır! Kurşunların henüz hiçbir etkisi yok. Ümit ediyorum ki olay sistemiyle ilgili gerçekleri kavramaya başladığınız, böylece işlevleri kolayca bir araya getirebileceksiniz.

Haydi kurşunların canavarları öldürmesini sağlayalım. Aşağıdaki olayları ekleyin:

Şart: Bullet -> On collision with another object -> Monster ı seç.

Faaliyet: Monster -> Destroy

Faaliyet: Bullet -> Spawn another object -> Explosion, layer 1

Faaliyet: Bullet -> Destroy

Patlama Efekti

Oyunu çalıştırın ve canavarlara ateş etmeye çalışın. Ah, patlamalar oluşuyor ama arkalarında büyük bir kara çerçeve olduğunu göreceksiniz.

Bunları yaparken sizde patlamaların aşağıdaki gibi olacağını düşündünüz ve şimdi oyununuzun gerçekten böyle bitip bitmeyeceğini merak ediyor olmalısınız! Endişelenmeyin, böyle kalmayacak. Alt sağdaki Object barındaki patlama objesine veya Projenin olduğu penceredeki ( katmanlar çubuğunda birlikte sekmelendirilmiş olan) patlama objesini tıklayın. Sol tarafta özellikler penceresinde objenin özellikleri görünücektir. En altta, Blend mode özelliğini Additive olarak ayarlayın. Şimdi oyunu tekrar deneyin.

Neden şimdi çalıştı? İşin pratik ayrıntılarına girmeden, diyebiliriz ki sıradan görüntüler ekranının sol üst köşesine eklenir. Additive Efektle birlikte, her piksel arkaplanındaki pixellerle beraber eklenir. Siyah bir sıfır piksel değeridir, böylece hiçbirşey eklenmez – böylece siyah arka planı görmezsiniz. Parlak renkler daha çok eklenir, böylece daha kuvvetli bir şekilde görürsünüz. Bu özellik patlamalar ve ışıklandırmalar efektleri için muhteşemdir.

Canavarları biraz daha akıllı yapmak

Şimdi canavarlar çalışma sayfasını sağ taraftan terk etmektedirler. Şimdi işleri biraz daha ilginç kılalım. İlk önce, bunları rastgele açıklarla oyuna başlatalım.

Koşul: System -> On Start of Layout ( Sistem -> Çalışma sayfası ilk kez başlarken )

Faaliyet: Monster -> Set angle -> random(360) ( Canavar -> Açıyı Kullan -> Rastgele(360)

Bunlar çalışma sayfasını terk ettikten sonrada ortadan kaybolmaya sürekli devam edecektir ve bir daha görünmeyecektir. Haydi bunları içeride tutalım. Yapacağımız şey onları çalışma sayfasını terk ettiklerinde de oyunca yönlendirmek olacak. Bu iki şey yapacaktır: Böylece bunlar çalışma sayfasında kalacaklar ve oyuncu sağ olduğu müddetçe canavarlar onların üzerine gelecektir!

Koşul: Monster -> Is outside layout

Faaliyet: Monster -> Set angle toward position -> For X, Player.X - for Y, Player.Y.

Oyunu çalıştırın. Eğer etrafta bir süre dolaşırsanız, canavarların çalışma sayfası etrafında dolaştıklarını göreceksiniz ve tüm yönlere gittiklerini fark edeceksiniz. Tam bir yapay zeka değil, ama işe yarıyor!

Şimdi, canavarların hemen vurulup ölmelerinden ziyade 5 kere vurulduktan sonra ölmesini sağlamak istediğimizi düşünelim. Bunu nasıl yapabiliriz? Eğer sadece tek bir “Health” sağlık hesaplayıcısını kullanırsak bir tane canavar beş kere vurulduğu zaman tüm canavarlar ölür. Bunun yerine, her canavarın kendi sağlığını hatırlamasını sağlamalıyız. Bunu instance variable olay değişkeni ile yapabiliriz.

  • 0 Comments

  • Order by
Want to leave a comment? Login or Register an account!