Esempio n. 1
0
    }//restarts selected invenotry items

    public void AddItem(int id)
    {
        Item itemToAdd = allItem.FetchItemByID(id);                                                    // Getting item i need

        foreach (GameObject i in slots)                                                                //going through all object
        {
            if (i.GetComponentInChildren <Slot_Item>().item.ID == itemToAdd.ID && itemToAdd.Stackable) //if its stacakbe and is in slot
            {
                itemToAdd.Amount += 1;                                                                 //change the amount nubmer in UI
                i.GetComponentInChildren <Text>().text = itemToAdd.Amount.ToString();                  //changing amount
                return;
            }
        }

        for (int i = 0; i < slots.Count; i++)                                                             //for every slot
        {
            if (slots[i].transform.GetChild(0).GetComponent <Slot_Item>().item.ID == -1)                  //if item in slot has id -1
            {
                slots[i].transform.GetChild(0).GetComponent <Slot_Item>().item        = itemToAdd;        //changing item to itemByID
                slots[i].transform.GetChild(0).GetComponent <Image>().sprite          = itemToAdd.Sprite; //changing Spiret to itemByID
                slots[i].transform.GetChild(0).GetComponent <Slot_Item>().item.Parent = slots[i];         //setting parent of itemToAdd
                break;
            }
        }
    }
Esempio n. 2
0
    public void RemoveItem(int id)
    {
        Item itemToRemove = database.FetchItemByID(id);

        if (itemToRemove.Stackable && CheckIfinInventory(itemToRemove))
        {
            for (int j = 0; j < items.Count; j++)
            {
                if (items[j].ID == id)
                {
                    ItemData data = slots[j].transform.GetChild(0).GetComponent <ItemData>();
                    data.amount--;
                    data.transform.GetChild(0).GetComponent <Text>().text = data.amount.ToString();
                    if (data.amount == 0)
                    {
                        Destroy(slots[j].transform.GetChild(0).gameObject);
                        items[j] = new Item();
                        break;
                    }
                    if (data.amount == 1)
                    {
                        slots[j].transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "";
                        break;
                    }
                    break;
                }
            }
        }
        else
        {
            for (int i = 0; i < items.Count; i++)
            {
                if (items[i].ID != -1 && items[i].ID == id)
                {
                    Destroy(slots[i].transform.GetChild(0).gameObject);
                    items[i] = new Item();
                    break;
                }
            }
        }
    }
Esempio n. 3
0
    public void AddItem(int _id)
    {
        Item itemToAdd = itemdatabase.FetchItemByID(_id);

        for (int i = 0; i < items.Count; i++)
        {
            if (items[i].ID == -1)
            {
                items[i] = itemToAdd;
                GameObject itemObj = Instantiate(item);
                itemObj.transform.SetParent(slots[i].transform);
                itemObj.transform.position = Vector2.zero;
                itemObj.name = itemToAdd.Title;
                itemObj.GetComponent <Image>().sprite = itemToAdd.sprite;
                break;
            }
        }
    }
Esempio n. 4
0
    public void AddItemByIDFromDataBase(int _id)
    {
        Item ItemToAdd = itemdatabase.FetchItemByID(_id);

        for (int i = 0; i < itemDataList.Count; i++)
        {
            if (itemDataList[i].ID == -1)
            {
                itemDataList[i] = ItemToAdd;
                GameObject itemObj = Instantiate(Item_prefab);
                itemObj.transform.SetParent(slotInfoList[i].transform); //auto layout
                RectTransform trans = itemObj.GetComponent <RectTransform>();
                trans.localPosition = Vector3.zero;
                itemObj.name        = ItemToAdd.Title;
                itemObj.GetComponent <Image>().sprite            = ItemToAdd.sprite;  // change sprite
                itemObj.GetComponent <ItemIndividualInfo>().item = ItemToAdd;         // Set Item Individual Info
                itemObj.GetComponent <ItemIndividualInfo>().ItemCurrentSlotIndex = i; // Set Item Individual Info
                break;                                                                // find empty item for itemtoadd
            }
        }
    }
Esempio n. 5
0
    public void AddItem(int id)
    {
        Item itemtoAdd = database.FetchItemByID(id);

        if (itemtoAdd.Stackable && CheckItem(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++)
            {
                if (items [i].ID == -1)
                {
                    items [i] = itemtoAdd;
                    GameObject itemObj = Instantiate(inventoryItem);
                    itemObj.GetComponent <ItemData>().item = itemtoAdd;
                    itemObj.transform.SetParent(slots [i].transform);
                    itemObj.transform.position             = Vector2.zero;
                    itemObj.GetComponent <ItemData>().slot = i;
                    itemObj.GetComponent <Image> ().sprite = itemtoAdd.Sprite;
                    itemObj.name = itemtoAdd.Title;

                    break;
                }
            }
        }
    }
Esempio n. 6
0
    IEnumerator repeat_load_item()
    {
        while (true)
        {
            yield return(new WaitForSeconds(0.5f));

            for (int i = 0; i < database.database.Count; i++) //Items.Count
            {
                Item itemToAdd = database.FetchItemByID(i);

                string key = itemToAdd.Title;

                Items[i] = itemToAdd;
                GameObject itemObj = Instantiate(inventoryItem);     //아이템 생성
                itemObj.GetComponent <ItemData>().item = itemToAdd;
                itemObj.GetComponent <ItemData>().slot = i;
                itemObj.transform.SetParent(slots[i].transform);     //부모를 [i]번째 슬릇으로 설정
                itemObj.transform.position            = Vector2.zero;
                itemObj.transform.localScale          = Vector3.one;
                itemObj.GetComponent <Image>().sprite = itemToAdd.Sprite;    //아이템 이미지 가져오기
                itemObj.name = itemToAdd.Title;
                ItemData data = slots[i].transform.GetChild(1).GetComponent <ItemData>();
                data.transform.GetChild(0).GetComponent <Text>().text = data.amount.ToString();
                if (PlayerPrefs.GetInt(key + "_amount") < 1) //아이템의 amount수가 1이하가 될시
                {
                    GameObject parents = itemObj.transform.parent.gameObject;
                    parents.SetActive(false);
                }
                else
                {
                    GameObject parents = itemObj.transform.parent.gameObject;
                    parents.SetActive(true);
                }
            }
        }
    }