aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java
diff options
context:
space:
mode:
authorYasin <LifeIsAParadox@users.noreply.github.com>2022-03-08 17:10:30 +0100
committerGitHub <noreply@github.com>2022-03-08 17:10:30 +0100
commitb380c52524bbdb7ea01fe42d5bab95f22e39a5a1 (patch)
tree7df6b3272758f6fa559ba37116093f0dd8f66966 /src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java
parent165d2a190cf82b90bc47cf7a3875a094fab9b81a (diff)
parent3221f7cd30b0b12d697dec0d52b6040e2278e305 (diff)
downloadSkyblocker-b380c52524bbdb7ea01fe42d5bab95f22e39a5a1.tar.gz
Skyblocker-b380c52524bbdb7ea01fe42d5bab95f22e39a5a1.tar.bz2
Skyblocker-b380c52524bbdb7ea01fe42d5bab95f22e39a5a1.zip
Merge pull request #53 from ExternalTime/chat-events-rewrite
Rewrote chat listener interface to use fabric events api
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java
index bb3d10d2..51ff1c6a 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java
@@ -1,15 +1,18 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
-import me.xmrvizzy.skyblocker.chat.ChatListener;
+import me.xmrvizzy.skyblocker.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayerEntity;
import net.minecraft.text.LiteralText;
+import net.minecraft.text.Text;
import net.minecraft.util.Formatting;
import java.util.*;
+import java.util.regex.Matcher;
-public class Trivia extends ChatListener {
+public class Trivia extends ChatPatternListener {
private static final Map<String, String[]> answers;
private List<String> solutions = Collections.emptyList();
@@ -18,21 +21,22 @@ public class Trivia extends ChatListener {
}
@Override
- public boolean isEnabled() {
- return SkyblockerConfig.get().locations.dungeons.solveTrivia;
+ public ChatFilterResult state() {
+ return SkyblockerConfig.get().locations.dungeons.solveTrivia ? ChatFilterResult.FILTER : ChatFilterResult.PASS;
}
@Override
- public boolean onMessage(String[] groups) {
- if (groups[3] != null) {
- if (!solutions.contains(groups[3])) {
+ public boolean onMatch(Text message, Matcher matcher) {
+ String riddle = matcher.group(3);
+ if (riddle != null) {
+ if (!solutions.contains(riddle)) {
ClientPlayerEntity player = MinecraftClient.getInstance().player;
assert player != null;
- MinecraftClient.getInstance().player.sendMessage(new LiteralText(" " + Formatting.GOLD + groups[2] + Formatting.RED + " " + groups[3]), false);
+ MinecraftClient.getInstance().player.sendMessage(new LiteralText(" " + Formatting.GOLD + matcher.group(2) + Formatting.RED + " " + riddle), false);
return true;
}
} else
- updateSolutions(groups[1]);
+ updateSolutions(matcher.group(0));
return false;
}