aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorFix3dll <serhanduzce@gmail.com>2022-03-20 18:39:11 +0300
committerFix3dll <serhanduzce@gmail.com>2022-03-20 18:39:11 +0300
commit8c5519565e4a9527e8f56219183a0b21f04b1cd0 (patch)
treed70a2f681d936a03559ae42222f4672265722550 /src/main
parent73f861eca0423d5709ada36254dff659b1d15602 (diff)
downloadSkyblocker-8c5519565e4a9527e8f56219183a0b21f04b1cd0.tar.gz
Skyblocker-8c5519565e4a9527e8f56219183a0b21f04b1cd0.tar.bz2
Skyblocker-8c5519565e4a9527e8f56219183a0b21f04b1cd0.zip
change: improved FancyBar and mana consumption filter
Little addition for ComboFilter which I forgot to add 1 check ^v^ Thanks to @ExternalTime for help
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilter.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java1
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java6
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java24
-rw-r--r--src/main/resources/assets/skyblocker/lang/en_us.json1
5 files changed, 23 insertions, 11 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilter.java b/src/main/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilter.java
index c05afdbf..714ee9c9 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilter.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilter.java
@@ -5,7 +5,7 @@ import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
public class ComboFilter extends SimpleChatFilter {
public ComboFilter() {
- super("^(\\+\\d+ Kill Combo \\+\\d+(% ✯ Magic Find| coins per kill)" +
+ super("^(\\+\\d+ Kill Combo \\+\\d+(% ✯ Magic Find| coins per kill|% Combat Exp)" +
"|Your Kill Combo has expired! You reached a \\d+ Kill Combo!)$");
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
index 669746c4..1862313b 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
@@ -152,6 +152,7 @@ public class SkyblockerConfig implements ConfigData {
public ChatFilterResult hideCombo = ChatFilterResult.PASS;
@ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON)
public ChatFilterResult hideAutopet = ChatFilterResult.PASS;
+ @ConfigEntry.Gui.Tooltip()
public boolean hideMana = false;
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java
index 0549d235..b9e80bd6 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java
@@ -31,7 +31,6 @@ import java.util.regex.Pattern;
@Mixin(InGameHud.class)
public abstract class InGameHudMixin extends DrawableHelper {
private static final Identifier SLOT_LOCK = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/slot_lock.png");
- private static final Pattern ACTION_BAR_MANA = Pattern.compile("^§b-\\d+ Mana \\(.*\\)(| +)$");
private final FancyStatusBars statusBars = new FancyStatusBars();
private MatrixStack hotbarMatrices;
@@ -50,11 +49,6 @@ public abstract class InGameHudMixin extends DrawableHelper {
if(!Utils.isOnSkyblock)
return;
String msg = message.getString();
- if (SkyblockerConfig.get().messages.hideMana) {
- Matcher matcher = ACTION_BAR_MANA.matcher(msg);
- if (matcher.matches())
- ci.cancel();
- }
if(statusBars.update(msg))
ci.cancel();
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java
index 84eebed3..1d766bc1 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java
@@ -16,7 +16,8 @@ import java.util.regex.Pattern;
public class FancyStatusBars extends DrawableHelper {
private static final MinecraftClient client = MinecraftClient.getInstance();
private static final Identifier BARS = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/bars.png");
- private static final Pattern ACTION_BAR_STATUS = Pattern.compile("^§[6c]([0-9]+)/([0-9]+)❤(?:\\+§c[0-9]+\\S)? {3,}(?:§a([0-9]+)§a❈ Defense|(\\S+(?: \\S+)*)) {3,}(?:§b([0-9]+)/([0-9]+)✎ (?:Mana|§3([0-9]+)ʬ)?|(\\S+(?: \\S+)*))(.*)$");
+ private static final Pattern ACTION_BAR_MANA = Pattern.compile("§b-\\d+ Mana \\(.*\\) +");
+ private static final Pattern ACTION_BAR_STATUS = Pattern.compile("^§[6c](\\d+)/(\\d+)❤(?:\\+§c\\d+.)?(?: +§a(\\d+)§a❈ Defense)?(?: +(\\S+(?:\\s\\S+)*))??(?: +§b(\\d+)/(\\d+)✎ +(?:Mana|§3(\\d+)ʬ))?(?: +(§[27].*))?$");
private final Resource[] resources = new Resource[]{
// Health
@@ -30,8 +31,18 @@ public class FancyStatusBars extends DrawableHelper {
};
public boolean update(String actionBar) {
- if (!SkyblockerConfig.get().general.bars.enableBars)
+ if (!SkyblockerConfig.get().general.bars.enableBars) {
+ if (SkyblockerConfig.get().messages.hideMana) {
+ Matcher mana = ACTION_BAR_MANA.matcher(actionBar);
+ if (mana.find()) {
+ assert client.player != null;
+ client.player.sendMessage(Text.of(actionBar.replace(mana.group(), "")), true);
+ return true;
+ }
+ }
return false;
+ }
+
Matcher matcher = ACTION_BAR_STATUS.matcher(actionBar);
if (!matcher.matches())
return false;
@@ -51,9 +62,14 @@ public class FancyStatusBars extends DrawableHelper {
resources[3].setFillLevel(client.player.experienceLevel, client.player.experienceProgress);
StringBuilder sb = new StringBuilder();
- appendIfNotNull(sb, matcher.group(4));
+ if (SkyblockerConfig.get().messages.hideMana) {
+ Matcher mana = ACTION_BAR_MANA.matcher(actionBar);
+ if (!mana.find())
+ appendIfNotNull(sb, matcher.group(4));
+ } else {
+ appendIfNotNull(sb, matcher.group(4));
+ }
appendIfNotNull(sb, matcher.group(8));
- appendIfNotNull(sb, matcher.group(9));
if (!sb.isEmpty()) {
assert client.player != null;
diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json
index e60eb0aa..91b2cf28 100644
--- a/src/main/resources/assets/skyblocker/lang/en_us.json
+++ b/src/main/resources/assets/skyblocker/lang/en_us.json
@@ -58,6 +58,7 @@
"text.autoconfig.skyblocker.option.messages.hideCombo": "Hide Combo Messages",
"text.autoconfig.skyblocker.option.messages.hideAutopet": "Hide Autopet Messages",
"text.autoconfig.skyblocker.option.messages.hideMana": "Hide Mana Consumption Messages from Action Bar",
+ "text.autoconfig.skyblocker.option.messages.hideMana.@Tooltip": "Gives a better experience with FancyBar",
"skyblocker.update.update_message": "§b[§6Skyblocker§b] §2There is a new version available!",
"skyblocker.update.update_link": " §2§nClick here§r",