diff options
author | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2023-12-19 15:48:26 +0800 |
---|---|---|
committer | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2023-12-19 16:37:37 +0800 |
commit | b5b1e509d23fbe1e9127110416ea1f467ebb5380 (patch) | |
tree | bd646b5ebd179594b66714f1cc9a7ceedf6da03b /src/main/java/de/hysky/skyblocker/skyblock/dungeon/TicTacToe.java | |
parent | a7932307432867082db98956e23535d38fae6084 (diff) | |
download | Skyblocker-b5b1e509d23fbe1e9127110416ea1f467ebb5380.tar.gz Skyblocker-b5b1e509d23fbe1e9127110416ea1f467ebb5380.tar.bz2 Skyblocker-b5b1e509d23fbe1e9127110416ea1f467ebb5380.zip |
Migrate blaze and tic-tac-toe puzzles
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/skyblock/dungeon/TicTacToe.java')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/dungeon/TicTacToe.java | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/TicTacToe.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/TicTacToe.java index 7f249e7d..2bb3e4e0 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/TicTacToe.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/TicTacToe.java @@ -1,9 +1,12 @@ package de.hysky.skyblocker.skyblock.dungeon; import de.hysky.skyblocker.config.SkyblockerConfigManager; +import de.hysky.skyblocker.events.DungeonEvents; import de.hysky.skyblocker.utils.Utils; import de.hysky.skyblocker.utils.render.RenderHelper; +import de.hysky.skyblocker.utils.scheduler.Scheduler; import de.hysky.skyblocker.utils.tictactoe.TicTacToeUtils; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext; import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents; import net.minecraft.block.Block; @@ -28,13 +31,25 @@ import java.util.List; public class TicTacToe { private static final Logger LOGGER = LoggerFactory.getLogger(TicTacToe.class); private static final float[] RED_COLOR_COMPONENTS = {1.0F, 0.0F, 0.0F}; + private static boolean inTicTacToe; private static Box nextBestMoveToMake = null; public static void init() { + DungeonEvents.PUZZLE_MATCHED.register(room -> { + if (room.getName().startsWith("tic-tac-toe")) { + inTicTacToe = true; + } + }); + Scheduler.INSTANCE.scheduleCyclic(TicTacToe::tick, 4); WorldRenderEvents.BEFORE_DEBUG_RENDER.register(TicTacToe::solutionRenderer); + ClientPlayConnectionEvents.JOIN.register((handler, sender, client) -> inTicTacToe = false); } public static void tick() { + if (!inTicTacToe) { + return; + } + MinecraftClient client = MinecraftClient.getInstance(); ClientWorld world = client.world; ClientPlayerEntity player = client.player; |