Ejemplo n.º 1
0
    public void AddItem(InventoryItem item, int count = 1)
    {
        InventoryItemRef itemRef = new InventoryItemRef();

        itemRef.RuntimeRef = item;
        AddItem(itemRef, count);
    }
Ejemplo n.º 2
0
 private void OnClickNpcTradingItem(InventoryItemRef item)
 {
     npcInv.AddItem(item, npcTradingItems[item]);
     npcTradingItems.Remove(item);
     balance         += item.RuntimeRef.value;
     balanceText.text = balance.ToString();
     UpdateTrade();
 }
Ejemplo n.º 3
0
 private void OnClickPlayerTradingItem(InventoryItemRef item)
 {
     playerInv.AddItem(item, playerTradingItems[item]);
     playerTradingItems.Remove(item);
     balance         -= item.RuntimeRef.value;
     balanceText.text = balance.ToString();
     UpdateTrade();
 }
Ejemplo n.º 4
0
    public bool HasItem(InventoryItemRef i, int count)
    {
        int itemCount;

        items.TryGetValue(i, out itemCount);

        return(itemCount >= count);
    }
Ejemplo n.º 5
0
 public void AddItem(InventoryItemRef item, int count = 1)
 {
     if (items.ContainsKey(item))
     {
         items[item] += count;
     }
     else
     {
         items.Add(item, count);
     }
     OnInventoryChanged?.Invoke();
 }
Ejemplo n.º 6
0
    public bool RemoveItem(InventoryItemRef item, int count = 1, bool callInventoryChanged = true)
    {
        int  itemCount;
        bool result = items.TryGetValue(item, out itemCount) && itemCount >= count;

        if (result)
        {
            itemCount -= count;
            if (itemCount == 0)
            {
                int itemIndex = 0;
                foreach (InventoryItemRef r in items.Keys)
                {
                    if (r.Equals(item))
                    {
                        break;
                    }
                    itemIndex++;
                }
                if (itemIndex < selectedItemIndex)
                {
                    selectedItemIndex--;
                }
                else if (selectedItemIndex == itemIndex)
                {
                    UnequipCurrentItem();
                }
                //if(item == selectedItem)
                //{

                //}
                items.Remove(item);
            }
            else
            {
                items[item] = itemCount;
            }
            if (callInventoryChanged)
            {
                OnInventoryChanged?.Invoke();
            }
        }

        return(result);
    }
Ejemplo n.º 7
0
 private void HoverExitEvent(InventoryItemRef r)
 {
     Debug.Log("hoverexit");
 }
Ejemplo n.º 8
0
 private void HoverEvent(InventoryItemRef r)
 {
     Debug.Log("hoverenter on " + r.RuntimeRef.itemName);
 }
Ejemplo n.º 9
0
 private void ClickEvent(InventoryItemRef r)
 {
     Debug.Log("clicked");
 }