Пример #1
0
    private void takeItem(LootSlot slot)
    {
        if (slot.item == null)
        {
            return;
        }

        ItemData data = slot.item.itemData;

        if (data.itemType == ItemType.GOODS)
        {
            takeFromSlot = slot;
            itemDescriptor.setDisabled();
            popup.show(slot.item);
        }
        else
        {
            if (data.volume <= inventory.getFreeVolume())
            {
                container.loot.Remove(slot.item);
                inventory.addItemToCell(slot.takeItem(), null);
            }
            else
            {
                Messenger.inventoryCapacityLow(data.name, data.quantity);
                return;
            }
            checkAllTaken();
        }
    }
Пример #2
0
    public void UseItem(LootSlot lootSlot)
    {
        Item item = lootSlot.GetItem();

        if (item != null)
        {
            AddInventoryItem(item);
        }
    }
Пример #3
0
 void Update()
 {
     if (popup.onScreen)
     {
         return;
     }
     if (Input.GetKeyDown(KeyCode.Escape))
     {
         closeDisplay(false);
     }
     if (Input.GetMouseButtonDown(0) && Utils.hit != null)
     {
         LootSlot slot = Utils.hit.GetComponent <LootSlot>();
         if (slot != null)
         {
             takeItem(slot);
         }
     }
 }