Component.BroadcastMessage

Switch to Manual
public void BroadcastMessage (string methodName, object parameter= null, SendMessageOptions options= SendMessageOptions.RequireReceiver);
public void BroadcastMessage (string methodName, SendMessageOptions options);

Parameters

methodName要调用的方法的名称。
parameter要传入该方法的可选参数(可以是任何值)。
options如果对于给定目标对象该方法不存在,是否应报错?

Description

调用此游戏对象或其任何子项中的每个 MonoBehaviour 上名为 methodName 的方法。

The receiving method can choose to ignore parameter by having zero arguments. if options is set to SendMessageOptions.RequireReceiver an error is printed when the message is not picked up by any component.

using UnityEngine;

public class Example : MonoBehaviour { void Start() { /// Calls the function ApplyDamage with a value of 5 BroadcastMessage("ApplyDamage", 5.0); }

// Every script attached to the game object and all its children // that has a ApplyDamage function will be called. void ApplyDamage(float damage) { print(damage); } }