// Start is called before the first frame update void Start() { ctrl = new InventoryControll(haha.Instance, GameObject.Find("InventoryPanel(Clone)").GetComponent <InventoryPanel>()); ctrl.CreateSlot(); ctrl.AddItem(2); ctrl.AddItem(2); ctrl.AddItem(2); ctrl.AddItem(2); ctrl.AddItem(2); ctrl.AddItem(2); ctrl.AddItem(2); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(1); ctrl.AddItem(0); StartCoroutine(Test()); }
//preparação e criação do inventario private void Start() { instance = this; //pega o slot prefab do prefab do inventario e o adiciona na primeira possição da lista slotPrefab.SetUpSlot(); slotPrefab.transform.SetParent(invGrid, false); invSlot.Add(slotPrefab.GetComponent <SlotInventory>()); //para cada possição restante adiciona um novo slot prefab na grid for (int i = 1; i < 20; i++) { GameObject tempSlot = Instantiate(slotPrefab.gameObject); tempSlot.transform.SetParent(invGrid, false); invSlot.Add(tempSlot.GetComponent <SlotInventory>()); } //e desativa a UI this.gameObject.SetActive(false); }
//finaliza o uso do item public virtual void AfterUse() { //se for stackable if (isStack) { RemoveItem(); //se nao tiver mais o item if (amt <= 0) { //esvazia o slot inventory.selectedSlot.item = null; amt = 0; } } else { if (inventory == null) { inventory = GameObject.Find("UIInventory").GetComponent <InventoryControll>(); } inventory.selectedSlot.item = null;//esvazia slot } }