From 0de4110f96d66bef5c54e8287f29696bb76191a6 Mon Sep 17 00:00:00 2001 From: drcrazy Date: Mon, 23 Dec 2019 17:56:42 +0300 Subject: [PATCH] Check for energy in tools moved to RC. --- .../items/tool/advanced/RockCutterItem.java | 50 ++++++++++--------- .../industrial/IndustrialChainsawItem.java | 15 ++---- .../tool/industrial/IndustrialDrillItem.java | 15 ++---- .../items/tool/industrial/NanosaberItem.java | 15 ++---- .../java/techreborn/utils/MessageIDs.java | 2 +- .../assets/techreborn/lang/en_us.json | 2 - 6 files changed, 40 insertions(+), 59 deletions(-) diff --git a/src/main/java/techreborn/items/tool/advanced/RockCutterItem.java b/src/main/java/techreborn/items/tool/advanced/RockCutterItem.java index ff2b1c1de..68fe27155 100644 --- a/src/main/java/techreborn/items/tool/advanced/RockCutterItem.java +++ b/src/main/java/techreborn/items/tool/advanced/RockCutterItem.java @@ -59,7 +59,7 @@ public class RockCutterItem extends PickaxeItem implements EnergyHolder, ItemDur super(ToolMaterials.DIAMOND, 1, 1, new Item.Settings().group(TechReborn.ITEMGROUP).maxCount(1)); } - // ItemPickaxe + // PickaxeItem @Override public boolean isEffectiveOn(BlockState state) { if (Items.DIAMOND_PICKAXE.isEffectiveOn(state)) { @@ -77,7 +77,7 @@ public class RockCutterItem extends PickaxeItem implements EnergyHolder, ItemDur } } - // ItemTool + // MiningToolItem @Override public boolean postMine(ItemStack stack, World worldIn, BlockState blockIn, BlockPos pos, LivingEntity entityLiving) { Random rand = new Random(); @@ -87,20 +87,18 @@ public class RockCutterItem extends PickaxeItem implements EnergyHolder, ItemDur return true; } -// @Override -// public int getHarvestLevel(ItemStack stack, ToolType toolType, @Nullable PlayerEntity player, @Nullable BlockState blockState) { -// if (!stack.hasEnchantments()) { -// stack.addEnchantment(Enchantments.SILK_TOUCH, 1); -// } -// return super.getHarvestLevel(stack, toolType, player, blockState); -// } + @Override + public boolean postHit(ItemStack itemstack, LivingEntity entityliving, LivingEntity entityliving1) { + return true; + } - // Item + // ToolItem @Override public boolean canRepair(ItemStack stack, ItemStack stack2) { return false; } + // Item @Override public void onCraft(ItemStack stack, World worldIn, PlayerEntity playerIn) { if (!stack.hasEnchantments()) { @@ -109,18 +107,8 @@ public class RockCutterItem extends PickaxeItem implements EnergyHolder, ItemDur } @Override - public double getDurability(ItemStack stack) { - return 1 - ItemUtils.getPowerForDurabilityBar(stack); - } - - @Override - public boolean showDurability(ItemStack stack) { - return true; - } - - @Override - public int getDurabilityColor(ItemStack stack) { - return PowerSystem.getDisplayPower().colour; + public boolean isDamageable() { + return false; } @Environment(EnvType.CLIENT) @@ -139,7 +127,23 @@ public class RockCutterItem extends PickaxeItem implements EnergyHolder, ItemDur itemList.add(charged); } - // IEnergyItemInfo + // ItemDurabilityExtensions + @Override + public double getDurability(ItemStack stack) { + return 1 - ItemUtils.getPowerForDurabilityBar(stack); + } + + @Override + public boolean showDurability(ItemStack stack) { + return true; + } + + @Override + public int getDurabilityColor(ItemStack stack) { + return PowerSystem.getDisplayPower().colour; + } + + // EnergyHolder @Override public double getMaxStoredPower() { return maxCharge; diff --git a/src/main/java/techreborn/items/tool/industrial/IndustrialChainsawItem.java b/src/main/java/techreborn/items/tool/industrial/IndustrialChainsawItem.java index 47ecfc84e..379d495ec 100644 --- a/src/main/java/techreborn/items/tool/industrial/IndustrialChainsawItem.java +++ b/src/main/java/techreborn/items/tool/industrial/IndustrialChainsawItem.java @@ -121,7 +121,7 @@ public class IndustrialChainsawItem extends ChainsawItem { final ItemStack stack = player.getStackInHand(hand); if (player.isSneaking()) { if (Energy.of(stack).getEnergy() < cost) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.nanosaberEnergyErrorTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberActivate"))); } else { @@ -131,14 +131,14 @@ public class IndustrialChainsawItem extends ChainsawItem { } stack.getTag().putBoolean("isActive", true); if (world.isClient) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.setTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberActive"))); } } else { stack.getOrCreateTag().putBoolean("isActive", false); if (world.isClient) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.setTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberInactive"))); } @@ -151,14 +151,7 @@ public class IndustrialChainsawItem extends ChainsawItem { @Override public void usageTick(World world, LivingEntity entity, ItemStack stack, int i) { - if (ItemUtils.isActive(stack) && Energy.of(stack).getEnergy() < cost) { - if(entity.world.isClient){ - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( - Formatting.GRAY + StringUtils.t("techreborn.message.nanosaberEnergyError") + " " - + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberDeactivating"))); - } - stack.getOrCreateTag().putBoolean("isActive", false); - } + ItemUtils.checkActive(stack, cost, entity.world.isClient, MessageIDs.poweredToolID); } @Environment(EnvType.CLIENT) diff --git a/src/main/java/techreborn/items/tool/industrial/IndustrialDrillItem.java b/src/main/java/techreborn/items/tool/industrial/IndustrialDrillItem.java index e283b89c2..42bd12689 100644 --- a/src/main/java/techreborn/items/tool/industrial/IndustrialDrillItem.java +++ b/src/main/java/techreborn/items/tool/industrial/IndustrialDrillItem.java @@ -173,7 +173,7 @@ public class IndustrialDrillItem extends DrillItem { final ItemStack stack = player.getStackInHand(hand); if (player.isSneaking()) { if (Energy.of(stack).getEnergy() < cost) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.nanosaberEnergyErrorTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberActivate"))); } else { @@ -183,14 +183,14 @@ public class IndustrialDrillItem extends DrillItem { } stack.getOrCreateTag().putBoolean("isActive", true); if (world.isClient) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.setTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberActive"))); } } else { stack.getOrCreateTag().putBoolean("isActive", false); if (world.isClient) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.setTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberInactive"))); } @@ -203,14 +203,7 @@ public class IndustrialDrillItem extends DrillItem { @Override public void usageTick(World world, LivingEntity entity, ItemStack stack, int i) { - if (ItemUtils.isActive(stack) && Energy.of(stack).getEnergy() < cost) { - if(entity.world.isClient){ - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( - Formatting.GRAY + StringUtils.t("techreborn.message.nanosaberEnergyError") + " " - + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberDeactivating"))); - } - stack.getOrCreateTag().putBoolean("isActive", false); - } + ItemUtils.checkActive(stack, cost, entity.world.isClient, MessageIDs.poweredToolID); } @Environment(EnvType.CLIENT) diff --git a/src/main/java/techreborn/items/tool/industrial/NanosaberItem.java b/src/main/java/techreborn/items/tool/industrial/NanosaberItem.java index 3fe5ab391..b188605c8 100644 --- a/src/main/java/techreborn/items/tool/industrial/NanosaberItem.java +++ b/src/main/java/techreborn/items/tool/industrial/NanosaberItem.java @@ -107,7 +107,7 @@ public class NanosaberItem extends SwordItem implements EnergyHolder, ItemDurabi final ItemStack stack = player.getStackInHand(hand); if (player.isSneaking()) { if (Energy.of(stack).getEnergy() < cost) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.nanosaberEnergyErrorTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberActivate"))); } else { @@ -117,14 +117,14 @@ public class NanosaberItem extends SwordItem implements EnergyHolder, ItemDurabi } stack.getTag().putBoolean("isActive", true); if (world.isClient) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.setTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberActive"))); } } else { stack.getOrCreateTag().putBoolean("isActive", false); if (world.isClient) { - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( + ChatUtils.sendNoSpamMessages(MessageIDs.poweredToolID, new LiteralText( Formatting.GRAY + StringUtils.t("techreborn.message.setTo") + " " + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberInactive"))); } @@ -137,14 +137,7 @@ public class NanosaberItem extends SwordItem implements EnergyHolder, ItemDurabi @Override public void inventoryTick(ItemStack stack, World worldIn, Entity entityIn, int itemSlot, boolean isSelected) { - if (ItemUtils.isActive(stack) && Energy.of(stack).getEnergy() < cost) { - if(worldIn.isClient){ - ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new LiteralText( - Formatting.GRAY + StringUtils.t("techreborn.message.nanosaberEnergyError") + " " - + Formatting.GOLD + StringUtils.t("techreborn.message.nanosaberDeactivating"))); - } - stack.getOrCreateTag().putBoolean("isActive", false); - } + ItemUtils.checkActive(stack, cost, entityIn.world.isClient, MessageIDs.poweredToolID); } @Override diff --git a/src/main/java/techreborn/utils/MessageIDs.java b/src/main/java/techreborn/utils/MessageIDs.java index 24a3b02b7..8c2ba09a3 100644 --- a/src/main/java/techreborn/utils/MessageIDs.java +++ b/src/main/java/techreborn/utils/MessageIDs.java @@ -31,6 +31,6 @@ public class MessageIDs { public static int freqTransmitterID = 0; public static int fluidPipeID = 1; public static int playerDetectorID = 2; - public static int nanosaberID = 3; + public static int poweredToolID = 3; public static int alarmID = 4; } diff --git a/src/main/resources/assets/techreborn/lang/en_us.json b/src/main/resources/assets/techreborn/lang/en_us.json index 035bb5fb0..11e397e1b 100644 --- a/src/main/resources/assets/techreborn/lang/en_us.json +++ b/src/main/resources/assets/techreborn/lang/en_us.json @@ -596,10 +596,8 @@ "techreborn.message.onlyYou": "Only You", "techreborn.message.nanosaberActive": "Active", "techreborn.message.nanosaberActivate": "Activate", - "techreborn.message.nanosaberDeactivating": "Deactivating", "techreborn.message.nanosaberInactive": "Inactive", "techreborn.message.nanosaberEnergyErrorTo": "Not Enough Energy to", - "techreborn.message.nanosaberEnergyError": "Not Enough Energy:", "techreborn.message.daygen": "Panel in direct sunlight", "techreborn.message.nightgen": "Panel in reduced sunlight", "techreborn.message.zerogen": "Panel obstructed from sky",