aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorAaron <51387595+AzureAaron@users.noreply.github.com>2025-07-20 19:10:00 -0400
committerAaron <51387595+AzureAaron@users.noreply.github.com>2025-07-20 19:10:00 -0400
commit65733f68a0f448766040ca144103bedad3adc8c7 (patch)
tree066052406d1ce994fddb593fa0ff3cac2319d4e5 /src/main/java
parentd6a469701152e1bf3c02c0628503bd95c5b34f85 (diff)
downloadSkyblocker-65733f68a0f448766040ca144103bedad3adc8c7.tar.gz
Skyblocker-65733f68a0f448766040ca144103bedad3adc8c7.tar.bz2
Skyblocker-65733f68a0f448766040ca144103bedad3adc8c7.zip
Replace usages of GAME with ALLOW_GAME
Should fix some compatibility issues with Skyblocker's features not working when other mods filter messages (if they respect Fabric's events properly). Fixes #1352
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/ItemPickupWidget.java12
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/PetCache.java9
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/accessories/newyearcakes/NewYearCakesHelper.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/chat/ChatPositionShare.java8
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/chat/ConfirmationPromptHelper.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/chat/SkyblockXpMessages.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/EggFinder.java8
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/TimeTowerReminder.java10
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/crimson/dojo/DojoManager.java16
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/crimson/kuudra/Kuudra.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java10
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/FireFreezeStaffTimer.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/GoldorWaypointsManager.java9
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/GuardianHealth.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/ThreeWeirdos.java8
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretsTracker.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dwarven/CorpseFinder.java14
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dwarven/CrystalsChestHighlighter.java8
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dwarven/CrystalsLocationsManager.java14
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dwarven/GlaciteColdOverlay.java8
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dwarven/MetalDetector.java10
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java8
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/end/TheEnd.java8
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/garden/FarmingHud.java4
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/mayors/JerryTimer.java10
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/rift/EnigmaSouls.java4
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/rift/TheRift.java2
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/slayers/SlayerManager.java18
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/slayers/boss/voidgloom/BeaconHighlighter.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/special/DungeonsSpecialEffects.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/special/DyeSpecialEffects.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/waypoint/FairySouls.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/waypoint/MythologicalRitual.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/waypoint/Relics.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/utils/Utils.java3
35 files changed, 169 insertions, 110 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/ItemPickupWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/ItemPickupWidget.java
index 9ca0d1b3..234da0cb 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/ItemPickupWidget.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/ItemPickupWidget.java
@@ -44,7 +44,7 @@ public class ItemPickupWidget extends ComponentBasedWidget {
super(Text.literal("Items"), Formatting.AQUA.getColorValue(), "Item Pickup");
instance = this;
- ClientReceiveMessageEvents.GAME.register(instance::onChatMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(instance::onChatMessage);
ClientPlayConnectionEvents.JOIN.register((_handler, _sender, _client) -> changingLobby = true);
// Make changingLobby true for a short period while the player loads into a new lobby and their items are loading
SkyblockEvents.LOCATION_CHANGE.register(location -> Scheduler.INSTANCE.schedule(() -> changingLobby = false, LOBBY_CHANGE_DELAY));
@@ -70,11 +70,11 @@ public class ItemPickupWidget extends ComponentBasedWidget {
/**
* Checks chat messages for a stack update message, then finds the items linked to it
*/
- private void onChatMessage(Text message, boolean overlay) {
- if (!Formatting.strip(message.getString()).startsWith(SACKS_MESSAGE_START)) return;
- if (!SkyblockerConfigManager.get().uiAndVisuals.itemPickup.sackNotifications) return;
+ private boolean onChatMessage(Text message, boolean overlay) {
+ if (!Formatting.strip(message.getString()).startsWith(SACKS_MESSAGE_START)) return true;
+ if (!SkyblockerConfigManager.get().uiAndVisuals.itemPickup.sackNotifications) return true;
HoverEvent hoverEvent = message.getSiblings().getFirst().getStyle().getHoverEvent();
- if (hoverEvent == null || hoverEvent.getAction() != HoverEvent.Action.SHOW_TEXT) return;
+ if (hoverEvent == null || hoverEvent.getAction() != HoverEvent.Action.SHOW_TEXT) return true;
String hoverMessage = ((HoverEvent.ShowText) hoverEvent).value().getString();
Matcher matcher = CHANGE_REGEX.matcher(hoverMessage);
@@ -97,6 +97,8 @@ public class ItemPickupWidget extends ComponentBasedWidget {
removedCount.put(item.getNeuName(), new ChangeData(item, existingCount - Formatters.parseNumber(matcher.group(2)).intValue(), System.currentTimeMillis()));
}
}
+
+ return true;
}
@Override
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/PetCache.java b/src/main/java/de/hysky/skyblocker/skyblock/PetCache.java
index 05824f9d..f195126f 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/PetCache.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/PetCache.java
@@ -74,8 +74,7 @@ public class PetCache {
}
}
});
- ClientReceiveMessageEvents.GAME.register(PetCache::onMessage);
- ClientReceiveMessageEvents.GAME_CANCELED.register(PetCache::onMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(PetCache::onMessage);
}
public static void handlePetEquip(Slot slot, int slotId) {
@@ -113,8 +112,8 @@ public class PetCache {
/**
* Parses the Auto Pet messages to try and detect the active pet
*/
- private static void onMessage(Text text, boolean overlay) {
- if (!Utils.isOnSkyblock() || overlay) return;
+ private static boolean onMessage(Text text, boolean overlay) {
+ if (!Utils.isOnSkyblock() || overlay) return true;
String stringified = Formatting.strip(text.getString());
Matcher matcher = AUTOPET_PATTERN.matcher(stringified);
@@ -173,6 +172,8 @@ public class PetCache {
}
}
}
+
+ return true;
}
@Nullable
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/accessories/newyearcakes/NewYearCakesHelper.java b/src/main/java/de/hysky/skyblocker/skyblock/accessories/newyearcakes/NewYearCakesHelper.java
index 253477b5..894103d2 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/accessories/newyearcakes/NewYearCakesHelper.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/accessories/newyearcakes/NewYearCakesHelper.java
@@ -28,7 +28,7 @@ public class NewYearCakesHelper extends SimpleContainerSolver {
private NewYearCakesHelper() {
super("Auctions: \".*\"");
- ClientReceiveMessageEvents.GAME.register(this::onChatMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(this::onChatMessage);
}
public static int getCakeYear(ItemStack stack) {
@@ -57,10 +57,12 @@ public class NewYearCakesHelper extends SimpleContainerSolver {
return cakes.computeIfAbsent(Utils.getProfile(), _profile -> new IntOpenHashSet()).add(year);
}
- private void onChatMessage(Text message, boolean overlay) {
+ private boolean onChatMessage(Text message, boolean overlay) {
if (isEnabled()) {
addCake(getCakeYear(NEW_YEAR_CAKE_PURCHASE, message.getString()));
}
+
+ return true;
}
@Override
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/chat/ChatPositionShare.java b/src/main/java/de/hysky/skyblocker/skyblock/chat/ChatPositionShare.java
index 6ccd7515..df45d959 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/chat/ChatPositionShare.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/chat/ChatPositionShare.java
@@ -38,7 +38,7 @@ public class ChatPositionShare {
ClientCommandRegistrationCallback.EVENT.register((dispatcher, registryAccess) -> dispatcher.register(
ClientCommandManager.literal("skyblocker").then(ClientCommandManager.literal("sharePosition").executes(context -> sharePlayerPosition(context.getSource())))
));
- ClientReceiveMessageEvents.GAME.register(ChatPositionShare::onMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(ChatPositionShare::onMessage);
}
private static int sharePlayerPosition(FabricClientCommandSource source) {
@@ -47,13 +47,13 @@ public class ChatPositionShare {
return Command.SINGLE_SUCCESS;
}
- private static void onMessage(Text text, boolean overlay) {
+ private static boolean onMessage(Text text, boolean overlay) {
if (Utils.isOnSkyblock() && SkyblockerConfigManager.get().uiAndVisuals.waypoints.enableWaypoints) {
String message = text.getString();
// prevents parsing skyblocker's own messages. Also prevents TH solver from parsing as it already has own waypoint
if (message.startsWith("[Skyblocker]") || message.startsWith("§e[NPC] Treasure Hunter§f:")) {
- return;
+ return true;
}
for (Pattern pattern : PATTERNS) {
@@ -72,6 +72,8 @@ public class ChatPositionShare {
}
}
}
+
+ return true;
}
private static void requestWaypoint(String x, String y, String z, @NotNull String area) {
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/chat/ConfirmationPromptHelper.java b/src/main/java/de/hysky/skyblocker/skyblock/chat/ConfirmationPromptHelper.java
index d484e1ed..4121c1b7 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/chat/ConfirmationPromptHelper.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/chat/ConfirmationPromptHelper.java
@@ -42,7 +42,7 @@ public class ConfirmationPromptHelper {
private static long commandFoundAt;
@Init
public static void init() {
- ClientReceiveMessageEvents.GAME.register(ConfirmationPromptHelper::onMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(ConfirmationPromptHelper::onMessage);
ScreenEvents.AFTER_INIT.register((_client, screen, _scaledWidth, _scaledHeight) -> {
//Don't check for the command being present in case the user opens the chat before the prompt is sent
if (Utils.isOnSkyblock() && screen instanceof ChatScreen && SkyblockerConfigManager.get().chat.confirmationPromptHelper) {
@@ -83,7 +83,7 @@ public class ConfirmationPromptHelper {
return false;
}
- private static void onMessage(Text message, boolean overlay) {
+ private static boolean onMessage(Text message, boolean overlay) {
if (Utils.isOnSkyblock() && !overlay && SkyblockerConfigManager.get().chat.confirmationPromptHelper && containsConfirmationPhrase(message)) {
Optional<String> confirmationCommand = message.visit((style, asString) -> {
ClickEvent event = style.getClickEvent();
@@ -105,5 +105,7 @@ public class ConfirmationPromptHelper {
MinecraftClient.getInstance().player.sendMessage(Constants.PREFIX.get().append(Text.translatable("skyblocker.chat.confirmationPromptNotification")), false);
}
}
+
+ return true;
}
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/chat/SkyblockXpMessages.java b/src/main/java/de/hysky/skyblocker/skyblock/chat/SkyblockXpMessages.java
index 7e1e44fe..c2727eac 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/chat/SkyblockXpMessages.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/chat/SkyblockXpMessages.java
@@ -20,10 +20,10 @@ public class SkyblockXpMessages {
@Init
public static void init() {
- ClientReceiveMessageEvents.GAME.register(SkyblockXpMessages::onMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(SkyblockXpMessages::onMessage);
}
- private static void onMessage(Text text, boolean overlay) {
+ private static boolean onMessage(Text text, boolean overlay) {
if (Utils.isOnSkyblock() && overlay && SkyblockerConfigManager.get().chat.skyblockXpMessages) {
String message = text.getString();
Matcher matcher = SKYBLOCK_XP_PATTERN.matcher(message);
@@ -39,5 +39,7 @@ public class SkyblockXpMessages {
}
}
}
+
+ return true;
}
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/EggFinder.java b/src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/EggFinder.java
index 4d309713..dd6050d6 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/EggFinder.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/EggFinder.java
@@ -68,7 +68,7 @@ public class EggFinder {
}
});
SkyblockEvents.LOCATION_CHANGE.register(EggFinder::handleLocationChange);
- ClientReceiveMessageEvents.GAME.register(EggFinder::onChatMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(EggFinder::onChatMessage);
WorldRenderEvents.AFTER_TRANSLUCENT.register(EggFinder::renderWaypoints);
ClientTickEvents.END_CLIENT_TICK.register(client -> {
if (!SkyblockerConfigManager.get().helpers.chocolateFactory.enableEggFinder || client.player == null) return;
@@ -153,8 +153,8 @@ public class EggFinder {
}
}
- private static void onChatMessage(Text text, boolean overlay) {
- if (overlay || !SkyblockerConfigManager.get().helpers.chocolateFactory.enableEggFinder) return;
+ private static boolean onChatMessage(Text text, boolean overlay) {
+ if (overlay || !SkyblockerConfigManager.get().helpers.chocolateFactory.enableEggFinder) return true;
Matcher matcher = eggFoundPattern.matcher(text.getString());
if (matcher.find()) {
try {
@@ -175,6 +175,8 @@ public class EggFinder {
logger.error("[Skyblocker Egg Finder] Failed to find egg type for egg spawn message. Tried to match against: {}", matcher.group(0), e);
}
}
+
+ return true;
}
@SuppressWarnings("DataFlowIssue") //Removes that pesky "unboxing of Integer might cause NPE" warning when we already know it's not null
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/TimeTowerReminder.java b/src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/TimeTowerReminder.java
index 28738e86..da1fa170 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/TimeTowerReminder.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/chocolatefactory/TimeTowerReminder.java
@@ -34,11 +34,11 @@ public class TimeTowerReminder {
@Init
public static void init() {
SkyblockEvents.JOIN.register(TimeTowerReminder::checkTempFile);
- ClientReceiveMessageEvents.GAME.register(TimeTowerReminder::checkIfTimeTower);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(TimeTowerReminder::checkIfTimeTower);
}
- public static void checkIfTimeTower(Message message, boolean overlay) {
- if (!TIME_TOWER_PATTERN.matcher(message.getString()).matches() || scheduled) return;
+ public static boolean checkIfTimeTower(Message message, boolean overlay) {
+ if (!TIME_TOWER_PATTERN.matcher(message.getString()).matches() || scheduled) return true;
Scheduler.INSTANCE.schedule(TimeTowerReminder::sendMessage, 60 * 60 * 20); // 1 hour
scheduled = true;
File tempFile = SkyblockerMod.CONFIG_DIR.resolve(TIME_TOWER_FILE).toFile();
@@ -47,7 +47,7 @@ public class TimeTowerReminder {
tempFile.createNewFile();
} catch (IOException e) {
LOGGER.error("[Skyblocker Time Tower Reminder] Failed to create temp file for Time Tower Reminder!", e);
- return;
+ return true;
}
}
@@ -56,6 +56,8 @@ public class TimeTowerReminder {
} catch (IOException e) {
LOGGER.error("[Skyblocker Time Tower Reminder] Failed to write to temp file for Time Tower Reminder!", e);
}
+
+ return true;
}
private static void sendMessage() {
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/crimson/dojo/DojoManager.java b/src/main/java/de/hysky/skyblocker/skyblock/crimson/dojo/DojoManager.java
index 1aed5fa9..c304f070 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/crimson/dojo/DojoManager.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/crimson/dojo/DojoManager.java
@@ -70,7 +70,7 @@ public class DojoManager {
@Init
public static void init() {
- ClientReceiveMessageEvents.GAME.register(DojoManager::onMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(DojoManager::onMessage);
WorldRenderEvents.AFTER_TRANSLUCENT.register(DojoManager::render);
ClientPlayConnectionEvents.JOIN.register((_handler, _sender, _client) -> reset());
ClientEntityEvents.ENTITY_LOAD.register(DojoManager::onEntitySpawn);
@@ -96,27 +96,27 @@ public class DojoManager {
* @param text message
* @param overlay is overlay
*/
- private static void onMessage(Text text, Boolean overlay) {
+ private static boolean onMessage(Text text, Boolean overlay) {
if (!Utils.isInCrimson() || overlay) {
- return;
+ return true;
}
if (Objects.equals(Formatting.strip(text.getString()), START_MESSAGE)) {
inArena = true;
//update the players ping
getPing();
- return;
+ return true;
}
if (!inArena) {
- return;
+ return true;
}
if (text.getString().matches(CHALLENGE_FINISHED_REGEX)) {
reset();
- return;
+ return true;
}
//look for a message saying what challenge is starting if one has not already been found
if (currentChallenge != DojoChallenges.NONE) {
- return;
+ return true;
}
Matcher nextChallenge = TEST_OF_PATTERN.matcher(text.getString());
if (nextChallenge.matches()) {
@@ -125,6 +125,8 @@ public class DojoManager {
currentChallenge = DojoChallenges.NONE;
}
}
+
+ return true;
}
private static void getPing() {
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/crimson/kuudra/Kuudra.java b/src/main/java/de/hysky/skyblocker/skyblock/crimson/kuudra/Kuudra.java
index 75378a36..590dbe06 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/crimson/kuudra/Kuudra.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/crimson/kuudra/Kuudra.java
@@ -15,10 +15,10 @@ public class Kuudra {
@Init
public static void init() {
ClientPlayConnectionEvents.JOIN.register((_handler, _sender, _client) -> reset());
- ClientReceiveMessageEvents.GAME.register(Kuudra::onMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(Kuudra::onMessage);
}
- private static void onMessage(Text text, boolean overlay) {
+ private static boolean onMessage(Text text, boolean overlay) {
if (Utils.isInKuudra() && !overlay) {
String message = Formatting.strip(text.getString());
@@ -38,6 +38,8 @@ public class Kuudra {
phase = KuudraPhase.KUUDRA_LAIR;
}
}
+
+ return true;
}
private static void reset() {
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java
index 21b78ca7..fcb4ac81 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java
@@ -71,18 +71,16 @@ public class DungeonScore {
Scheduler.INSTANCE.scheduleCyclic(DungeonScore::tick, 20);
ClientPlayConnectionEvents.JOIN.register((handler, sender, client) -> reset());
DungeonEvents.DUNGEON_STARTED.register(DungeonScore::onDungeonStart);
- ClientReceiveMessageEvents.GAME.register((message, overlay) -> {
- if (overlay || !Utils.isInDungeons()) return;
+ ClientReceiveMessageEvents.ALLOW_GAME.register((message, overlay) -> {
+ if (overlay || !Utils.isInDungeons()) return true;
String str = message.getString();
if (dungeonStarted) {
checkMessageForDeaths(str);
checkMessageForWatcher(str);
if (floorHasMimics) checkMessageForMimic(str); //Only called when the message is not cancelled & isn't on the action bar, complementing MimicFilter
}
- });
- ClientReceiveMessageEvents.GAME_CANCELED.register((message, overlay) -> {
- if (overlay || !Utils.isInDungeons() || !dungeonStarted) return;
- checkMessageForDeaths(message.getString());
+
+ return true;
});
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/FireFreezeStaffTimer.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/FireFreezeStaffTimer.java
index 14706ccd..be3ec69f 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/FireFreezeStaffTimer.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/FireFreezeStaffTimer.java
@@ -21,7 +21,7 @@ public class FireFreezeStaffTimer {
@Init
public static void init() {
HudLayerRegistrationCallback.EVENT.register(d -> d.attachLayerAfter(IdentifiedLayer.OVERLAY_MESSAGE, FIRE_FREEZE_STAFF_TIMER, FireFreezeStaffTimer::onDraw));
- ClientReceiveMessageEvents.GAME.register(FireFreezeStaffTimer::onChatMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(FireFreezeStaffTimer::onChatMessage);
ClientPlayConnectionEvents.JOIN.register((handler, sender, client) -> FireFreezeStaffTimer.reset());
}
@@ -56,10 +56,12 @@ public class FireFreezeStaffTimer {
fireFreezeTimer = 0;
}
- private static void onChatMessage(Text text, boolean overlay) {
+ private static boolean onChatMessage(Text text, boolean overlay) {
if (!overlay && SkyblockerConfigManager.get().dungeons.theProfessor.fireFreezeStaffTimer && Formatting.strip(text.getString())
.equals("[BOSS] The Professor: Oh? You found my Guardians' one weakness?")) {
fireFreezeTimer = System.currentTimeMillis() + 5000L;
}
+
+ return true;
}
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/GoldorWaypointsManager.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/GoldorWaypointsManager.java
index 2fd04655..e6d6f235 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/GoldorWaypointsManager.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/GoldorWaypointsManager.java
@@ -65,8 +65,7 @@ public class GoldorWaypointsManager {
public static void init() {
WorldRenderEvents.AFTER_TRANSLUCENT.register(GoldorWaypointsManager::render);
ClientLifecycleEvents.CLIENT_STARTED.register(GoldorWaypointsManager::load);
- ClientReceiveMessageEvents.GAME.register(GoldorWaypointsManager::onChatMessage);
- ClientReceiveMessageEvents.GAME_CANCELED.register(GoldorWaypointsManager::onChatMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(GoldorWaypointsManager::onChatMessage);
ClientPlayConnectionEvents.JOIN.register(((handler, sender, client) -> reset()));
}
@@ -153,8 +152,8 @@ public class GoldorWaypointsManager {
return matcher.matches() ? matcher.group("name") : null;
}
- private static void onChatMessage(Text text, boolean overlay) {
- if (overlay || !shouldProcessMsgs()) return;
+ private static boolean onChatMessage(Text text, boolean overlay) {
+ if (overlay || !shouldProcessMsgs()) return true;
String message = text.getString();
if (active) {
@@ -181,6 +180,8 @@ public class GoldorWaypointsManager {
active = true;
}
}
+
+ return true;
}
private static void renderWaypoints(WorldRenderContext context, ObjectArrayList<GoldorWaypoint> waypoints) {
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/GuardianHealth.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/GuardianHealth.java
index c24356d9..54376641 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/GuardianHealth.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/GuardianHealth.java
@@ -28,7 +28,7 @@ public class GuardianHealth {
@Init
public static void init() {
- ClientReceiveMessageEvents.GAME.register(GuardianHealth::onChatMessage);
+ ClientReceiveMessageEvents.ALLOW_GAME.register(GuardianHealth::onChatMessage);
ClientPlayConnectionEvents.JOIN.register((handler, sender, client) -> GuardianHealth.reset());
WorldRenderEvents.AFTER_ENTITIES.register(GuardianHealth::onWorldRender);
}
@@ -80,12 +80,14 @@ public class GuardianHealth {
inBoss = false;
}
- private static void onChatMessage(Text text, boolean overlay) {
+ private static boolean onChatMessage(Text text, boolean overlay) {
if (Utils.isInDungeons() && SkyblockerConfigManager.get().dungeons.theProfessor.floor3GuardianHealthDisplay && !inBoss) {
String unformatted = Formatting.strip(text.getString());
inBoss = unformatted.equals("[BOSS] The Professor: I was burdened with terrible news recently...");
}
+
+ return true;
}
private static boolean isGuardianName(ArmorStandEntity entity) {
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/ThreeWeirdos.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/ThreeWeirdos.java
index 73f62bb6..c054497a 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/ThreeWeirdos.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/ThreeWeirdos.java
@@ -32,19 +32,21 @@ public class ThreeWeirdos extends DungeonPuzzle {
private ThreeWeirdos() {
super("three-weirdos", "three-chests");
- ClientReceiveMessageEvents.GAME.register((message, overlay) -> {
+ ClientReceiveMessageEvents.ALLOW_GAME.register((message, overlay) -> {
ClientWorld world = MinecraftClient.getInstance().world;
- if (overlay || !shouldSolve() || !SkyblockerConfigManager.get().dungeons.puzzleSolvers.solveThreeWeirdos || world == null || !DungeonManager.isCurrentRoomMatched()) return;
+ if (overlay || !shouldSolve() || !SkyblockerConfigManager.get().dungeons.puzzleSolvers.solveThreeWeirdos || world == null || !DungeonManager.isCurrentRoomMatched()) return true;
@SuppressWarnings("DataFlowIssue")
Matcher matcher = PATTERN.matcher(Formatting.strip(message.getString()));
- if (!matcher.matches()) return;
+ if (!matcher.matches()) return true;
String name = matcher.group(1);
Room room = DungeonManager.getCurrentRoom();
checkForNPC(world, room, new BlockPos(13, 69, 24), name);