From 838302d77de77685b01ddb28fb2df84a31041bfc Mon Sep 17 00:00:00 2001 From: GrahamKracker Date: Wed, 11 Dec 2024 07:41:25 -0500 Subject: [PATCH 1/6] Initial commit --- .../datagen/lang/EnglishLanguageProvider.java | 1 + .../mod/config/categories/MiscConfig.java | 4 ++++ .../mod/features/misc/utils/ReforgeHelper.java | 18 ++++++++++++++++++ .../mod/features/misc/utils/UtilsFeatures.java | 1 + .../mod/translations/TranslationKeys.java | 1 + 5 files changed, 25 insertions(+) create mode 100644 src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java diff --git a/src/datagen/java/codes/cookies/mod/datagen/lang/EnglishLanguageProvider.java b/src/datagen/java/codes/cookies/mod/datagen/lang/EnglishLanguageProvider.java index c716b02a..46de9ca2 100644 --- a/src/datagen/java/codes/cookies/mod/datagen/lang/EnglishLanguageProvider.java +++ b/src/datagen/java/codes/cookies/mod/datagen/lang/EnglishLanguageProvider.java @@ -453,6 +453,7 @@ private void addMiningConfig(CookiesTranslationBuilder translationBuilder) { private void addMiscConfig(CookiesTranslationBuilder translationBuilder) { translationBuilder.addConfig(CONFIG_MISC, "Misc Config", "Miscellaneous settings"); translationBuilder.addConfig(CONFIG_MISC_EDIT_HUD, "To edit hud", "Opens a screen where you can edit the hud elements!"); + translationBuilder.addConfig(CONFIG_MISC_REFORGE_TOOLTIP, "Show reforge tooltip", "Shows the current reforge on the tooltip of an item in the reforge menu"); translationBuilder.addConfig(CONFIG_MISC_SHOW_MUSEUM_ARMOR_SETS, "Show museum armor sets", "Shows the components of an armor set in the description."); translationBuilder.addConfig(CONFIG_MISC_ENABLE_SCROLL_TOOLTIPS, "Scrollable Tooltips", """ Allows you to scroll through tooltips diff --git a/src/main/java/codes/cookies/mod/config/categories/MiscConfig.java b/src/main/java/codes/cookies/mod/config/categories/MiscConfig.java index 57b1e677..f450a62f 100644 --- a/src/main/java/codes/cookies/mod/config/categories/MiscConfig.java +++ b/src/main/java/codes/cookies/mod/config/categories/MiscConfig.java @@ -32,6 +32,7 @@ public class MiscConfig extends Category { @Expose public BooleanOption enableScrollableTooltips = new BooleanOption(CONFIG_MISC_ENABLE_SCROLL_TOOLTIPS, true); + @Expose public BooleanOption signEditEnterSubmits = new BooleanOption(CONFIG_MISC_SIGN_EDIT_ENTER_SUBMITS, false); @@ -41,6 +42,9 @@ public class MiscConfig extends Category { @Expose public BooleanOption showPing = new BooleanOption(CONFIG_MISC_SHOW_PING, false); + @Expose + public BooleanOption enableReforgeTooltip = new BooleanOption(CONFIG_MISC_REFORGE_TOOLTIP, false); + @Expose public BooleanOption showMuseumArmorSets = new BooleanOption(CONFIG_MISC_SHOW_MUSEUM_ARMOR_SETS, true); diff --git a/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java b/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java new file mode 100644 index 00000000..ccf63115 --- /dev/null +++ b/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java @@ -0,0 +1,18 @@ +package codes.cookies.mod.features.misc.utils; + +import codes.cookies.mod.config.ConfigManager; +import codes.cookies.mod.events.InventoryEvents; +import codes.cookies.mod.utils.skyblock.LocationUtils; + +import net.minecraft.client.gui.screen.ingame.HandledScreen; +import net.minecraft.client.option.KeyBinding; + +public class ReforgeHelper { + public ReforgeHelper(HandledScreen handledScreen) { + + } + + public static void init() { + InventoryEvents.beforeInit("Reforge Item", inv -> ConfigManager.getConfig().miscConfig.enableReforgeTooltip.getValue(), ReforgeHelper::new); + } +} diff --git a/src/main/java/codes/cookies/mod/features/misc/utils/UtilsFeatures.java b/src/main/java/codes/cookies/mod/features/misc/utils/UtilsFeatures.java index 754034d5..edb235b3 100644 --- a/src/main/java/codes/cookies/mod/features/misc/utils/UtilsFeatures.java +++ b/src/main/java/codes/cookies/mod/features/misc/utils/UtilsFeatures.java @@ -16,6 +16,7 @@ public static void load() { Loader.load("AnvilHelper", AnvilHelper::new); Loader.load("ForgeRecipes", ForgeRecipes::new); Loader.load("StatsTracker", StatsTracker::init); + Loader.load("ReforgeHelper", ReforgeHelper::init); } } diff --git a/src/main/java/codes/cookies/mod/translations/TranslationKeys.java b/src/main/java/codes/cookies/mod/translations/TranslationKeys.java index b7fa1a4b..aec903e8 100644 --- a/src/main/java/codes/cookies/mod/translations/TranslationKeys.java +++ b/src/main/java/codes/cookies/mod/translations/TranslationKeys.java @@ -311,6 +311,7 @@ public interface TranslationKeys { String CONFIG_MISC = CONFIG + ".misc"; String CONFIG_MISC_EDIT_HUD = CONFIG_MISC + ".edit_hud"; + String CONFIG_MISC_REFORGE_TOOLTIP = CONFIG_MISC + ".reforge_tooltip"; String CONFIG_MISC_SHOW_MUSEUM_ARMOR_SETS = CONFIG_MISC + ".show_museum_armor_sets"; String CONFIG_MISC_ENABLE_SCROLL_TOOLTIPS = CONFIG_MISC + ".scroll_tooltips"; String CONFIG_MISC_SIGN_EDIT_ENTER_SUBMITS = CONFIG_MISC + ".sign_edit_enter_submits"; From c28809c87666a2952aa95f136bcd675033cb749a Mon Sep 17 00:00:00 2001 From: GrahamKracker Date: Wed, 11 Dec 2024 11:46:02 -0500 Subject: [PATCH 2/6] update to latest loom and fapi --- build.gradle.kts | 2 +- gradle.properties | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index d8b38106..76113c7b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,7 +1,7 @@ import org.gradle.jvm.tasks.Jar plugins { - id("fabric-loom") version "1.8-SNAPSHOT" + id("fabric-loom") version "1.9-SNAPSHOT" id("maven-publish") id("dev.morazzer.cookies.internal.classified-jars") } diff --git a/gradle.properties b/gradle.properties index f3fe2c14..2d59b65c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -13,4 +13,4 @@ maven_group=cookiesmod archives_base_name=cookies-mod # Dependencies -fabric_version=0.106.1+1.21.3 +fabric_version=0.110.0+1.21.3 From 49ca1787fa2ff14603a8307b3d97dd623191178d Mon Sep 17 00:00:00 2001 From: GrahamKracker Date: Wed, 11 Dec 2024 13:27:18 -0500 Subject: [PATCH 3/6] update to latest loom and fapi --- gradle.properties | 1 + gradle/wrapper/gradle-wrapper.properties | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 2d59b65c..25c8813c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,6 +7,7 @@ org.gradle.parallel=true minecraft_version=1.21.3 yarn_mappings=1.21.3+build.2 loader_version=0.16.9 + # Mod Properties mod_version=1.3.4-beta.4 maven_group=cookiesmod diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 32734a04..233ad220 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Fri May 31 16:57:55 CEST 2024 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists From cd698bad772a231564ce942ec41168acc5723a72 Mon Sep 17 00:00:00 2001 From: GrahamKracker Date: Wed, 11 Dec 2024 14:20:23 -0500 Subject: [PATCH 4/6] initial commit --- .../cabcb80d088276cffde41e74584028f1c00b99b8 | 4 ++-- .../generated/assets/cookies-mod/lang/en_us.json | 2 ++ .../mod/features/misc/utils/ReforgeHelper.java | 16 +++++++++++++++- 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/main/generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 b/src/main/generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 index 646ed537..8c37d588 100644 --- a/src/main/generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 +++ b/src/main/generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 @@ -1,2 +1,2 @@ -// 1.21.3 2024-11-18T21:50:02.348035 cookies-mod/Language (en_us) -c4ccaf30006997855f4e249ad734e937b167f02f assets/cookies-mod/lang/en_us.json +// 1.21.3 2024-12-11T14:15:47.3017455 cookies-mod/Language (en_us) +b38b189b066d12ab0c2d533a84fa00f9718ed60c assets\cookies-mod\lang\en_us.json diff --git a/src/main/generated/assets/cookies-mod/lang/en_us.json b/src/main/generated/assets/cookies-mod/lang/en_us.json index c4799472..50c605bf 100644 --- a/src/main/generated/assets/cookies-mod/lang/en_us.json +++ b/src/main/generated/assets/cookies-mod/lang/en_us.json @@ -329,6 +329,8 @@ "cookies.config.misc.notifications.sound.tooltip": "Plays a sound when sending the notification", "cookies.config.misc.notifications.type.name": "Notification type", "cookies.config.misc.notifications.type.tooltip": "Changes how you get the notifications.\n\nChat -> Simple chat message\nToast -> Popup in the top right of your screen\nBoth -> Chat message + popup", + "cookies.config.misc.reforge_tooltip.name": "Show reforge tooltip", + "cookies.config.misc.reforge_tooltip.tooltip": "Shows the current reforge on the tooltip of an item in the reforge menu", "cookies.config.misc.scroll_tooltips.name": "Scrollable Tooltips", "cookies.config.misc.scroll_tooltips.tooltip": "Allows you to scroll through tooltips\n\nCTRL + Scroll -> move horizontal\nSHIFT + Scroll -> chop tooltips", "cookies.config.misc.show_dye_armor.name": "Show armor if dyed", diff --git a/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java b/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java index ccf63115..ad19299e 100644 --- a/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java +++ b/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java @@ -2,14 +2,28 @@ import codes.cookies.mod.config.ConfigManager; import codes.cookies.mod.events.InventoryEvents; +import codes.cookies.mod.utils.cookies.CookiesUtils; import codes.cookies.mod.utils.skyblock.LocationUtils; import net.minecraft.client.gui.screen.ingame.HandledScreen; import net.minecraft.client.option.KeyBinding; +import net.minecraft.item.ItemStack; +import net.minecraft.screen.ScreenHandler; +import net.minecraft.screen.ScreenHandlerListener; public class ReforgeHelper { public ReforgeHelper(HandledScreen handledScreen) { - + handledScreen.getScreenHandler().addListener(new ScreenHandlerListener() { + @Override + public void onSlotUpdate(ScreenHandler handler, int slotId, ItemStack stack) { + CookiesUtils.sendMessage("onSlotUpdate: " + slotId + " " + stack); + } + + @Override + public void onPropertyUpdate(ScreenHandler handler, int property, int value) { + CookiesUtils.sendMessage("onPropertyUpdate: " + property + " " + value); + } + }); } public static void init() { From 0ee0512245540d2ba6ed6bf7c063cdd296a832fd Mon Sep 17 00:00:00 2001 From: GrahamKracker Date: Wed, 11 Dec 2024 23:23:00 -0500 Subject: [PATCH 5/6] initial commit for reforge helper --- .../features/misc/utils/ReforgeHelper.java | 57 ++++++++++++++----- 1 file changed, 43 insertions(+), 14 deletions(-) diff --git a/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java b/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java index ad19299e..3b57ba8d 100644 --- a/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java +++ b/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java @@ -2,31 +2,60 @@ import codes.cookies.mod.config.ConfigManager; import codes.cookies.mod.events.InventoryEvents; +import codes.cookies.mod.events.api.InventoryContentUpdateEvent; import codes.cookies.mod.utils.cookies.CookiesUtils; -import codes.cookies.mod.utils.skyblock.LocationUtils; +import codes.cookies.mod.utils.exceptions.ExceptionHandler; +import codes.cookies.mod.utils.items.CookiesDataComponentTypes; + +import codes.cookies.mod.utils.items.ItemTooltipComponent; + +import codes.cookies.mod.utils.items.ItemUtils; import net.minecraft.client.gui.screen.ingame.HandledScreen; -import net.minecraft.client.option.KeyBinding; -import net.minecraft.item.ItemStack; -import net.minecraft.screen.ScreenHandler; -import net.minecraft.screen.ScreenHandlerListener; +import net.minecraft.component.DataComponentTypes; +import net.minecraft.text.Style; +import net.minecraft.text.Text; +import net.minecraft.util.Formatting; + +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; public class ReforgeHelper { public ReforgeHelper(HandledScreen handledScreen) { - handledScreen.getScreenHandler().addListener(new ScreenHandlerListener() { - @Override - public void onSlotUpdate(ScreenHandler handler, int slotId, ItemStack stack) { - CookiesUtils.sendMessage("onSlotUpdate: " + slotId + " " + stack); - } - @Override - public void onPropertyUpdate(ScreenHandler handler, int property, int value) { - CookiesUtils.sendMessage("onPropertyUpdate: " + property + " " + value); + InventoryContentUpdateEvent.register(handledScreen.getScreenHandler(), (slotIndex, itemStack) -> { + try { + if (slotIndex == 13) { + if (itemStack == null || itemStack.isEmpty() || itemStack.get(DataComponentTypes.CUSTOM_DATA) == null) { + return; + } + var reforgeButton = handledScreen.getScreenHandler().getSlot(22).getStack(); + if (reforgeButton == null || reforgeButton.isEmpty()) { + return; + } + + var name = reforgeButton.getName(); + if (name == null) { + return; + } + + var reforge = itemStack.get(DataComponentTypes.CUSTOM_DATA).copyNbt().getString("modifier"); + + var lore = new ArrayList(); + lore.add(Text.literal("Last Reforge: " + reforge).setStyle(Style.EMPTY.withColor(Formatting.GOLD))); + lore.addAll(reforgeButton.get(DataComponentTypes.LORE).styledLines()); + + reforgeButton.set(CookiesDataComponentTypes.CUSTOM_LORE, lore); + } + } + catch (Exception e) { + ExceptionHandler.handleException(e); } }); } public static void init() { - InventoryEvents.beforeInit("Reforge Item", inv -> ConfigManager.getConfig().miscConfig.enableReforgeTooltip.getValue(), ReforgeHelper::new); + InventoryEvents.afterInit("Reforge Item", inv -> ConfigManager.getConfig().miscConfig.enableReforgeTooltip.getValue(), ReforgeHelper::new); } } From 734d7c00cbc3b9421de8750fd37802f10993faff Mon Sep 17 00:00:00 2001 From: GrahamKracker Date: Fri, 24 Jan 2025 09:18:02 -0500 Subject: [PATCH 6/6] push some minor local changes --- .../generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 | 4 ++-- .../java/codes/cookies/mod/config/categories/MiscConfig.java | 2 +- .../codes/cookies/mod/features/misc/utils/ReforgeHelper.java | 4 +--- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main/generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 b/src/main/generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 index 0fa54e6f..85fdd9f9 100644 --- a/src/main/generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 +++ b/src/main/generated/.cache/cabcb80d088276cffde41e74584028f1c00b99b8 @@ -1,2 +1,2 @@ -// 1.21.3 2024-12-11T14:15:47.3017455 cookies-mod/Language (en_us) -b38b189b066d12ab0c2d533a84fa00f9718ed60c assets\cookies-mod\lang\en_us.json \ No newline at end of file +// 1.21.3 2024-12-12T08:59:32.4246417 cookies-mod/Language (en_us) +b38b189b066d12ab0c2d533a84fa00f9718ed60c assets\cookies-mod\lang\en_us.json diff --git a/src/main/java/codes/cookies/mod/config/categories/MiscConfig.java b/src/main/java/codes/cookies/mod/config/categories/MiscConfig.java index c3d505aa..61b65d28 100644 --- a/src/main/java/codes/cookies/mod/config/categories/MiscConfig.java +++ b/src/main/java/codes/cookies/mod/config/categories/MiscConfig.java @@ -43,7 +43,7 @@ public class MiscConfig extends Category { public BooleanOption showPing = new BooleanOption(CONFIG_MISC_SHOW_PING, false); @Expose - public BooleanOption enableReforgeTooltip = new BooleanOption(CONFIG_MISC_REFORGE_TOOLTIP, false); + public BooleanOption enableReforgeTooltip = new BooleanOption(CONFIG_MISC_REFORGE_TOOLTIP, true); @Expose public BooleanOption showMuseumArmorSets = new BooleanOption(CONFIG_MISC_SHOW_MUSEUM_ARMOR_SETS, true); diff --git a/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java b/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java index 3b57ba8d..6b7b916b 100644 --- a/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java +++ b/src/main/java/codes/cookies/mod/features/misc/utils/ReforgeHelper.java @@ -40,10 +40,8 @@ public ReforgeHelper(HandledScreen handledScreen) { return; } - var reforge = itemStack.get(DataComponentTypes.CUSTOM_DATA).copyNbt().getString("modifier"); - var lore = new ArrayList(); - lore.add(Text.literal("Last Reforge: " + reforge).setStyle(Style.EMPTY.withColor(Formatting.GOLD))); + lore.add(Text.literal("Last Reforge: " + itemStack.get(CookiesDataComponentTypes.MODIFIER)).setStyle(Style.EMPTY.withColor(Formatting.GOLD))); lore.addAll(reforgeButton.get(DataComponentTypes.LORE).styledLines()); reforgeButton.set(CookiesDataComponentTypes.CUSTOM_LORE, lore);