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
Yorum Gönder