Esempio n. 1
0
    //Used to add an item to the inventory
    public void AddItem(int id)
    {
        Item itemToAdd = database.FetchItemById(id);

        if (itemToAdd.Stackable && CheckIfItemInInventory(itemToAdd))
        {
            for (int i = 0; i < items.Count; i++)
            {
                if (items[i].ID == id)
                {
                    ItemData data = slots[i].transform.GetChild(0).GetComponent <ItemData>();
                    data.amount++;
                    data.transform.GetChild(0).GetComponent <Text>().text = data.amount.ToString();
                    break;
                }
            }
        }
        else
        {
            for (int i = 0; i < items.Count; i++)
            {
                //Checks if the item ID is -1 which means it does not contain an item
                if (items[i].ID == -1)
                {
                    items[i] = itemToAdd;
                    GameObject itemObj = Instantiate(inventoryItem);
                    itemObj.GetComponent <ItemData>().item   = itemToAdd;
                    itemObj.GetComponent <ItemData>().amount = 1;
                    itemObj.GetComponent <ItemData>().slot   = i;
                    itemObj.transform.SetParent(slots[i].transform);
                    itemObj.transform.position            = slots[i].transform.position;
                    itemObj.GetComponent <Image>().sprite = itemToAdd.Sprite;
                    itemObj.name = itemToAdd.Title;
                    break;
                }
            }
        }
    }