unity学习之NGUI做NPC对话

    首先今天我主要做了一下,用NGUI做的NPC对话,效果有点不好看,就凑合看吧。我首先用NGUI打了一个界面,然后为sprite添加了button事件,然后接下来就是代码的问题,当然还用到了射线的问题,至于射线是怎么用的,其实就是鼠标点击到NPC的时候发射一条射线,然后激发了另外一个事件,效果如图:


代码如下:

  1.     //游戏对象定义
  2.     public GameObject test;
  3.     //定义主角
  4.     public GameObject hero;
  5.     //在start方法里面标志这个事件是假的
  6.     void Start()
  7.     {
  8.         test.SetActive(false);
  9.     }

  10.     void Update()
  11.     {
  12.         //鼠标点击的位置发射出一条射线
  13.         Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
  14.         RaycastHit hit;
  15.         if (Input.GetMouseButton(0))
  16.         {
  17.             if (Physics.Raycast(ray, out hit))
  18.             {
  19.                 //当射线碰到标签时,事件为真,图片显示
  20.                 if (hit.collider.gameObject.tag == "NPC1")
  21.                 {
  22.                     test.SetActive(true);
  23.                 }
  24.             }
  25.         }
  26.     }

更多精彩内容请关注:http://www.gopedu.com/

你可能感兴趣的:(学习整理)