// Asigna un ítem a un determinado slot public void Equip(EquipableId equipableId, int slot) { Equipable current = (slot == 0) ? itemAt0 : itemAt1; if (current) { if (current.itemId == equipableId) { // Si ya tenemos equipado este item en el slot correspondiente no hacemos nada return; } } // Obtenemos una nueva instancia del equipable de la base de datos y lo asociamos a este jugador Equipable newEquipable = ItemsDataBase.GetInstance().GetEquipable(equipableId); newEquipable.transform.SetParent(transform, false); if (slot == 0) { itemAt0 = newEquipable; } else { itemAt1 = newEquipable; } }
private void LoadInventory() { foreach (EquipableId id in itemsInInventory) { GameObject item = Object.Instantiate(inventorySlotPrefab); item.transform.SetParent(gameObject.transform, false); item.GetComponent <Image>().sprite = ItemsDataBase.GetInstance().GetSprite(id); item.GetComponent <Button>().onClick.AddListener(delegate { inventorySystem.SelectItemAndCloseInventory(id); }); } }
public void ChangeIcon(EquipableId id) { image.sprite = ItemsDataBase.GetInstance().GetSprite(id); }