Esempio n. 1
0
    private void UseItem(BaseItemSlot itemSlot)
    {
        int index = itemSlot.INDEX;

        itemSlot.ITEM.UseItem();
        inv_container.RemoveItem(index);
    }
Esempio n. 2
0
    private void Equip(BaseItemSlot itemSlot)
    {
        ItemPickUp copy_item_pickup = itemSlot.ITEM;  // copy item
        int        copy_item_index  = itemSlot.INDEX; // copy index

        //remove item from inventory
        if (inv_container.RemoveItem(itemSlot.INDEX))
        {
            ItemPickUp previousItem;
            if (equip_container.StoreItem(copy_item_pickup, out previousItem, equip_container_display.EquipItemSlots))
            {
                copy_item_pickup.Equip();
                if (previousItem != null)
                {
                    inv_container.StoreItem(previousItem, copy_item_index);
                    previousItem.Unequip();
                }
            }
        }
    }
Esempio n. 3
0
    private void SwapItems(BaseItemSlot tranferItemSlot)
    {
        ItemPickUp dragItem  = dragItemSlot.ITEM as ItemPickUp;
        int        dragIndex = dragItemSlot.INDEX;

        ItemPickUp tranferItem  = tranferItemSlot.ITEM as ItemPickUp;
        int        tranferIndex = tranferItemSlot.INDEX;


        if (dragItemSlot.GetType() != tranferItemSlot.GetType())
        {
            //inv to storage
            if (dragItemSlot is BaseInvSlot)
            {
                if (tranferItemSlot.ITEM != null)
                {
                    inv_container.StoreItem(tranferItem, dragIndex);
                    storage_container.StoreItem(dragItem, tranferIndex);
                }
                else
                {
                    if (inv_container.RemoveItem(dragIndex))
                    {
                        storage_container.StoreItem(dragItem, tranferIndex);
                    }
                }
            }
            else
            {
                //storage to inv
                if (dragItemSlot is BaseStorageSlot)
                {
                    //has item
                    if (tranferItemSlot.ITEM != null)
                    {
                        inv_container.StoreItem(dragItem, tranferIndex);
                        storage_container.StoreItem(tranferItem, dragIndex);
                    }
                    else                    //hasn't item
                    {
                        if (storage_container.RemoveItem(dragIndex))
                        {
                            inv_container.StoreItem(dragItem, tranferIndex);
                        }
                    }
                }
            }
        }
        else
        {
            if (dragItemSlot is BaseInvSlot && dragItemSlot != null)
            {
                inv_container.Swap(dragIndex, tranferIndex);
            }

            if (dragItemSlot is BaseStorageSlot && dragItemSlot != null)
            {
                storage_container.Swap(dragIndex, tranferIndex);
            }
        }
    }