Component.SendMessage 发送消息

function SendMessage (methodName : string, value : object = null, options : SendMessageOptions = SendMessageOptions.RequireReceiver) : void

Description描述

Calls the method named methodName on every MonoBehaviour in this game object.


SendMessage朝本级别物体的多个脚本发送信息。

在游戏物体每一个MonoBehaviour上调用名为methodName的方法。

The receiving method can choose to ignore the argument 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.

接受此消息的函数也可以没有参数。如果选项Option中设置成了SendMessageOptions.RequireReceiver,那么当没有任何脚本组件接受此消息时,一个相应的错误会弹出来

using UnityEngine;
using System.Collections;

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

// Every script attached to the game object
// that has a ApplyDamage function will be called.
//附加到游戏物体的每个脚本,有一个ApplyDamage函数将被调用
function ApplyDamage (damage : float) {
print (damage);
}
最后修改:2010年12月12日 Sunday 1:26

本脚本参考基于Unity 3.4.1f5

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