From 1c4535203798a4a169f0fc8a9ec918d0b56faca2 Mon Sep 17 00:00:00 2001 From: micle Date: Sun, 11 Jan 2026 00:25:55 +0100 Subject: [PATCH] Ported charge items. Implemented property helper. Made netherite charges fire-resistant. --- .../item/charge/ChargeItem.java | 27 +++++++++---------- .../item/charge/DiamondChargeItem.java | 2 +- .../item/charge/IronChargeItem.java | 6 ++++- .../item/charge/NetheriteChargeItem.java | 2 +- .../item/charge/StrawChargeItem.java | 2 +- 5 files changed, 21 insertions(+), 18 deletions(-) diff --git a/src/main/java/dev/micle/totemofreviving/item/charge/ChargeItem.java b/src/main/java/dev/micle/totemofreviving/item/charge/ChargeItem.java index 05087dd..5c4d369 100644 --- a/src/main/java/dev/micle/totemofreviving/item/charge/ChargeItem.java +++ b/src/main/java/dev/micle/totemofreviving/item/charge/ChargeItem.java @@ -6,28 +6,27 @@ import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; import net.minecraft.world.item.TooltipFlag; -import net.minecraft.world.level.Level; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import javax.annotation.Nullable; import javax.annotation.ParametersAreNonnullByDefault; import java.util.List; public class ChargeItem extends Item { - public ChargeItem() { - this(Rarity.COMMON); + public ChargeItem(Properties properties) { + super(properties); } - - public ChargeItem(Rarity rarity) { - super(new Properties().stacksTo(64).rarity(rarity)); + + public static Properties createProperties(Rarity rarity, boolean isFireResistant) { + Properties properties = new Properties().stacksTo(64).rarity(rarity); + + if (isFireResistant) properties = properties.fireResistant(); + + return properties; } - + @Override - @OnlyIn(Dist.CLIENT) @ParametersAreNonnullByDefault - public void appendHoverText(ItemStack stack, @Nullable Level world, List tooltip, TooltipFlag tooltipFlag) { - tooltip.add(Component.literal(ChatFormatting.WHITE + "Used for charging its corresponding totem.")); - super.appendHoverText(stack, world, tooltip, tooltipFlag); + public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) { + tooltipComponents.add(Component.literal(ChatFormatting.WHITE + "Used for charging its corresponding totem.")); + super.appendHoverText(stack, context, tooltipComponents, tooltipFlag); } } diff --git a/src/main/java/dev/micle/totemofreviving/item/charge/DiamondChargeItem.java b/src/main/java/dev/micle/totemofreviving/item/charge/DiamondChargeItem.java index 348ea84..387e30b 100644 --- a/src/main/java/dev/micle/totemofreviving/item/charge/DiamondChargeItem.java +++ b/src/main/java/dev/micle/totemofreviving/item/charge/DiamondChargeItem.java @@ -4,7 +4,7 @@ import net.minecraft.world.item.Rarity; public class DiamondChargeItem extends ChargeItem { public DiamondChargeItem() { - super(Rarity.RARE); + super(createProperties(Rarity.RARE, false)); } public static String getName() { diff --git a/src/main/java/dev/micle/totemofreviving/item/charge/IronChargeItem.java b/src/main/java/dev/micle/totemofreviving/item/charge/IronChargeItem.java index c9f0443..e6e0084 100644 --- a/src/main/java/dev/micle/totemofreviving/item/charge/IronChargeItem.java +++ b/src/main/java/dev/micle/totemofreviving/item/charge/IronChargeItem.java @@ -1,7 +1,11 @@ package dev.micle.totemofreviving.item.charge; +import net.minecraft.world.item.Rarity; + public class IronChargeItem extends ChargeItem { - public IronChargeItem() {} + public IronChargeItem() { + super(createProperties(Rarity.COMMON, false)); + } public static String getName() { return "iron_charge"; diff --git a/src/main/java/dev/micle/totemofreviving/item/charge/NetheriteChargeItem.java b/src/main/java/dev/micle/totemofreviving/item/charge/NetheriteChargeItem.java index 2795e51..d3e2f74 100644 --- a/src/main/java/dev/micle/totemofreviving/item/charge/NetheriteChargeItem.java +++ b/src/main/java/dev/micle/totemofreviving/item/charge/NetheriteChargeItem.java @@ -4,7 +4,7 @@ import net.minecraft.world.item.Rarity; public class NetheriteChargeItem extends ChargeItem { public NetheriteChargeItem() { - super(Rarity.EPIC); + super(createProperties(Rarity.EPIC, true)); } public static String getName() { diff --git a/src/main/java/dev/micle/totemofreviving/item/charge/StrawChargeItem.java b/src/main/java/dev/micle/totemofreviving/item/charge/StrawChargeItem.java index 534a8f4..72e0fbc 100644 --- a/src/main/java/dev/micle/totemofreviving/item/charge/StrawChargeItem.java +++ b/src/main/java/dev/micle/totemofreviving/item/charge/StrawChargeItem.java @@ -4,7 +4,7 @@ import net.minecraft.world.item.Rarity; public class StrawChargeItem extends ChargeItem { public StrawChargeItem() { - super(Rarity.UNCOMMON); + super(createProperties(Rarity.UNCOMMON, false)); } public static String getName() {