aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStella <stellaarnott1@gmail.com>2024-05-30 16:40:33 -0700
committerGitHub <noreply@github.com>2024-05-31 01:40:33 +0200
commit60cb0823bcc72f901c1e8fdc3a35b2cb59809989 (patch)
treeeaa7e8ab5951d9cf47129c9b1cea57d81d328fdd /src
parent2e44956441fd8a589993360ed66f18ef950cb49a (diff)
downloadskyhanni-60cb0823bcc72f901c1e8fdc3a35b2cb59809989.tar.gz
skyhanni-60cb0823bcc72f901c1e8fdc3a35b2cb59809989.tar.bz2
skyhanni-60cb0823bcc72f901c1e8fdc3a35b2cb59809989.zip
Feature: In Water Display (#1892)
Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com>
Diffstat (limited to 'src')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/SkyHanniMod.kt2
-rw-r--r--src/main/java/at/hannibal2/skyhanni/config/features/stranded/StrandedConfig.java12
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/misc/InWaterDisplay.kt23
3 files changed, 37 insertions, 0 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/SkyHanniMod.kt b/src/main/java/at/hannibal2/skyhanni/SkyHanniMod.kt
index 311c65807..e0f4d1240 100644
--- a/src/main/java/at/hannibal2/skyhanni/SkyHanniMod.kt
+++ b/src/main/java/at/hannibal2/skyhanni/SkyHanniMod.kt
@@ -348,6 +348,7 @@ import at.hannibal2.skyhanni.features.misc.FixNEUHeavyPearls
import at.hannibal2.skyhanni.features.misc.HideArmor
import at.hannibal2.skyhanni.features.misc.HideFarEntities
import at.hannibal2.skyhanni.features.misc.InGameDateDisplay
+import at.hannibal2.skyhanni.features.misc.InWaterDisplay
import at.hannibal2.skyhanni.features.misc.JoinCrystalHollows
import at.hannibal2.skyhanni.features.misc.LesserOrbHider
import at.hannibal2.skyhanni.features.misc.LockMouseLook
@@ -937,6 +938,7 @@ class SkyHanniMod {
loadModule(HighlightPlaceableNpcs())
loadModule(PresentWaypoints())
loadModule(MiningEventTracker())
+ loadModule(InWaterDisplay)
loadModule(MiningNotifications)
loadModule(JyrreTimer())
loadModule(TotemOfCorruption())
diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/stranded/StrandedConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/stranded/StrandedConfig.java
index 595a0f173..f5e37c0c6 100644
--- a/src/main/java/at/hannibal2/skyhanni/config/features/stranded/StrandedConfig.java
+++ b/src/main/java/at/hannibal2/skyhanni/config/features/stranded/StrandedConfig.java
@@ -1,8 +1,10 @@
package at.hannibal2.skyhanni.config.features.stranded;
import at.hannibal2.skyhanni.config.FeatureToggle;
+import at.hannibal2.skyhanni.config.core.config.Position;
import com.google.gson.annotations.Expose;
import io.github.notenoughupdates.moulconfig.annotations.ConfigEditorBoolean;
+import io.github.notenoughupdates.moulconfig.annotations.ConfigLink;
import io.github.notenoughupdates.moulconfig.annotations.ConfigOption;
public class StrandedConfig {
@@ -11,4 +13,14 @@ public class StrandedConfig {
@ConfigEditorBoolean
@FeatureToggle
public boolean highlightPlaceableNpcs = false;
+
+ @Expose
+ @ConfigOption(name = "In Water Display", desc = "Displays if the Player is in water.")
+ @ConfigEditorBoolean
+ @FeatureToggle
+ public boolean inWaterDisplay = false;
+
+ @Expose
+ @ConfigLink(owner = StrandedConfig.class, field = "inWaterDisplay")
+ public Position inWaterPosition = new Position(20, 20);
}
diff --git a/src/main/java/at/hannibal2/skyhanni/features/misc/InWaterDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/misc/InWaterDisplay.kt
new file mode 100644
index 000000000..f5e15b04a
--- /dev/null
+++ b/src/main/java/at/hannibal2/skyhanni/features/misc/InWaterDisplay.kt
@@ -0,0 +1,23 @@
+package at.hannibal2.skyhanni.features.misc
+
+import at.hannibal2.skyhanni.SkyHanniMod
+import at.hannibal2.skyhanni.events.GuiRenderEvent
+import at.hannibal2.skyhanni.utils.LorenzUtils
+import at.hannibal2.skyhanni.utils.RenderUtils.renderStrings
+import net.minecraft.client.Minecraft
+import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
+
+object InWaterDisplay {
+
+ private val config get() = SkyHanniMod.feature.misc.stranded
+
+ @SubscribeEvent
+ fun onRenderOverlay(event: GuiRenderEvent.GuiOverlayRenderEvent) {
+ if (!isEnabled()) return
+
+ val text = "§7In Water: " + if (Minecraft.getMinecraft().thePlayer.isInWater) "§aTrue" else "§cFalse"
+ config.inWaterPosition.renderStrings(listOf(text), posLabel = "In Water Display")
+ }
+
+ private fun isEnabled() = LorenzUtils.inSkyBlock && config.inWaterDisplay
+}