关闭

unity3D 通过SendMessage实现脚本通信

标签: unity3dc#脚本调用通信响应
1881人阅读 评论(0) 收藏 举报
分类:

                脚本之间的通信有几种。

                1.利用在脚本A中定义对外接口函数,然后在脚本B中找到A所在的对象,再找到脚本A,进而调用里面的对外接口函数,这个方法在我的《unity3D  NGUI中button响应事件实现》这篇文章中有仔细说明,可以参考。

                2.还有一个是利用SendMessage的方法来实现脚本互相通信。

                也是,首先在A脚本中编写对外接口函数,如下所示:

                 

using UnityEngine;
using System.Collections;

  public class A : MonoBehaviour {
  public void Show_nunber(int n)

	  {

	  print("num: " + n );

	  }
}



                然后在脚本B中利用SendMessage机制调用脚本A里面的Show_number函数。

                如下:

                

using UnityEngine;
using System.Collections;

 public class B : MonoBehaviour {

 public GameObject Obj;//A脚本绑定在一个物体上的时候,再把脚本B拖拽到这个GameObject
  void Start () 
	{

   Obj.SendMessage("Show_number","10");//相当于调用脚本B里面的函数,第一个参数是函数名,第二个传递的整型参数

  }
}

                 这样就可以实现两个不同对象上的脚本相互通信了。

                             

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:38765次
    • 积分:717
    • 等级:
    • 排名:千里之外
    • 原创:33篇
    • 转载:0篇
    • 译文:0篇
    • 评论:16条
    文章存档
    最新评论