}//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; } } }
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; } } } }
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; } } }
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 } } }
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; } } } }
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); } } } }