U3D笔记(三)

游戏体消息传递:

   GameObject。SendMessage-》向自身脚本发送消息

   GameObject。BroadcastMessage-》向自身及子体发送消息

   GameObject。SendMessageUpwards-》向自身及母体发送消息

PS : GameObject.SendMessageUpwards("MotherFunction","Hello")

也可以用 C#中的委托 和 事件的机制:可以打破上面 传递 消息的 的 游戏物体的结构上的局限性

   

Dispatcher段 :

       public delegate void EventHandler( GameObject e);

       public event EventHandler MouseOver;

       void OnMouseOver(){

           if(MouseOver != null){

               MouseOver(this.GameObject);

           }

       }

Listener段:

       Dispatcher ev = this.GameObject.Find("Cube").GetComponent<Dispatcher>();

       ev.MouseOver += myFunction;


       void myFunction(GameObject e){

           // e is Dispatcher

       }