unity3D 通过SendMessage实现脚本通信

原创 2013年12月03日 22:28:17

                脚本之间的通信有几种。

                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里面的函数,第一个参数是函数名,第二个传递的整型参数

  }
}

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

                             

版权声明:本文为博主原创文章,未经博主允许不得转载。

Unity3D中的SendMessage使用(消息推送)

简单介绍了Unity中的三个消息推送函数:SendMessage、SendMessageUpwards、BroadcastMessage...
  • liulong1567
  • liulong1567
  • 2015年06月11日 22:55
  • 13730

Unity3D——SendMessage方法的使用

GameObject自身的Script SendMessage("函数名", 参数,SendMessageOptions) 自身和子Object的Script BroadcastMessage("函...
  • virus2014
  • virus2014
  • 2016年11月01日 11:20
  • 3018

Unity3D中的SendMessage方法与委托的使用选择

参考: http://www.cnblogs.com/xpvincent/p/3195453.html http://bbs.9ria.com/thread-256852-1-1.html h...
  • yyeric11
  • yyeric11
  • 2014年10月28日 16:07
  • 844

Unity3D学习记录——API SendMessage函数

1.创建Cube物体,然后是CubeScore,CubeScore只有GUI Text组件,作用是显示记数文字 2.创建Gold物体,然后是GoldScore 3.创建Player物体,我这里直接用的...
  • daisgi
  • daisgi
  • 2017年07月21日 20:38
  • 140

unity中SendMessage的bug – unity3d游戏开发

SendMessage在unity中可以非常方便的调用到物体上脚本的方法但是也存在一个隐藏的bug.看下面代码: 发送者 1 public class ...
  • huang9012
  • huang9012
  • 2014年05月04日 11:36
  • 2493

U3d中 SendMessage 和 BroadcastMessage 用法

U3d中 SendMessage 和 BroadcastMessage 用法 注意:     1.接收函数不用public修饰 Message相关有3条指令:...
  • u013628121
  • u013628121
  • 2017年01月03日 15:53
  • 1820

分享Unity3d的消息机制实现

在mvc模式中,消息机制被广泛使用,Unity3d自带的消息机制真心不好用,像SendMessage,需要知道响应事件的物件,还需要一个响应函数的函数名字符串作为参数,如果我们有多个物件都要响应某个事...
  • dfgjava
  • dfgjava
  • 2013年10月26日 13:52
  • 10772

关于Unity3D中的UnitySendMessage方法的使用!!!

UnitySendMessage这个方法相信很少朋友注意到它的使用,因为根本就无法在unity编辑时使用,但是它有一个神奇的地方就是可以完成dllimport的方法回调时使用,这样说好像有些抽象,我可...
  • u011285268
  • u011285268
  • 2013年07月03日 10:29
  • 4002

Unity3D sendmessage 的用法 SendMessage has no receiver!

Unity3D sendmessage 的用法 SendMessage has no receiver!  1.GameObject.SendMessage向一个物体发送一个消息。 ...
  • wolf96
  • wolf96
  • 2014年09月26日 12:46
  • 8842

< Unity 3D专栏 >实现游戏对象与对象之间通信

游戏中,对象与对象之间需要交流,实现的方法多种,例如:可定义静态变量,其他脚本直接调用, 也可用到: SendMessage 今天主要学习SendMessage的用法。   1、创建两个脚本:“...
  • ycguhang
  • ycguhang
  • 2012年08月06日 02:21
  • 5426
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:unity3D 通过SendMessage实现脚本通信
举报原因:
原因补充:

(最多只允许输入30个字)