Esempio n. 1
0
        public void Equip(EquipmentItem item)
        {
            if (item == null)
            {
                return;
            }

            int           slotIndex = (int)item.equipmentType;
            EquipmentItem oldItem   = Unequip(slotIndex);

            if (item.equipmentType == EquipmentType.Weapon)
            {
                if (weaponController == null)
                {
                    Debug.Log("Weapon controller not found.");
                    return;
                }

                weaponController.EquipWeapon(item);

                currentEquipment[slotIndex] = item;
                player.CharacterStats.UpdateStatText();
                inventory.RemoveItem(item.id);
                equipmentPanel.UpdateEquippableSlot(slotIndex, item);
                return;
            }

            currentEquipment[slotIndex] = item;
            player.CharacterStats.AddModifiers(item);
            player.CharacterStats.UpdateStatText();
            inventory.RemoveItem(item.id);
            equipmentPanel.UpdateEquippableSlot(slotIndex, item);
        }
Esempio n. 2
0
        public EquipmentItem Unequip(int slotIndex)
        {
            EquipmentItem oldItem = null;

            if (currentEquipment[slotIndex] != null)
            {
                oldItem = currentEquipment[slotIndex];
                player.CharacterStats.RemoveModifiers(oldItem);
                player.CharacterStats.UpdateStatText();
                inventory.GiveItem(oldItem.id);


                currentEquipment[slotIndex] = null;
                weaponController.UnEquipWeapon();
                equipmentPanel.UpdateEquippableSlot(slotIndex, null);
            }

            return(oldItem);
        }
Esempio n. 3
0
 public int GetSlotIndex(EquipmentItem item)
 {
     return((int)item.equipmentType);
 }
Esempio n. 4
0
 public EquipmentItem(EquipmentItem equipmentItem) : base(equipmentItem)
 {
     equipmentType = equipmentItem.equipmentType;
 }