Menu
CoddyTech

Çağırma

Coddy'nin Unity Journey'sinin Fizik ve Oynanış bölümünün bir parçası. Ders 21 / 63.

Invoke("Explode", 3f), betiğin kendi Explode metodunu bundan 3 saniye sonra bir kez çağırır ve ardından gelen kod hemen çalışmaya devam eder. Unity, metodu string olarak verilen adına göre bulur ve metot parametre almaz. Bu bomba, oyun başladıktan 3 saniye sonra patlar:

void Start()
{
    Invoke("Explode", 3f);
}

void Explode()
{
    Debug.Log("Boom");
    Destroy(gameObject);
}

Ad bir string olduğundan derleyici bunu denetleyemez. Invoke("Explod", 3f) derlenir ve 3 saniye sonra Unity, patlatmak yerine Trying to Invoke method: Bomb.Explod couldn't be called. mesajını günlüğe yazar. C#'taki nameof bunu düzeltir: nameof(Explode), derleyicinin denetlediği bir addan oluşturduğu "Explode" string'idir; böylece içindeki bir yazım hatası, oyun çalışmadan önce göreceğiniz bir derleme hatasına yol açar. Invoke(nameof(Explode), 3f); yazın.

challenge icon

Görev

Kolay

İki çıkıntı arasındaki Platform, parçalanan bir platformdur. Rigidbody'si kinematik olduğundan havada asılı kalır. Crumble betiğini yaz:

  • Oyuncu üzerine indiğinde delay saniye bekler (Inspector'da 1), sonra düşer.
  • Düşme, Fall adlı bir yöntemdir: platformun fiziğini etkinleştirir (isKinematic = false) ve Crumble! kaydını oluşturur.
  • Oyuncu dokunmadan önce platform bulunduğu yerde kalır.

Yöntemin adı için nameof kullan. Play'e bas ve ok tuşlarıyla platformun üzerine yürü, ardından Check'e bas.

Kendin dene

using UnityEngine;

public class Crumble : MonoBehaviour
{
    public float delay = 1f;
    Rigidbody body;

    void Start()
    {
        body = GetComponent<Rigidbody>();
    }

    void OnCollisionEnter(Collision collision)
    {
        // Oyuncu yere indiğinde: platformun delay saniye sonra düşmesini sağla
    }

    // Fall(): platformun fiziğini etkinleştir ve Crumble! mesajını günlüğe kaydet
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Fizik ve Oynanış bölümündeki tüm dersler