Component.SendMessageUpwards
Declaration
public void SendMessageUpwards(string methodName, SendMessageOptions options);public void SendMessageUpwards(string methodName, object value = null, SendMessageOptions options = SendMessageOptions.RequireReceiver);Параметры
| Параметр | Описание |
|---|---|
| methodName | Имя вызванного метода. |
| значение | Необязательное значение параметра для метода. |
| варианты | Должна ли быть поднята ошибка, если метод не существует на объекте назначения? |
Описание
Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте и на каждом предшественнике поведения.
Получающий метод может выбрать игнорировать аргумент, имея нулевые аргументы. Если options параметр установлен на SendMessageOptions.RequireReceiver ошибка печатается, когда сообщение не поднимается ни одним из компонентов.
Обратите внимание, что сообщения не будут отправляться на неактивные объекты (то есть те, которые были отключены в редакторе или с помощью GameObject.SetActive функции).
using UnityEngine;
public class Example : MonoBehaviour { void Start() { /// Calls the function ApplyDamage with a value of 5 SendMessageUpwards("ApplyDamage", 5.0); }
// Every script attached to this game object and any ancestor // that has a ApplyDamage function will be called. void ApplyDamage(float damage) { print(damage); } }