public void OnEndDrag(PointerEventData eventData)
    {
        GameObject go = eventData.pointerEnter;

        if (go != null)
        {
            if (go.tag == Tags.InventoryItem)
            {
                ExchangeItem(go);
            }
            else if (go.tag == Tags.InventoryItemGrid)
            {
                print(11);
                //得到之前的格子;清空信息
                InvetoryItemGrid grid = transform.GetComponentInParent <InvetoryItemGrid>();
                M.ClearOldGridInfo(grid);
                //作为go格子的子物体
                transform.SetParent(go.transform, false);
                item.SetActive(true);
                transform.localPosition = Vector3.zero;
            }
        }
        item.SetActive(true);
        Destroy(m_DraggingIcon);
        //背包数据更新
        Inventory.UpdateAllGrids();
    }
Example #2
0
    public void UpdateMyInfoToGrid()
    {
        InvetoryItemGrid g = GetComponentInParent <InvetoryItemGrid>();

        g.id         = this.id;
        g.num        = this.num;
        numtext.text = this.num.ToString();
    }
    //格子放进背包里面
    void UpdateInventoryGrid(int id)
    {
        print(id);
        //第一步,先判断背包里面有没该item,有,就直接数量+1
        //第二步,没有,实例化该Item,然后在找一个空格子放进去
        InvetoryItemGrid g = null;

        foreach (InvetoryItemGrid temp in itemGridsList)
        {
            if (temp.id == id)
            {
                g = temp;
                break;
            }
        }

        if (g != null)
        {
            g.SetNum();
        }
        else
        {
            foreach (InvetoryItemGrid temp in itemGridsList)
            {
                if (temp.id == 0)
                {
                    GameObject item = CreatItemInInventory(id);
                    item.transform.SetParent(temp.transform, false);
                    item.transform.localPosition = Vector3.zero;
                    break;
                }
            }
        }
        //更新所有格子信息
        UpdateAllGrids();
    }
Example #4
0
 public void ClearOldGridInfo(InvetoryItemGrid grid)
 {
     grid.id  = 0;
     grid.num = 0;
 }