From c78bd65a36714fe22892d4de39488f928be09e8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C4=81rlis=20=C4=8Cer=C5=86avskis?= Date: Mon, 24 Feb 2025 21:39:13 +0200 Subject: [PATCH 1/2] Changed missed Component.literal to Component.translatable, including in gem tooltips, made gem tooltips customizable --- .../infernalstudios/miningmaster/init/MMItems.java | 2 +- .../infernalstudios/miningmaster/items/GemItem.java | 11 +++++++---- .../resources/assets/miningmaster/lang/en_us.json | 4 +++- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/infernalstudios/miningmaster/init/MMItems.java b/src/main/java/org/infernalstudios/miningmaster/init/MMItems.java index 7ff36ec..576f439 100644 --- a/src/main/java/org/infernalstudios/miningmaster/init/MMItems.java +++ b/src/main/java/org/infernalstudios/miningmaster/init/MMItems.java @@ -100,7 +100,7 @@ public static RegistryObject registerItem(String name, Suppl public static final RegistryObject TAB = TABS.register("mining_master", () -> CreativeModeTab.builder() .icon(() -> new ItemStack(TAB_ITEM.get())) - .title(Component.literal("Mining Master")) + .title(Component.translatable("itemGroup.MiningMasterTab")) .displayItems((features, output) -> { for (RegistryObject item : ITEMS.getEntries()) { if (item != TAB_ITEM) output.accept(item.get()); diff --git a/src/main/java/org/infernalstudios/miningmaster/items/GemItem.java b/src/main/java/org/infernalstudios/miningmaster/items/GemItem.java index 7b89027..b0bd06a 100644 --- a/src/main/java/org/infernalstudios/miningmaster/items/GemItem.java +++ b/src/main/java/org/infernalstudios/miningmaster/items/GemItem.java @@ -1,6 +1,7 @@ package org.infernalstudios.miningmaster.items; import net.minecraft.client.gui.screens.Screen; +import net.minecraft.locale.Language; import net.minecraft.network.chat.Component; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; @@ -15,14 +16,16 @@ public GemItem() { super(new Item.Properties()); } - - @Override public void appendHoverText(ItemStack stack, @Nullable Level worldIn, List tooltip, TooltipFlag flagIn) { if (Screen.hasShiftDown()) { - tooltip.add(Component.literal("\u00A7dCombine with an item in a smithing table to enchant!")); + tooltip.add( + Language.getInstance().has(this.getDescriptionId() + ".tooltip") ? + Component.translatable(this.getDescriptionId() + ".tooltip") : + Component.translatable("miningmaster.item.tooltip.fallback_gem") + ); } else { - tooltip.add(Component.literal("\u00A78Hold Shift for Instructions")); + tooltip.add(Component.translatable("miningmaster.item.tooltip.hold_shift")); } } } diff --git a/src/main/resources/assets/miningmaster/lang/en_us.json b/src/main/resources/assets/miningmaster/lang/en_us.json index 02dcfe9..0cc99ba 100644 --- a/src/main/resources/assets/miningmaster/lang/en_us.json +++ b/src/main/resources/assets/miningmaster/lang/en_us.json @@ -84,6 +84,9 @@ "item.miningmaster.paragon_leggings": "Paragon Leggings", "item.miningmaster.paragon_boots": "Paragon Boots", + "miningmaster.item.tooltip.hold_shift": "\u00A78Hold [SHIFT] for more info", + "miningmaster.item.tooltip.fallback_gem": "\u00A7dCombine with an item in a smithing table to enchant!", + "miningmaster:container.gem_forge": "Gem Forge", "miningmaster.advancements.miningmaster.root.title": "Mining Master", @@ -204,7 +207,6 @@ "miningmaster.config.option.randomGemsPerChunk": "Random Gem Spawns Per Chunk", "miningmaster.config.tooltip.randomGemsPerChunk": "Determines how many times a random gem ore will attempt to spawn per chunk. REQUIRES RESTART.", - "enchantment.miningmaster.freezing": "Freezing", "enchantment.miningmaster.freezing.desc": "Inflicts Slowness on hit. Also deals extra damage to fire-based entities.", From 52968e7078b0fd5dd4595bba6f174f22c48219c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C4=81rlis=20=C4=8Cer=C5=86avskis?= Date: Mon, 24 Feb 2025 22:13:00 +0200 Subject: [PATCH 2/2] Fixed multiline tooltips, partially implemented @Jonathing suggestion --- .../miningmaster/items/GemItem.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/infernalstudios/miningmaster/items/GemItem.java b/src/main/java/org/infernalstudios/miningmaster/items/GemItem.java index b0bd06a..c6537d3 100644 --- a/src/main/java/org/infernalstudios/miningmaster/items/GemItem.java +++ b/src/main/java/org/infernalstudios/miningmaster/items/GemItem.java @@ -19,13 +19,18 @@ public GemItem() { @Override public void appendHoverText(ItemStack stack, @Nullable Level worldIn, List tooltip, TooltipFlag flagIn) { if (Screen.hasShiftDown()) { - tooltip.add( - Language.getInstance().has(this.getDescriptionId() + ".tooltip") ? - Component.translatable(this.getDescriptionId() + ".tooltip") : - Component.translatable("miningmaster.item.tooltip.fallback_gem") - ); + String tooltipText = this.getTooltipText().getString(); + for (String line : tooltipText.split("\n")) { + tooltip.add(Component.literal(line)); + } } else { tooltip.add(Component.translatable("miningmaster.item.tooltip.hold_shift")); } } + + private Component getTooltipText() { + return Language.getInstance().has(this.getDescriptionId() + ".tooltip") ? + Component.translatable(this.getDescriptionId() + ".tooltip") : + Component.translatable("miningmaster.item.tooltip.fallback_gem"); + } }