Beispiel #1
0
    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);
    }
Beispiel #2
0
    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);
    }
Beispiel #3
0
    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);
    }