示例#1
0
        public void OnDrop(PointerEventData eventData)
        {
            try
            {
                if (inv.DragAndDropEnabled)
                {
                    ItemData droppedItemData = eventData.pointerDrag.GetComponent<ItemData>();
                    if (inv.SlotList[ID].childCount == 0)
                    {
                        droppedItemData.transform.SetParent(transform);
                        droppedItemData.GetComponent<RectTransform>().anchoredPosition3D = droppedItemData.startPosition;
                        droppedItemData.startParent = transform;
                        droppedItemData.Slot = ID;
                        droppedItemData.inv.ItemList.Remove(droppedItemData);
                        inv.ItemList.Add(droppedItemData);
                        item = droppedItemData;
                        if (Gearable)
                        {
                            droppedItemData.HoldedItem.Gear();
                        }
                    }
                }
            }
            catch (Exception ex)
            {

            }
        }
示例#2
0
 void Start()
 {
     inv = transform.parent.parent.GetComponent<Inventory>();
     ID = transform.GetSiblingIndex();
     if (transform.childCount > 0)
     {
         if (this.transform.GetChild(0).GetComponent<ItemData>())
         {
             item = this.transform.GetChild(0).GetComponent<ItemData>();
         }
     }
 }
示例#3
0
        public ItemDataParams(ItemData data)
        {
            this.ID = data.HoldedItem.ID;
            this.slotID = data.Slot;

            Properties = new List<ItemProperty>();
            foreach (ItemProperty property in data.Properties )
            {
                Properties.Add(new ItemProperty(property.PropertyName,property.PropertyValue));
            }

            this.Amount = data.Amount;
        }