//adiciona um item ao slot
    public void AddItem(PickupItens item)
    {
        bool          found = false;           //procurador de item stackable
        SlotInventory empty = NextEmptySlot(); //proximo slot vazio

        //se o item a adicionar vor stackable
        if (item.isStack)
        {
            //checa em todos os slots
            foreach (SlotInventory slot in invSlot)
            {
                //se ha um slot ocupado com o mesmo item
                if (slot.item != null && slot.item.itemName == item.itemName)
                {                 //caso sim almenta a quantia de item
                    slot.item.AddItem();
                    found = true; //e diz que o item foi encontrado
                }
            }

            //caso o item nao foi encontrado e o slot for vaziu
            if (!found && empty != null)
            {//adiciona o item
                if (pl.GetComponent <PlayerUIController>().shopping)
                {
                    item.AddItem(1, true);
                }
                empty.item = item;
            }
        }//caso o item nao for stackable
        else if (empty != null)
        {//o adiciona no proximo slot vaziu
            empty.item = item;
        }
    }
Exemplo n.º 2
0
    //adiciona um item ao slot
    public void AddItem(PickupItens item)
    {
        SlotShop empty = NextEmptySlot();//proximo slot vazio

        if (empty != null)
        {//o adiciona no proximo slot vaziu
            empty.item = item;
        }
    }
 //joga item equipado no slot correto
 public void Equip(ItemType type, PickupItens item)
 {
     //para cada slot
     foreach (SlotEquip equip in slot)
     {
         //se for do mesmo tipo do que o recebido
         if (equip.type == type)
         {
             equip.item = item;//item do slot recebe item
             break;
         }
     }
 }