/// <summary> /// 鼠标点击事件的处理 /// </summary> /// <param name="eventData"></param> public void OnPointerDown(PointerEventData eventData) { ItemUIP propUI; //格子下面有物品 if (transform.childCount >= 1) { //鼠标下面没有物品 if (InventoryManagerP.Instance.ispicked == false) { //得到鼠标点击下的格子的Prop propUI = transform.GetChild(0).GetComponent <ItemUIP>(); InventoryManagerP.Instance.SetPickedItem(propUI); //销毁当前格子的PropUI Destroy(propUI.gameObject); } } //格子下面没有物品 else { //鼠标下面有物品 if (InventoryManagerP.Instance.ispicked) { ItemUIP pickedUpProp = InventoryManagerP.Instance.PickUpProp; for (int i = 0; i < pickedUpProp.Amount; i++) { StoreProps(pickedUpProp.Prop); } InventoryManagerP.Instance.RemovePickItem(); } } }
/// <summary> ///设置鼠标位置下的物品; /// </summary> /// <param name="prop"></param> public void SetPickedItem(ItemUIP itemUIP) { //设置鼠标下propUI的相关信息 pickedUpProp.SetItem(itemUIP.Prop); pickedUpProp.SetAmount(itemUIP.Amount); pickedUpProp.ShowPropUI(); ispicked = true; }
private void Start() { ParseJson(); //获取鼠标下的propUI组件 pickedUpProp = GameObject.Find("PickedUpProp").GetComponent <ItemUIP>(); canvas = GameObject.Find("Canvas").transform; //该组件隐藏 pickedUpProp.HidePropUI(); }