diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java index f028e3e7..84cd4803 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java @@ -4,6 +4,7 @@ import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; import de.hysky.skyblocker.utils.Constants; import de.hysky.skyblocker.utils.Utils; +import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; import net.fabricmc.fabric.api.event.player.UseBlockCallback; import net.fabricmc.fabric.api.event.player.UseItemCallback; @@ -87,9 +88,21 @@ public class WishingCompassSolver { public static void init() { UseItemCallback.EVENT.register(WishingCompassSolver::onItemInteract); UseBlockCallback.EVENT.register(WishingCompassSolver::onBlockInteract); + ClientReceiveMessageEvents.GAME.register(WishingCompassSolver::failMessageListener); ClientPlayConnectionEvents.JOIN.register((_handler, _sender, _client) -> reset()); } + /** + * When a filed message is sent in chat reset the wishing compass solver to start + * @param text message + * @param b overlay + */ + private static void failMessageListener(Text text, boolean b) { + if (Formatting.strip(text.getString()).equals("The Wishing Compass can't seem to locate anything!")) { + currentState = SolverStates.NOT_STARTED; + } + } + private static void reset() { currentState = SolverStates.NOT_STARTED; startPosOne = Vec3d.ZERO; |