public static void UnequipItem(PlayableCharacter unequipper, string item_id) { if (!(ItemManager.FindItemWithID(item_id) is Equipment)) { throw new InvalidOperationException($"Tried to unequip {item_id}, which is not an equipment"); } // Unequips the item_id from the unequipper CEnums.EquipmentType equip_type = (ItemManager.FindItemWithID(item_id) as Equipment).EquipType; equipment[unequipper.UnitID][equip_type] = default_equip_map[equip_type]; AddItemToInventory(item_id); }
public static void EquipItem(PlayableCharacter equipper, string item_id) { if (!(ItemManager.FindItemWithID(item_id) is Equipment)) { throw new InvalidOperationException($"Tried to equip {item_id}, which is not an equipment"); } // Equips the item_id to equipper CEnums.EquipmentType equip_type = (ItemManager.FindItemWithID(item_id) as Equipment).EquipType; if (GetEquipment(equipper.UnitID)[equip_type].ItemID != default_equip_map[equip_type]) { AddItemToInventory(GetEquipment(equipper.UnitID)[equip_type].ItemID); } equipment[equipper.UnitID][equip_type] = item_id; RemoveItemFromInventory(item_id); }