gameObject.SendMessageUpwards() 和 gameObject.SendMessage()适合在子物体和父物体进行消息的传递。 比如 AA物体是BB物体的子物体。
AA物体上的脚本 - void Start () {
- gameObject.SendMessageUpwards("ReviceMsgTest", 5.0, SendMessageOptions.RequireReceiver); //发送信息,子物体的ReviceMsgTest放进进行接收 参数二:方法ReviceMsgTest的参数 参数三:发送的方式(要求对方是否必须有ReviceMsgTest方法的存在, SendMessageOptions.RequireReceiver和 SendMessageOptions.DontRequireReceiver)
- }
-
- // Update is called once per frame
- void Update () {
-
- }
- public void ReviceMsgTest(float value)
- {
- Debug.Log("子物体接收到的值:" + value);
- }
复制代码 BB物体上的脚本- // Use this for initialization
- void Start () {
-
- }
-
- // Update is called once per frame
- void Update () {
-
- }
- public void ReviceMsgTest(float value)
- {
- Debug.Log("父物体接收到的值:"+value);
- }
复制代码运行之后Console窗口会打印 : 子物体接收到的值:5.0
父物体接收到的值:5.0
|