GameObject.BroadcastMessage 广播消息

function BroadcastMessage (methodName : string, parameter : object = null, options : SendMessageOptions = SendMessageOptions.RequireReceiver) : void

Description描述

Calls the method named methodName on every MonoBehaviour in this game object or any of its children.

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.

对物体和所有子物体发送消息。

在这个游戏物体及其子物体的所有MonoBehaviour中调用名称为methodName的方法。

接收消息的方法可以通过不要参数的方法来选择忽略参数.当选项被设置为SendMessageOptions.RequireReceiver时,如果消息没有被任何一个组件处理,则会打印一个错误.

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
	void ApplyDamage(float damage) {
		print(damage);
	}
	public void Awake() {
		gameObject.BroadcastMessage("ApplyDamage", 5.0F);
	}
}
// Calls the function ApplyDamage with a value of 5
//用5的值调用函数ApplyDamage
gameObject.BroadcastMessage ("ApplyDamage", 5.0);

// Every script attached to the game object and all its children
// that has a ApplyDamage function will be called.
//附加到游戏物体和全部子物体的每个脚本,有一个ApplyDamage函数被调用。
function ApplyDamage (damage : float) {
	print (damage);
}
最后修改:2011年5月19日 Thursday 22:13

本脚本参考基于Unity 3.4.1f5

英文部分版权属©Unity公司所有,中文部分© Unity圣典 版权所有,未经许可,严禁转载 。