Объявление
public void SendMessageUpwards(string methodName, object value = null, SendMessageOptions options = SendMessageOptions.RequireReceiver);Параметры
methodName | Имя вызываемого метода. |
value | Необязательное значение параметра для передачи вызываемому методу. |
options | Должна ли возникать ошибка, если метод не существует для целевого объекта? |
Описание
Вызывает метод с именем methodName
для каждого MonoBehaviour в этом игровом объекте и для каждого предка поведения.
Метод приема может игнорировать аргумент, не имея параметров. Если для параметра задано значение SendMessageOptions.RequireReceiver, сообщение об ошибке печатается, когда ни один из компонентов не принимает его.
Обратите внимание, что сообщения не будут отправляться неактивным объектам (то есть тем, которые были деактивированы в редакторе или с помощью функции SetActive).
using UnityEngine;
public class Example : MonoBehaviour
{
void Start()
{
// Calls the function ApplyDamage with a value of 5
gameObject.SendMessage("ApplyDamage", 5.0);
}
}
public class Example2 : MonoBehaviour
{
public void ApplyDamage(float damage)
{
print(damage);
}
}