Example #1
0
        UsableItem CreateDataListEntryItem(SourceDataItemSO source, ItemFactoryData template)
        {
            ITEMTYPE   type = source.type;
            UsableItem tmp;

            switch (type)
            {
            case ITEMTYPE.FOOD:
                tmp = new ConsumableItem(template, source);
                //tmp.SetTarget(owner);
                return(tmp);

            // break;
            case ITEMTYPE.CLEANING_MATERIAL:
                tmp = new ConsumableItem(template, source);
                //tmp.SetTarget(owner);
                return(tmp);

            case ITEMTYPE.PROTECTIVE_EQUIPMENT:
                tmp = new EquipmentItem(template, source);
                //tmp.SetTarget(owner);
                return(tmp);
                // break;
            }
            Debug.LogError("type not found, please check: " + template.ItemName);
            return(null);
        }
Example #2
0
 public void AddItemToBag(ItemFactoryData itemToAdd, int qty)
 {
     foreach (ItemFactoryData itm in ItemsInBag)
     {
         if (itm.ItemName == itemToAdd.ItemName)
         {
             itm.quantity += qty;
             return;
         }
     }
     itemToAdd.quantity = qty;
     ItemsInBag.Add(itemToAdd);
     refreshBag(itemToAdd);
 }
Example #3
0
 /// <summary>
 /// Call this to add a new item to
 /// an inventory
 /// </summary>
 /// <param name="itemToAdd"></param>
 public void AddItemToBag(ItemFactoryData itemToAdd)
 {
     foreach (ItemFactoryData itm in ItemsInBag)
     {
         if (itm.ItemName == itemToAdd.ItemName)
         {
             itm.quantity += 1;
             return;
         }
     }
     itemToAdd.quantity = 1;
     ItemsInBag.Add(itemToAdd);
     refreshBag(itemToAdd);
     UpdateAbundanceData();
 }
Example #4
0
        void refreshBag(ItemFactoryData temp)
        {
            SourceDataItemSO tmp;

            if (db.ItemDataMasterList.TryGetValue(temp.ItemName, out tmp))
            {
                UsableItem itemToAdd = CreateDataListEntryItem(tmp, temp);

                if (!BagLookUp.TryGetValue(temp.ItemName, out UsableItem item))
                {
                    BagLookUp.Add(temp.ItemName, itemToAdd);
                }
                else
                {
                    item.Quantity += itemToAdd.Quantity;
                }
            }
        }
Example #5
0
        public bool TransferItemData(string itemName, int qty, out ItemFactoryData itemToTransfer)
        {
            foreach (ItemFactoryData itm in ItemsInBag)
            {
                if (itm.ItemName == itemName)
                {
                    if (itm.quantity < qty)
                    {
                        itemToTransfer = null;
                        //removeFromBag(item.ItemName);
                        return(false);
                    }

                    itm.quantity -= qty;
                    //removeFromBag(item.ItemName, 1);
                    itemToTransfer = new ItemFactoryData(itm.ItemName, qty);
                    return(true);
                }
            }
            itemToTransfer = null;
            return(false);
        }
 public EquipmentItem(ItemFactoryData template, SourceDataItemSO source)
 {
     // Debug.Log("equipment cerated");
     base.Initialize(template);
     base.SetSource(source);
 }
Example #7
0
 public ConsumableItem(ItemFactoryData template, SourceDataItemSO source)
 {
     // Debug.Log("consummable created");
     base.Initialize(template);
     base.SetSource(source);
 }