Exemple #1
0
 private void Update()
 {
     if (isInRange && !isEmpty && InputManager.Interact())
     {
         GenericItem itemCopy = item.GetCopy();
         //Item tooltip isn't appearing
         if (inventory.AddItem(itemCopy))
         {
             FindObjectOfType <AudioManager>().Play("ItemPickup");
             amount--;
             if (amount == 0)
             {
                 isEmpty = true;
                 e.gameObject.SetActive(false);
                 spriteRenderer.enabled = false;
                 chestRenderer.sprite   = open;
                 FindObjectOfType <AudioManager>().Play("ChestOpen");
             }
         }
         else
         {
             itemCopy.Destroy();
         }
     }
 }
Exemple #2
0
 private void RemoveMaterials(IItemContainer itemContainer)
 {
     foreach (ItemAmount itemAmount in Materials)
     {
         for (int i = 0; i < itemAmount.Amount; i++)
         {
             GenericItem oldItem = itemContainer.RemoveItem(itemAmount.Item.ID);
             oldItem.Destroy();
         }
     }
 }
    public void Craft(IItemContainer itemContainer)
    {
        if (CanCraft(itemContainer))
        {
            foreach (ItemAmount itemAmount in Materials)
            {
                for (int i = 0; i < itemAmount.Amount; i++)
                {
                    GenericItem oldItem = itemContainer.RemoveItem(itemAmount.Item.ID);
                    oldItem.Destroy();
                }
            }

            foreach (ItemAmount itemAmount in Results)
            {
                for (int i = 0; i < itemAmount.Amount; i++)
                {
                    itemContainer.AddItem(itemAmount.Item.GetCopy());
                    FindObjectOfType <AudioManager>().Play("Craft"); //CRAFTING ITEM SOUND
                }
            }
        }
    }