Exemple #1
0
 // Update is called once per frame
 void Update()
 {
     ///测试增加和删除道具
     if (Input.GetKeyDown(KeyCode.W))
     {
         BagCtrl.DeleteItem(BagsList[2]);
     }
     if (Input.GetKeyDown(KeyCode.S))
     {
         BagCtrl.AddItem(BagsList[3].GetComponent <ItemCtrl>().BagData);
     }
 }
Exemple #2
0
    public void OnEndDrag(PointerEventData eventData)
    {
        if (OffsetThing == null)
        {
            return;
        }
        BagCtrl.onlyShowOneIntroduce = true;

        GameObject TargetItem = BagCtrl.judgeRunintoObject(eventData.pointerEnter.transform.position);


        if (TargetItem == null)
        {
            Destroy(OffsetThing);
            return;
        }

        ItemCtrl ItemBagData = TargetItem.GetComponent <ItemCtrl>();

        if (ItemBagData.BagData.Name == null && ItemBagData.BagData.ItemPositon == null)
        {
            //属于空白格,如果是在备包内部,拖拽的物品需要排序到最后或者不对拖拽的物品做处理,此处不做处理
            Destroy(OffsetThing);
            return;
        }



        if (TargetItem.Equals(BeginDragItem))
        {
            //如果是物品本身就不用替换
            Destroy(OffsetThing);
            return;
        }

        if (!(TargetItem.GetComponent <ItemCtrl>().BagData.ItemPositon == TagType.BagTag || TargetItem.GetComponent <ItemCtrl>().BagData.ItemPositon == TagType.EquipTag))
        {
            return;
        }

        BagCtrl.ExchangeItemFunc(TargetItem, BeginDragItem);

        if (OffsetThing != null)
        {
            Destroy(OffsetThing);
        }
    }