From 79ecff610a0811a86efbbbcaed63260ea844551f Mon Sep 17 00:00:00 2001 From: f3shqt <30647065+f3shqt@users.noreply.github.com> Date: Tue, 7 May 2024 15:18:58 +0100 Subject: [PATCH 1/8] Added Cold Overlay Adds Minecraft Cold Overlay to the Glacite Tunnels --- .../de/hysky/skyblocker/SkyblockerMod.java | 1 + .../skyblock/dwarven/GlaciteColdOverlay.java | 70 +++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java diff --git a/src/main/java/de/hysky/skyblocker/SkyblockerMod.java b/src/main/java/de/hysky/skyblocker/SkyblockerMod.java index e6b2d25a2d..22cf094c5e 100644 --- a/src/main/java/de/hysky/skyblocker/SkyblockerMod.java +++ b/src/main/java/de/hysky/skyblocker/SkyblockerMod.java @@ -129,6 +129,7 @@ public void onInitializeClient() { LowerSensitivity.init(); CrystalsLocationsManager.init(); MetalDetector.init(); + GlaciteColdOverlay.init(); ChatMessageListener.init(); Shortcuts.init(); ChatRulesHandler.init(); diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java new file mode 100644 index 0000000000..441d2f48bb --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java @@ -0,0 +1,70 @@ +package de.hysky.skyblocker.skyblock.dwarven; + + +import com.mojang.blaze3d.systems.RenderSystem; +import de.hysky.skyblocker.config.SkyblockerConfigManager; +import de.hysky.skyblocker.events.HudRenderEvents; +import de.hysky.skyblocker.utils.Utils; +import de.hysky.skyblocker.utils.scheduler.Scheduler; +import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents; +import net.minecraft.client.gui.DrawContext; +import net.minecraft.text.Text; +import net.minecraft.util.Identifier; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class GlaciteColdOverlay { + private static final Identifier POWDER_SNOW_OUTLINE = new Identifier("textures/misc/powder_snow_outline.png"); + private static final Pattern COLD_PATTERN = Pattern.compile("Cold: -(\\d+)❄"); + private static int cold = 0; + private static long resetTime = System.currentTimeMillis(); + + public static void init() { + Scheduler.INSTANCE.scheduleCyclic(GlaciteColdOverlay::update, 20); + HudRenderEvents.AFTER_MAIN_HUD.register(GlaciteColdOverlay::render); + ClientReceiveMessageEvents.GAME.register(GlaciteColdOverlay::coldReset); + } + + private static void coldReset(Text text, boolean b) { + String message = text.getString(); + if (message.equals("The warmth of the campfire reduced your ❄ Cold to 0!")) { + cold = 0; + resetTime = System.currentTimeMillis(); + } + } + + public static void update() { + if (!Utils.isInDwarvenMines() || System.currentTimeMillis() - resetTime < 3000 || !SkyblockerConfigManager.get().locations.dwarvenMines.enableGlaciteColdOverlay) { + cold = 0; + return; + } + for (String line : Utils.STRING_SCOREBOARD) { + Matcher coldMatcher = COLD_PATTERN.matcher(line); + if (coldMatcher.matches()) { + String value = coldMatcher.group(1); + cold = Integer.parseInt(value); + return; + } + } + cold = 0; + } + + private static void renderOverlay(DrawContext context, Identifier texture, float opacity) { + RenderSystem.disableDepthTest(); + RenderSystem.depthMask(false); + RenderSystem.enableBlend(); + context.setShaderColor(1.0f, 1.0f, 1.0f, opacity); + context.drawTexture(texture, 0, 0, -90, 0.0f, 0.0f, context.getScaledWindowWidth(), context.getScaledWindowHeight(), context.getScaledWindowWidth(), context.getScaledWindowHeight()); + RenderSystem.disableBlend(); + RenderSystem.depthMask(true); + RenderSystem.enableDepthTest(); + context.setShaderColor(1.0f, 1.0f, 1.0f, 1.0f); + } + + public static void render(DrawContext context, float tickDelta) { + if (Utils.isInDwarvenMines() && SkyblockerConfigManager.get().locations.dwarvenMines.enableGlaciteColdOverlay) { + renderOverlay(context, POWDER_SNOW_OUTLINE, cold / 100f); + } + } +} From 35ae41532e51530f3f255fff2b8f58d8cff54bef Mon Sep 17 00:00:00 2001 From: f3shqt <30647065+f3shqt@users.noreply.github.com> Date: Tue, 7 May 2024 20:50:21 +0100 Subject: [PATCH 2/8] Changes Implemented Implemented changes suggested and fixed render order to stop clashing with other guis. --- src/main/java/de/hysky/skyblocker/SkyblockerMod.java | 2 +- .../hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/hysky/skyblocker/SkyblockerMod.java b/src/main/java/de/hysky/skyblocker/SkyblockerMod.java index 22cf094c5e..28d80b395f 100644 --- a/src/main/java/de/hysky/skyblocker/SkyblockerMod.java +++ b/src/main/java/de/hysky/skyblocker/SkyblockerMod.java @@ -122,6 +122,7 @@ public void onInitializeClient() { BackpackPreview.init(); ItemCooldowns.init(); TabHud.init(); + GlaciteColdOverlay.init(); DwarvenHud.init(); CommissionLabels.init(); CrystalsHud.init(); @@ -129,7 +130,6 @@ public void onInitializeClient() { LowerSensitivity.init(); CrystalsLocationsManager.init(); MetalDetector.init(); - GlaciteColdOverlay.init(); ChatMessageListener.init(); Shortcuts.init(); ChatRulesHandler.init(); diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java index 441d2f48bb..cb86dae6bc 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java @@ -27,6 +27,9 @@ public static void init() { } private static void coldReset(Text text, boolean b) { + if (Utils.isInDwarvenMines() || b) { + return; + } String message = text.getString(); if (message.equals("The warmth of the campfire reduced your ❄ Cold to 0!")) { cold = 0; From 9d389911c426a7ee2f97fcde8be39db332c34b2d Mon Sep 17 00:00:00 2001 From: f3shqt <30647065+f3shqt@users.noreply.github.com> Date: Wed, 8 May 2024 00:16:56 +0100 Subject: [PATCH 3/8] Fixed Check check was inverted --- .../hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java index cb86dae6bc..e09c97998c 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java @@ -27,7 +27,7 @@ public static void init() { } private static void coldReset(Text text, boolean b) { - if (Utils.isInDwarvenMines() || b) { + if (!Utils.isInDwarvenMines() || b) { return; } String message = text.getString(); From 3cf6a7b4d5a17428382cfa4b0e08103c5e5b9148 Mon Sep 17 00:00:00 2001 From: f3shqt <30647065+f3shqt@users.noreply.github.com> Date: Fri, 10 May 2024 15:22:17 +0100 Subject: [PATCH 4/8] Fixed Config and Added Glacite Tunnels Section --- .../config/categories/MiningCategory.java | 14 ++++++++++++++ .../skyblocker/config/configs/MiningConfig.java | 8 ++++++++ .../skyblock/dwarven/GlaciteColdOverlay.java | 4 ++-- .../resources/assets/skyblocker/lang/en_us.json | 5 +++++ 4 files changed, 29 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java index 8dc587fdc6..5fba3dd78a 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java @@ -210,6 +210,20 @@ public static ConfigCategory create(SkyblockerConfig defaults, SkyblockerConfig .controller(ConfigUtils::createBooleanController) .build()) .build()) + + //Glacite Tunnels + .group(OptionGroup.createBuilder() + .name(Text.translatable("skyblocker.config.mining.glacite.coldOverlay")) + .collapsed(false) + .option(Option.createBuilder() + .name(Text.translatable("skyblocker.config.mining.glacite.coldOverlay.enabled")) + .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.glacite.coldOverlay.enabled.@Tooltip"))) + .binding(defaults.mining.glacite.ColdOverlay, + () -> config.mining.glacite.ColdOverlay, + newValue -> config.mining.glacite.ColdOverlay = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .build()) .build(); } } diff --git a/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java index 65fd63ca6d..241893ac41 100644 --- a/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java @@ -24,6 +24,9 @@ public class MiningConfig { @SerialEntry public CommissionWaypoints commissionWaypoints = new CommissionWaypoints(); + @SerialEntry + public Glacite glacite = new Glacite(); + public static class DwarvenMines { @SerialEntry public boolean solveFetchur = true; @@ -119,6 +122,11 @@ public String toString() { } } + public static class Glacite { + @SerialEntry + public boolean ColdOverlay = true; + } + public enum DwarvenHudStyle { SIMPLE, FANCY, CLASSIC; diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java index e09c97998c..1dd7cac93c 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java @@ -38,7 +38,7 @@ private static void coldReset(Text text, boolean b) { } public static void update() { - if (!Utils.isInDwarvenMines() || System.currentTimeMillis() - resetTime < 3000 || !SkyblockerConfigManager.get().locations.dwarvenMines.enableGlaciteColdOverlay) { + if (!Utils.isInDwarvenMines() || System.currentTimeMillis() - resetTime < 3000 || !SkyblockerConfigManager.get().mining.glacite.ColdOverlay) { cold = 0; return; } @@ -66,7 +66,7 @@ private static void renderOverlay(DrawContext context, Identifier texture, float } public static void render(DrawContext context, float tickDelta) { - if (Utils.isInDwarvenMines() && SkyblockerConfigManager.get().locations.dwarvenMines.enableGlaciteColdOverlay) { + if (Utils.isInDwarvenMines() && SkyblockerConfigManager.get().mining.glacite.ColdOverlay) { renderOverlay(context, POWDER_SNOW_OUTLINE, cold / 100f); } } diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index 4304ff3d6a..a56e5e1cd2 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -419,6 +419,11 @@ "skyblocker.config.mining.crystalsWaypoints.findInChat.@Tooltip": "When in crystal hollows read the chat to see if coordinates are sent and extract these to show as waypoint or on the map", "skyblocker.config.mining.crystalsWaypoints.shareFail": "Can only share waypoints you have found.", + "skyblocker.config.mining.glacite.coldOverlay": "Glacite Tunnels", + "skyblocker.config.mining.glacite.coldOverlay.enabled": "Cold Overlay", + "skyblocker.config.mining.glacite.coldOverlay.enabled.@Tooltip": "Shows a frosty overlay in the Glacite mines that gets stronger as you get colder.", + + "skyblocker.config.mining.dwarvenHud": "Dwarven HUD", "skyblocker.config.mining.dwarvenHud.enabledCommissions": "Enable Commissions", "skyblocker.config.mining.dwarvenHud.enabledPowder": "Enable Powder", From 39be66bb1a613ced28687a130254360850f85a12 Mon Sep 17 00:00:00 2001 From: f3shqt <30647065+f3shqt@users.noreply.github.com> Date: Fri, 10 May 2024 20:49:12 +0100 Subject: [PATCH 5/8] Fix formatting --- .../skyblocker/config/categories/MiningCategory.java | 8 ++++---- .../de/hysky/skyblocker/config/configs/MiningConfig.java | 2 +- .../skyblocker/skyblock/dwarven/GlaciteColdOverlay.java | 4 ++-- src/main/resources/assets/skyblocker/lang/en_us.json | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java index 5fba3dd78a..e5a34dc280 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java @@ -213,14 +213,14 @@ public static ConfigCategory create(SkyblockerConfig defaults, SkyblockerConfig //Glacite Tunnels .group(OptionGroup.createBuilder() - .name(Text.translatable("skyblocker.config.mining.glacite.coldOverlay")) + .name(Text.translatable("skyblocker.config.mining.glacite")) .collapsed(false) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.mining.glacite.coldOverlay.enabled")) .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.glacite.coldOverlay.enabled.@Tooltip"))) - .binding(defaults.mining.glacite.ColdOverlay, - () -> config.mining.glacite.ColdOverlay, - newValue -> config.mining.glacite.ColdOverlay = newValue) + .binding(defaults.mining.glacite.coldOverlay, + () -> config.mining.glacite.coldOverlay, + newValue -> config.mining.glacite.coldOverlay = newValue) .controller(ConfigUtils::createBooleanController) .build()) .build()) diff --git a/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java index 241893ac41..a2a9bcf715 100644 --- a/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java @@ -124,7 +124,7 @@ public String toString() { public static class Glacite { @SerialEntry - public boolean ColdOverlay = true; + public boolean coldOverlay = true; } public enum DwarvenHudStyle { diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java index 1dd7cac93c..454d275f5a 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java @@ -38,7 +38,7 @@ private static void coldReset(Text text, boolean b) { } public static void update() { - if (!Utils.isInDwarvenMines() || System.currentTimeMillis() - resetTime < 3000 || !SkyblockerConfigManager.get().mining.glacite.ColdOverlay) { + if (!Utils.isInDwarvenMines() || System.currentTimeMillis() - resetTime < 3000 || !SkyblockerConfigManager.get().mining.glacite.coldOverlay) { cold = 0; return; } @@ -66,7 +66,7 @@ private static void renderOverlay(DrawContext context, Identifier texture, float } public static void render(DrawContext context, float tickDelta) { - if (Utils.isInDwarvenMines() && SkyblockerConfigManager.get().mining.glacite.ColdOverlay) { + if (Utils.isInDwarvenMines() && SkyblockerConfigManager.get().mining.glacite.coldOverlay) { renderOverlay(context, POWDER_SNOW_OUTLINE, cold / 100f); } } diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index a56e5e1cd2..7d64494748 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -419,7 +419,7 @@ "skyblocker.config.mining.crystalsWaypoints.findInChat.@Tooltip": "When in crystal hollows read the chat to see if coordinates are sent and extract these to show as waypoint or on the map", "skyblocker.config.mining.crystalsWaypoints.shareFail": "Can only share waypoints you have found.", - "skyblocker.config.mining.glacite.coldOverlay": "Glacite Tunnels", + "skyblocker.config.mining.glacite": "Glacite Tunnels", "skyblocker.config.mining.glacite.coldOverlay.enabled": "Cold Overlay", "skyblocker.config.mining.glacite.coldOverlay.enabled.@Tooltip": "Shows a frosty overlay in the Glacite mines that gets stronger as you get colder.", From 7a410265e257924747fdb565b5bf2fb5772f9e3f Mon Sep 17 00:00:00 2001 From: f3shqt <30647065+f3shqt@users.noreply.github.com> Date: Fri, 10 May 2024 21:34:29 +0100 Subject: [PATCH 6/8] Moved Strings down --- src/main/resources/assets/skyblocker/lang/en_us.json | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index 7d64494748..80c288639f 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -419,11 +419,6 @@ "skyblocker.config.mining.crystalsWaypoints.findInChat.@Tooltip": "When in crystal hollows read the chat to see if coordinates are sent and extract these to show as waypoint or on the map", "skyblocker.config.mining.crystalsWaypoints.shareFail": "Can only share waypoints you have found.", - "skyblocker.config.mining.glacite": "Glacite Tunnels", - "skyblocker.config.mining.glacite.coldOverlay.enabled": "Cold Overlay", - "skyblocker.config.mining.glacite.coldOverlay.enabled.@Tooltip": "Shows a frosty overlay in the Glacite mines that gets stronger as you get colder.", - - "skyblocker.config.mining.dwarvenHud": "Dwarven HUD", "skyblocker.config.mining.dwarvenHud.enabledCommissions": "Enable Commissions", "skyblocker.config.mining.dwarvenHud.enabledPowder": "Enable Powder", @@ -439,6 +434,10 @@ "skyblocker.config.mining.enableDrillFuel": "Enable Drill Fuel", + "skyblocker.config.mining.glacite": "Glacite Tunnels", + "skyblocker.config.mining.glacite.coldOverlay.enabled": "Cold Overlay", + "skyblocker.config.mining.glacite.coldOverlay.enabled.@Tooltip": "Shows a frosty overlay in the Glacite mines that gets stronger as you get colder.", + "skyblocker.config.misc": "Misc", "skyblocker.config.misc.richPresence": "Discord RPC", From 2e48d6529f17334a2a50b45563dac72d7f4b7dfe Mon Sep 17 00:00:00 2001 From: f3shqt <30647065+f3shqt@users.noreply.github.com> Date: Fri, 10 May 2024 23:41:46 +0100 Subject: [PATCH 7/8] Removed .enabled --- .../de/hysky/skyblocker/config/categories/MiningCategory.java | 4 ++-- src/main/resources/assets/skyblocker/lang/en_us.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java index e5a34dc280..e77e9f4b60 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java @@ -216,8 +216,8 @@ public static ConfigCategory create(SkyblockerConfig defaults, SkyblockerConfig .name(Text.translatable("skyblocker.config.mining.glacite")) .collapsed(false) .option(Option.createBuilder() - .name(Text.translatable("skyblocker.config.mining.glacite.coldOverlay.enabled")) - .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.glacite.coldOverlay.enabled.@Tooltip"))) + .name(Text.translatable("skyblocker.config.mining.glacite.coldOverlay")) + .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.glacite.coldOverlay@Tooltip"))) .binding(defaults.mining.glacite.coldOverlay, () -> config.mining.glacite.coldOverlay, newValue -> config.mining.glacite.coldOverlay = newValue) diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index 80c288639f..650da1f85a 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -435,8 +435,8 @@ "skyblocker.config.mining.enableDrillFuel": "Enable Drill Fuel", "skyblocker.config.mining.glacite": "Glacite Tunnels", - "skyblocker.config.mining.glacite.coldOverlay.enabled": "Cold Overlay", - "skyblocker.config.mining.glacite.coldOverlay.enabled.@Tooltip": "Shows a frosty overlay in the Glacite mines that gets stronger as you get colder.", + "skyblocker.config.mining.glacite.coldOverlay": "Cold Overlay", + "skyblocker.config.mining.glacite.coldOverlay@Tooltip": "Shows a frosty overlay in the Glacite mines that gets stronger as you get colder.", "skyblocker.config.misc": "Misc", From b659adf0f8b2771afaaf35900d483b7ad4e782b2 Mon Sep 17 00:00:00 2001 From: Aaron <51387595+AzureAaron@users.noreply.github.com> Date: Mon, 13 May 2024 17:00:14 -0400 Subject: [PATCH 8/8] Change draw order Previously it could draw on top of the hotbar at larger GUI scales --- .../java/de/hysky/skyblocker/mixins/InGameHudMixin.java | 6 ++++++ .../skyblocker/skyblock/dwarven/GlaciteColdOverlay.java | 7 ++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/java/de/hysky/skyblocker/mixins/InGameHudMixin.java b/src/main/java/de/hysky/skyblocker/mixins/InGameHudMixin.java index e69287da93..7f4721a58b 100644 --- a/src/main/java/de/hysky/skyblocker/mixins/InGameHudMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixins/InGameHudMixin.java @@ -6,6 +6,7 @@ import de.hysky.skyblocker.SkyblockerMod; import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.events.HudRenderEvents; +import de.hysky.skyblocker.skyblock.dwarven.GlaciteColdOverlay; import de.hysky.skyblocker.skyblock.fancybars.FancyStatusBars; import de.hysky.skyblocker.skyblock.item.HotbarSlotLock; import de.hysky.skyblocker.skyblock.item.ItemCooldowns; @@ -114,6 +115,11 @@ public abstract class InGameHudMixin { if (Utils.isOnSkyblock() && SkyblockerConfigManager.get().uiAndVisuals.hideStatusEffectOverlay) ci.cancel(); } + @Inject(method = "renderMiscOverlays", at = @At("TAIL")) + private void skyblocker$afterMiscOverlays(CallbackInfo ci, @Local(argsOnly = true) DrawContext context) { + GlaciteColdOverlay.render(context); + } + @ModifyExpressionValue(method = "renderCrosshair", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/network/ClientPlayerEntity;getAttackCooldownProgress(F)F")) private float skyblocker$modifyAttackIndicatorCooldown(float cooldownProgress) { if (Utils.isOnSkyblock() && client.player != null) { diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java index 454d275f5a..3839a71241 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java @@ -1,9 +1,7 @@ package de.hysky.skyblocker.skyblock.dwarven; - import com.mojang.blaze3d.systems.RenderSystem; import de.hysky.skyblocker.config.SkyblockerConfigManager; -import de.hysky.skyblocker.events.HudRenderEvents; import de.hysky.skyblocker.utils.Utils; import de.hysky.skyblocker.utils.scheduler.Scheduler; import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents; @@ -22,7 +20,6 @@ public class GlaciteColdOverlay { public static void init() { Scheduler.INSTANCE.scheduleCyclic(GlaciteColdOverlay::update, 20); - HudRenderEvents.AFTER_MAIN_HUD.register(GlaciteColdOverlay::render); ClientReceiveMessageEvents.GAME.register(GlaciteColdOverlay::coldReset); } @@ -37,7 +34,7 @@ private static void coldReset(Text text, boolean b) { } } - public static void update() { + private static void update() { if (!Utils.isInDwarvenMines() || System.currentTimeMillis() - resetTime < 3000 || !SkyblockerConfigManager.get().mining.glacite.coldOverlay) { cold = 0; return; @@ -65,7 +62,7 @@ private static void renderOverlay(DrawContext context, Identifier texture, float context.setShaderColor(1.0f, 1.0f, 1.0f, 1.0f); } - public static void render(DrawContext context, float tickDelta) { + public static void render(DrawContext context) { if (Utils.isInDwarvenMines() && SkyblockerConfigManager.get().mining.glacite.coldOverlay) { renderOverlay(context, POWDER_SNOW_OUTLINE, cold / 100f); }