aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron <51387595+AzureAaron@users.noreply.github.com>2024-01-04 01:56:29 -0500
committerGitHub <noreply@github.com>2024-01-04 01:56:29 -0500
commit4dc26a13ced11281a4da74bd52d00ef36c0d03d5 (patch)
treeb07f434086580adc48e2d31cdee1a0d294a12c33
parentfa2836770669820857e11db5eea86df7c8bd64c3 (diff)
downloadSkyblocker-4dc26a13ced11281a4da74bd52d00ef36c0d03d5.tar.gz
Skyblocker-4dc26a13ced11281a4da74bd52d00ef36c0d03d5.tar.bz2
Skyblocker-4dc26a13ced11281a4da74bd52d00ef36c0d03d5.zip
Toggle Sky Mall Filter (#475)
-rw-r--r--src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java3
-rw-r--r--src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java8
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/filters/ToggleSkyMallFilter.java16
-rw-r--r--src/main/java/de/hysky/skyblocker/utils/chat/ChatMessageListener.java3
-rw-r--r--src/main/resources/assets/skyblocker/lang/en_us.json2
5 files changed, 31 insertions, 1 deletions
diff --git a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
index 6044aef9..7e6dbdd8 100644
--- a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
+++ b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
@@ -940,6 +940,9 @@ public class SkyblockerConfig {
public ChatFilterResult hideShowOff = ChatFilterResult.PASS;
@SerialEntry
+ public ChatFilterResult hideToggleSkyMall = ChatFilterResult.PASS;
+
+ @SerialEntry
public boolean hideMana = false;
}
diff --git a/src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java
index c63b933d..37f24d8c 100644
--- a/src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java
+++ b/src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java
@@ -87,6 +87,14 @@ public class MessageFilterCategory {
newValue -> config.messages.hideShowOff = newValue)
.controller(ConfigUtils::createEnumCyclingListController)
.build())
+ .option(Option.<ChatFilterResult>createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.messages.hideToggleSkyMall"))
+ .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.messages.hideToggleSkyMall.@Tooltip")))
+ .binding(defaults.messages.hideToggleSkyMall,
+ () -> config.messages.hideToggleSkyMall,
+ newValue -> config.messages.hideToggleSkyMall = newValue)
+ .controller(ConfigUtils::createEnumCyclingListController)
+ .build())
.option(Option.<Boolean>createBuilder()
.name(Text.translatable("text.autoconfig.skyblocker.option.messages.hideMana"))
.binding(defaults.messages.hideMana,
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/filters/ToggleSkyMallFilter.java b/src/main/java/de/hysky/skyblocker/skyblock/filters/ToggleSkyMallFilter.java
new file mode 100644
index 00000000..94d10e3a
--- /dev/null
+++ b/src/main/java/de/hysky/skyblocker/skyblock/filters/ToggleSkyMallFilter.java
@@ -0,0 +1,16 @@
+package de.hysky.skyblocker.skyblock.filters;
+
+import de.hysky.skyblocker.config.SkyblockerConfigManager;
+import de.hysky.skyblocker.utils.chat.ChatFilterResult;
+
+public class ToggleSkyMallFilter extends SimpleChatFilter {
+
+ public ToggleSkyMallFilter() {
+ super("^§8§oYou can disable this messaging by toggling Sky Mall in your /hotm!$");
+ }
+
+ @Override
+ protected ChatFilterResult state() {
+ return SkyblockerConfigManager.get().messages.hideToggleSkyMall;
+ }
+}
diff --git a/src/main/java/de/hysky/skyblocker/utils/chat/ChatMessageListener.java b/src/main/java/de/hysky/skyblocker/utils/chat/ChatMessageListener.java
index 42f890b7..ebdb6f09 100644
--- a/src/main/java/de/hysky/skyblocker/utils/chat/ChatMessageListener.java
+++ b/src/main/java/de/hysky/skyblocker/utils/chat/ChatMessageListener.java
@@ -53,7 +53,8 @@ public interface ChatMessageListener {
new MoltenWaveFilter(),
new TeleportPadFilter(),
new AutopetFilter(),
- new ShowOffFilter()
+ new ShowOffFilter(),
+ new ToggleSkyMallFilter()
};
// Register all listeners to EVENT
for (ChatMessageListener listener : listeners) {
diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json
index a54110ed..1f177ac8 100644
--- a/src/main/resources/assets/skyblocker/lang/en_us.json
+++ b/src/main/resources/assets/skyblocker/lang/en_us.json
@@ -279,6 +279,8 @@
"text.autoconfig.skyblocker.option.messages.hideMana.@Tooltip": "Gives a better experience with FancyBar",
"text.autoconfig.skyblocker.option.messages.hideShowOff": "Hide Show Off Messages",
"text.autoconfig.skyblocker.option.messages.hideShowOff.@Tooltip": "Filters messages from the /show command",
+ "text.autoconfig.skyblocker.option.messages.hideToggleSkyMall": "Hide Toggle Sky Mall Messages",
+ "text.autoconfig.skyblocker.option.messages.hideToggleSkyMall.@Tooltip": "Hides those pesky messages telling you to disable the Sky Mall HOTM perk when you want it enabled!",
"text.autoconfig.skyblocker.category.slayer": "Slayers",
"text.autoconfig.skyblocker.option.slayer.vampireSlayer": "Vampire Slayer",
"text.autoconfig.skyblocker.option.slayer.vampireSlayer.enableEffigyWaypoints": "Enable Effigy Waypoints",