aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/mixin
diff options
context:
space:
mode:
authorLifeIsAParadox <LifeIsAParadox@users.noreply.github.com>2021-09-19 22:51:57 +0200
committerGitHub <noreply@github.com>2021-09-19 22:51:57 +0200
commitf204e0f0459ec8eb993fdc4dd419bca0504fbb8d (patch)
tree018390da69b3e2efa04d21828927ee2b65d882f7 /src/main/java/me/xmrvizzy/skyblocker/mixin
parent731c9430f4cf4cd5f9410cd490d724ba55fa7414 (diff)
parent8b0d4faea23ac4486795345fe0981d9cb3059059 (diff)
downloadSkyblocker-f204e0f0459ec8eb993fdc4dd419bca0504fbb8d.tar.gz
Skyblocker-f204e0f0459ec8eb993fdc4dd419bca0504fbb8d.tar.bz2
Skyblocker-f204e0f0459ec8eb993fdc4dd419bca0504fbb8d.zip
Merge pull request #11 from ExternalTime/chat-parsing-refactor
Chat parsing refactor
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/mixin')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java49
1 files changed, 8 insertions, 41 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java
index c22364d6..43103159 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java
@@ -1,18 +1,15 @@
package me.xmrvizzy.skyblocker.mixin;
+import me.xmrvizzy.skyblocker.chat.ChatParser;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.skyblock.ChatFilter;
-import me.xmrvizzy.skyblocker.skyblock.dungeon.DungeonPuzzles;
-import me.xmrvizzy.skyblocker.skyblock.dwarven.Fetchur;
-import me.xmrvizzy.skyblocker.skyblock.dwarven.Puzzler;
import me.xmrvizzy.skyblocker.utils.Utils;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.gui.hud.ChatHudListener;
+import net.minecraft.client.network.ClientPlayerEntity;
import net.minecraft.network.MessageType;
+import net.minecraft.text.ClickEvent;
import net.minecraft.text.Text;
-import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
-import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@@ -23,44 +20,14 @@ import java.util.UUID;
@Mixin(ChatHudListener.class)
public class ChatHudListenerMixin {
- @Shadow @Final private MinecraftClient client;
- private final ChatFilter filter = new ChatFilter();
+ private final ChatParser parser = new ChatParser();
@Inject(method = "onChatMessage", at = @At("HEAD"), cancellable = true)
public void onMessage(MessageType messageType, Text message, UUID senderUuid, CallbackInfo ci) {
- String msg = message.getString();
-
- if (Utils.isDungeons) {
- if (SkyblockerConfig.get().locations.dungeons.solveThreeWeirdos && msg.contains("[NPC]"))
- DungeonPuzzles.threeWeirdos(msg);
-
- DungeonPuzzles.trivia(msg, ci);
- }
-
- if (Utils.isSkyblock) {
- if (msg.contains("[OPEN MENU]")) {
- List<Text> siblings = message.getSiblings();
- for (Text sibling : siblings) {
- if (sibling.getString().contains("[OPEN MENU]")) {
- this.client.player.sendChatMessage(sibling.getStyle().getClickEvent().getValue());
- }
- }
- }
-
- if (msg.contains("[NPC]")) {
- if (SkyblockerConfig.get().locations.dwarvenMines.solveFetchur &&
- msg.contains("Fetchur")) {
- Fetchur.solve(msg, ci);
- }
-
- if (SkyblockerConfig.get().locations.dwarvenMines.solvePuzzler &&
- msg.contains("Puzzler"))
- Puzzler.solve(msg);
- }
-
- if(filter.shouldFilter(msg))
- ci.cancel();
- }
+ if (!Utils.isSkyblock)
+ return;
+ if (parser.shouldFilter(message.getString()))
+ ci.cancel();
}
}