GameObject.SendMessage

Deklarasyon

public void SendMessage(string methodName, object value = null, SendMessageOptions options = SendMessageOptions.RequireReceiver);


Parametreler

methodName Çağrılacak metodun adı.
value Çağrılan metoda iletilecek isteğe bağlı parametre değeri.
options Hedef nesnede metod yoksa bir hata oluşturulmalı mı?

Açıklama

Bu GameObject'teki her MonoBehaviour üzerinde methodName adlı metodu çağırır.

Alıcı metod, sıfır parametreye sahip olarak argümanı görmezden gelmeyi seçebilir. Eğer options, SendMessageOptions.RequireReceiver olarak ayarlanmışsa ve mesaj herhangi bir bileşen tarafından alınmazsa bir hata yazdırılır.

Mesajlar, devre dışı bırakılmış nesnelere (yani, editörde veya SetActive fonksiyonu ile devre dışı bırakılmış olanlara) gönderilmeyecektir.

using UnityEngine;

public class Example : MonoBehaviour
{
    void Start()
    {
        // ApplyDamage fonksiyonunu 5 değeri ile çağırır
        // ApplyDamage fonksiyonuna sahip olan her script çağrılacaktır.
        gameObject.SendMessage("ApplyDamage", 5.0);
    }
}

public class Example2 : MonoBehaviour
{
    public void ApplyDamage(float damage)
    {
        print(damage);
    }
}


Bu blog Unity Docs'un Türkçeye çevrilmiş halidir.

Yorumlar

Bu blogdaki popüler yayınlar

Important Classes - Vectors

RequireComponent

Important Classes - GameObject