diff --git a/src/main/java/techreborn/items/armor/ItemLapotronicOrbpack.java b/src/main/java/techreborn/items/armor/ItemLapotronicOrbpack.java index 2fd0b8db4..59dfc705b 100644 --- a/src/main/java/techreborn/items/armor/ItemLapotronicOrbpack.java +++ b/src/main/java/techreborn/items/armor/ItemLapotronicOrbpack.java @@ -51,7 +51,7 @@ public class ItemLapotronicOrbpack extends ArmorItem implements EnergyHolder, It public int transferLimit = 100_000; public ItemLapotronicOrbpack() { - super(TRArmorMaterial.LAPOTRONPACK, EquipmentSlot.CHEST, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1)); + super(TRArmorMaterial.LAPOTRONPACK, EquipmentSlot.CHEST, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1).maxDamage(-1)); } // Item @@ -70,6 +70,11 @@ public class ItemLapotronicOrbpack extends ArmorItem implements EnergyHolder, It } } + @Override + public boolean isDamageable() { + return false; + } + @Override public double getDurability(ItemStack stack) { return 1 - ItemUtils.getPowerForDurabilityBar(stack); diff --git a/src/main/java/techreborn/items/armor/ItemLithiumIonBatpack.java b/src/main/java/techreborn/items/armor/ItemLithiumIonBatpack.java index 29db1f048..e696f0bfe 100644 --- a/src/main/java/techreborn/items/armor/ItemLithiumIonBatpack.java +++ b/src/main/java/techreborn/items/armor/ItemLithiumIonBatpack.java @@ -54,7 +54,7 @@ public class ItemLithiumIonBatpack extends ArmorItem implements EnergyHolder, It public int transferLimit = 2_000; public ItemLithiumIonBatpack() { - super(TRArmorMaterial.LITHIUMBATPACK, EquipmentSlot.CHEST, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1)); + super(TRArmorMaterial.LITHIUMBATPACK, EquipmentSlot.CHEST, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1).maxDamage(-1)); } public static void distributePowerToInventory(World world, PlayerEntity player, ItemStack itemStack, int maxSend) { @@ -86,6 +86,11 @@ public class ItemLithiumIonBatpack extends ArmorItem implements EnergyHolder, It } } + @Override + public boolean isDamageable() { + return false; + } + @Override public double getDurability(ItemStack stack) { return 1 - ItemUtils.getPowerForDurabilityBar(stack); diff --git a/src/main/java/techreborn/items/armor/ItemTRArmour.java b/src/main/java/techreborn/items/armor/ItemTRArmour.java index 434ea3c0a..16294db8b 100644 --- a/src/main/java/techreborn/items/armor/ItemTRArmour.java +++ b/src/main/java/techreborn/items/armor/ItemTRArmour.java @@ -55,10 +55,15 @@ public class ItemTRArmour extends ArmorItem implements ItemDurabilityExtensions } public ItemTRArmour(ArmorMaterial material, EquipmentSlot slot, String repairOreDict) { - super(material, slot, (new Item.Settings()).group(TechReborn.ITEMGROUP).maxCount(1)); + super(material, slot, (new Item.Settings()).group(TechReborn.ITEMGROUP).maxCount(1).maxDamage(-1)); this.repairOreDict = repairOreDict; } + @Override + public boolean isDamageable() { + return false; + } + @Override public boolean canRepair(ItemStack toRepair, ItemStack repair) { if (toRepair.getItem() == this && !repairOreDict.isEmpty()) { diff --git a/src/main/java/techreborn/items/tool/ChainsawItem.java b/src/main/java/techreborn/items/tool/ChainsawItem.java index 67b7b59f0..125f8c79d 100644 --- a/src/main/java/techreborn/items/tool/ChainsawItem.java +++ b/src/main/java/techreborn/items/tool/ChainsawItem.java @@ -55,7 +55,7 @@ public class ChainsawItem extends AxeItem implements EnergyHolder, ItemDurabilit public int transferLimit = 100; public ChainsawItem(ToolMaterials material, int energyCapacity, float unpoweredSpeed) { - super(material, (int) material.getAttackDamage(), unpoweredSpeed, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1)); + super(material, (int) material.getAttackDamage(), unpoweredSpeed, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1).maxDamage(-1)); this.maxCharge = energyCapacity; this.addPropertyGetter(new Identifier("techreborn", "animated"), (stack, worldIn, entityIn) -> { diff --git a/src/main/java/techreborn/items/tool/DrillItem.java b/src/main/java/techreborn/items/tool/DrillItem.java index 71e0244fb..82e78b4c0 100644 --- a/src/main/java/techreborn/items/tool/DrillItem.java +++ b/src/main/java/techreborn/items/tool/DrillItem.java @@ -51,7 +51,7 @@ public class DrillItem extends PickaxeItem implements EnergyHolder, ItemDurabili public int transferLimit = 100; public DrillItem(ToolMaterial material, int energyCapacity, float unpoweredSpeed, float efficiencyOnProperMaterial) { - super(material, (int) material.getAttackDamage(), unpoweredSpeed, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1)); + super(material, (int) material.getAttackDamage(), unpoweredSpeed, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1).maxDamage(-1)); this.maxCharge = energyCapacity; this.unpoweredSpeed = unpoweredSpeed; this.poweredSpeed = efficiencyOnProperMaterial; diff --git a/src/main/java/techreborn/items/tool/JackhammerItem.java b/src/main/java/techreborn/items/tool/JackhammerItem.java index e9d299680..12b496861 100644 --- a/src/main/java/techreborn/items/tool/JackhammerItem.java +++ b/src/main/java/techreborn/items/tool/JackhammerItem.java @@ -53,7 +53,7 @@ public class JackhammerItem extends PickaxeItem implements EnergyHolder, ItemDur public int transferLimit = EnergyTier.MEDIUM.getMaxInput(); public JackhammerItem(ToolMaterials material, int energyCapacity) { - super(material, (int) material.getAttackDamage(), 1f, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1)); + super(material, (int) material.getAttackDamage(), 1f, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1).maxDamage(-1)); this.maxCharge = energyCapacity; } @@ -82,6 +82,11 @@ public class JackhammerItem extends PickaxeItem implements EnergyHolder, ItemDur return true; } + @Override + public boolean isDamageable() { + return false; + } + // ToolItem @Override public boolean canRepair(ItemStack stack, ItemStack ingredient) { diff --git a/src/main/java/techreborn/items/tool/basic/ElectricTreetapItem.java b/src/main/java/techreborn/items/tool/basic/ElectricTreetapItem.java index a94a05c9e..57e4c2640 100644 --- a/src/main/java/techreborn/items/tool/basic/ElectricTreetapItem.java +++ b/src/main/java/techreborn/items/tool/basic/ElectricTreetapItem.java @@ -48,7 +48,12 @@ public class ElectricTreetapItem extends Item implements EnergyHolder, ItemDurab public int cost = 20; public ElectricTreetapItem() { - super(new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1)); + super(new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1).maxDamage(-1)); + } + + @Override + public boolean isDamageable() { + return false; } @Override diff --git a/src/main/java/techreborn/items/tool/industrial/NanosaberItem.java b/src/main/java/techreborn/items/tool/industrial/NanosaberItem.java index 4e8ae8cc5..91bff50ce 100644 --- a/src/main/java/techreborn/items/tool/industrial/NanosaberItem.java +++ b/src/main/java/techreborn/items/tool/industrial/NanosaberItem.java @@ -62,7 +62,7 @@ public class NanosaberItem extends SwordItem implements EnergyHolder, ItemDurabi // 4M FE max charge with 1k charge rate public NanosaberItem() { - super(ToolMaterials.DIAMOND, 1, 1, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1)); + super(ToolMaterials.DIAMOND, 1, 1, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1).maxDamage(-1)); this.addPropertyGetter(new Identifier("techreborn:active"), (stack, worldIn, entityIn) -> { if (ItemUtils.isActive(stack)) { if (Energy.of(stack).getMaxStored() - Energy.of(stack).getEnergy() >= 0.9 * Energy.of(stack).getMaxStored()) {