Düşman Dalgaları
Coddy'nin Unity Journey'sinin Unity'de Oyun Mimarisi bölümünün bir parçası. Ders 54 / 64.
Görev
OrtaDüşmanları dalgalar hâlinde gönder.
WaveSet.csdosyasına,public Enemy enemy,countvespacingiçeren bir[System.Serializable]sınıfı olanWaveekle.WaveSetsınıfına[CreateAssetMenu],public List<Wave> wavesvepublic float restBetweenWavesekle.WaveSpawneriçinde,Startmetodundan başlatılan bir coroutine dalgaları sürekli döngüye alır:Wavedeğerini 1 artır,Wave 1mesajını günlüğe kaydet, herspacingsaniyede biridüşmanınıspawnPoints[i % spawnPoints.Length]konumunda oluştur, ardından bekle.
“Oyna” düğmesine bas: önce piyadeler, sonra atılganlar gelir. Ardından “Kontrol et” düğmesine bas.
Kendin dene
using UnityEngine;
public class WaveSpawner : MonoBehaviour
{
[SerializeField] private WaveSet waveSet;
[SerializeField] private Transform[] spawnPoints;
public int Wave { get; private set; }
// Sonraki bir derste burası tamamlanacak: dalgalar arenaya gönderilecek.
}
Unity'de Oyun Mimarisi bölümündeki tüm dersler
1Kalıtım Değil, Bileşenler
Küçük BileşenlerTemel Düşman Script'iSoyut BileşenlerBirlikte Çalışan BileşenlerTekrar: Modüler TaretTekrar: Çift Namlulu Top4Serileştirilmiş Veriler
Serileştirilebilir SınıflarInspector'da ListelerInspector'da Enum'larTekrar: Ganimet TablosuTekrar: Ganimeti At7Durum Makineleri
Sınıflar Olarak DurumlarAlarm DurumuBir Durum MakinesiGeçişlerDüşmanların Yapay ZekâsıŞövalye SaldırıyorÖzet: Kapı Durumları10Proje: Arena Hayatta Kalma
KahramanDüşman Türleri2Unity'de Arayüzler
IDamageableArayüzler ve TryGetComponentGetComponentsÖzet: Etkileşim TuşuÖzet: Erişim Mesafesindeki En Yakın5ScriptableObjects
Veri VarlıklarıSilah İstatistikleriOrtak AyarlarRüzgârı KaydetVeri Olarak DalgalarTekrar: Eşya VeritabanıTekrar: Dükkândan Satın Al8Yeniden Kullanılabilir Kod
Genişletme MetotlarıGeneric SingletonGeneric YardımcılarTekrar: FindNearestKendi başına pratik yap: Unity playground