private static bool CanBeEquiped( IEquipmentCarrier equipmentCarrier, int slotIndex, Equipment equipment) { return(EquipmentCarrierHelper.CanBeEquiped(equipmentCarrier, slotIndex, equipment)); }
protected override void ValidateSetEquipment(Equipment equipment, int slotIndex) { var slot = Slots[slotIndex]; if (!EquipmentCarrierHelper.CheckSlotCompability(equipment, slot)) { throw new ArgumentException($"Для экипировки указан слот {slot}, не подходящий для данного типа предмета {equipment}."); } if (!EquipmentCarrierHelper.CheckDualCompability(this, equipment, slot, slotIndex)) { throw new InvalidOperationException($"Попытка экипировать предмет {equipment}, несовместимый с текущий экипировкой."); } if (!EquipmentCarrierHelper.CheckShieldCompability(this, equipment, slot, slotIndex)) { throw new InvalidOperationException("Попытка экипировать два щита."); } }