public void OnDrop(PointerEventData eventData) { var Ui_item = eventData.pointerDrag.GetComponent <UIItem>(); if (Ui_item._parentSlot == null) { Item item1; item1 = Ui_item.item; Ui_item.UpdateItem(uItem.item); ui.UpdateSlot(index, item1); return; } if (Ui_item._parentSlot.index == index || Ui_item.item == null) { return; } Item item; item = uItem.item; uItem.item = Ui_item.item; Ui_item.item = item; Debug.Log(Ui_item.item); Debug.Log(uItem.item); ui.UpdateSlot(index, uItem.item); ui.UpdateSlot(Ui_item._parentSlot.index, Ui_item.item); }
public void AddItem(int ID, int n) { Item item = dataBase.GetItem(ID); Item item2 = new Item(item.ID, item.title, item.desc, item.sellValue, item.stack, item.maxStack); int slot = slotUi.slots.FindIndex(k => k.uItem.item != null && k.uItem.item.ID == item.ID && k.uItem.item.stack < item.maxStack); Debug.Log(slot); if (slot == -1) { slot = slotUi.slots.FindIndex(k => k.uItem.item == null); if (slot == -1) { Debug.Log("INVENTORY FULL"); return; } slotUi.slots[slot].uItem.item = item2; slotUi.UpdateSlot(slot, item2); n -= 1; } Debug.Log("slot pos if" + slot); for (int i = 0; i < n; i++) { if (slotUi.slots[slot].uItem.item.stack < slotUi.slots[slot].uItem.item.maxStack) { slotUi.slots[slot].uItem.item.stack += 1; slotUi.UpdateSlot(slot, slotUi.slots[slot].uItem.item); Debug.Log("stack " + slotUi.slots[slot].uItem.item.stack); } else { Debug.Log("Adding Item" + item2); item2 = new Item(item.ID, item.title, item.desc, item.sellValue, item.stack, item.maxStack); slot = slotUi.slots.FindIndex(k => k.uItem.item == null); slotUi.slots[slot].uItem.item = item2; Debug.Log("slot pos add for" + slot); slotUi.UpdateSlot(slot, item2); } } Debug.Log(slotUi.slots[slot].uItem.item.stack); Debug.Log("Added item: " + item.title); }
public void OnDrop(PointerEventData eventData) { var Ui_item = eventData.pointerDrag.GetComponent <UIItem>(); Item item; item = uItem.item; uItem.item = Ui_item.item; Ui_item.item = item; Debug.Log(Ui_item.item); Debug.Log(uItem.item.title); uItem.UpdateItem(uItem.item); ui.UpdateSlot(Ui_item._parentSlot.index, Ui_item.item); }