aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java
index 96165ce8..aeee9978 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java
@@ -1,7 +1,11 @@
package me.xmrvizzy.skyblocker.skyblock;
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.Utils;
+import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayerEntity;
+import net.minecraft.text.Text;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -16,6 +20,10 @@ public class StatusBarTracker {
private Resource mana = new Resource(100, 100, 0);
private int defense = 0;
+ public void init() {
+ ClientReceiveMessageEvents.MODIFY_GAME.register(this::onOverlayMessage);
+ }
+
public Resource getHealth() {
return this.health;
}
@@ -57,6 +65,13 @@ public class StatusBarTracker {
return str;
}
+ private Text onOverlayMessage(Text text, boolean overlay) {
+ if (!overlay || !Utils.isOnSkyblock() || !SkyblockerConfig.get().general.bars.enableBars || Utils.isInTheRift()) {
+ return text;
+ }
+ return Text.of(update(text.getString(), SkyblockerConfig.get().messages.hideMana));
+ }
+
public String update(String actionBar, boolean filterManaUse) {
var sb = new StringBuilder();
Matcher matcher = STATUS_HEALTH.matcher(actionBar);
@@ -89,5 +104,6 @@ public class StatusBarTracker {
return res.isEmpty() ? null : res;
}
- public record Resource(int value, int max, int overflow) {}
+ public record Resource(int value, int max, int overflow) {
+ }
}