Tekrar: Modüler Taret
Coddy'nin Unity Journey'sinin Unity'de Oyun Mimarisi bölümünün bir parçası. Ders 5 / 64.
Görev
KolayTurret1'in silahını oluştur. TurretControl ve Cannon hazır.
Ammoiçindepublic bool Take()yaz: bir mermi kullanıptruedöndür ya daname + " is empty"ile günlük kaydı oluşturupfalsedöndür.Weaponsınıfını[RequireComponent(typeof(Ammo))]ile soyut yap veFire()metodunu gövdesizprotected abstractolarak tanımla.Pull(),cooldownsırasında hiçbir şey yapmaz; aksi takdirde,Take()doğruysa bekleme süresini yeniden başlatır veFire()metodunu çağırır.
“Oyna” düğmesine bas ve mermisi bitene kadar ateş et. Ardından “Kontrol et” düğmesine bas.
Kendin dene
using UnityEngine;
// Tüm taret silahlarının ortak özellikleri.
public class Weapon : MonoBehaviour
{
public GameObject shellPrefab;
public float cooldown = 1f;
public void Pull()
{
// cooldown süresinin dolmasını bekle, Ammo'dan bir mermi al, ardından ateş et
}
// Her silah kendine özgü bir şekilde ateş eder.
protected virtual void Fire()
{
}
// Taretten bakıldığında bu noktadan çıkıp taretin baktığı yöne uçan bir mermi.
protected void Launch(Vector3 offset)
{
Instantiate(shellPrefab, transform.position + transform.rotation * offset, transform.rotation);
}
}
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 At2Unity'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