using UnityEngine; using System.Collections; using System; using UnityEngine.UI; using UnityEngine.EventSystems; using AX.MessageSystem; /// /// 1、鼠标通过射线点击对应的UI,实现实例化人员栏物体 /// 2、挂载在Canvas下DomeView下StaffButtonPicture; /// 3、核心方法:GetObj(); /// public class InstantiationStaff : MonoBehaviour { public static InstantiationStaff Instance; private LayerMask ground_layerMask = -1;//地面层 private LayerMask indoor_layerMask = -1;//室内层 DateTime t1, t2; private int delta_millisecond = 400; public string XFYName; private GameObject XFYGrid; private RaycastHit hit;//射线 public int zdfNum = 0; private int bhfNum = 0; private int fhfNum = 0; private int grfNum = 0; private int jyfNum = 0; private int Num = 0; [HideInInspector] public bool isboolStaff = false; [HideInInspector] public string TopName = ""; private InputField ForceNameInput; void Awake() { if (Instance == null) { Instance = this; } XFYGrid= GameObject.Find("DomeView/BroweMenu/StaffButtonPicture/ScrollRect").transform.Find("StaffGrid").gameObject; ForceNameInput = GameObject.Find("Canvas"). transform.Find("TeamNameWin").transform.Find("InputField").gameObject.GetComponent(); MessageDispatcher.AddListener("ResetTheScene", ResettingInformation); MessageDispatcher.AddListener("ResettingButton", ResettingButton); MessageDispatcher.AddListener("InstantiateButton", GetObj); indoor_layerMask = 1 << 29 | 1 << 25 | 1 << 26; ground_layerMask = 1 << 25 | 1 << 26; } void ResettingButton(IMessage message) { foreach (Transform child in XFYGrid.transform) { if (child.gameObject.GetComponent