using System.Collections; using System.Collections.Generic; using TMPro; using UnityEngine; using UnityEngine.UI; public class UI_Inventory : MonoBehaviour { /* [SerializeField] Inventory inventory; public Transform inventoryContainer; public Transform itemSlotTemplate; private RectTransform[] UIItemSlots; private Button[] buttons; private Slot pickedItem = new Slot(); private RectTransform pickedItemSlot; private void Start() { //itemSlotTemplate = inventoryContainer.Find("containerTemplate"); pickedItemSlot = Instantiate(itemSlotTemplate, this.transform).GetComponent(); } void pickItem(int index) { pickedItem = inventory.GetInventory()[index].Copy(); inventory.GetInventory()[index].Clear(); UIItemSlots[index].GetChild(0).Find("Icon").gameObject.SetActive(false); } void placeItem() { } public void buttonEvent(int index) { if (pickedItem.GetItem() == null && inventory.GetInventory()[index].GetItem() != null) { pickItem(index); } else { if (pickedItem.GetItem() != null) { int rest = inventory.Add(pickedItem.GetItem(), pickedItem.GetCount(), index); if (rest == 0) { pickedItem.Clear(); } else { pickedItem.Count = rest; } //placeItem(index); } } //Debug.Log("button " + index + " has been pressed!"); } public void setInventory(Inventory inventory) { inventory.onItemChangedCallback += updateInventory; updateInventory(); } private void Update() { //buttons[index] = itemSlotRectTransform.Find("Button").GetComponent