diff options
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/mixin/HandledScreenProviderMixin.java')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/mixin/HandledScreenProviderMixin.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/mixin/HandledScreenProviderMixin.java b/src/main/java/de/hysky/skyblocker/mixin/HandledScreenProviderMixin.java index 94eb53a5..35618798 100644 --- a/src/main/java/de/hysky/skyblocker/mixin/HandledScreenProviderMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixin/HandledScreenProviderMixin.java @@ -3,6 +3,9 @@ package de.hysky.skyblocker.mixin; import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.skyblock.dungeon.partyfinder.PartyFinderScreen; +import de.hysky.skyblocker.skyblock.item.SkyblockCraftingTableHandler; +import de.hysky.skyblocker.skyblock.item.SkyblockCraftingTableScreen; +import de.hysky.skyblocker.utils.Utils; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.screen.ingame.HandledScreens; import net.minecraft.client.network.ClientPlayerEntity; @@ -42,6 +45,11 @@ public interface HandledScreenProviderMixin<T extends ScreenHandler> { } ci.cancel(); + } else if (Utils.isOnSkyblock() && screenHandler instanceof GenericContainerScreenHandler containerScreenHandler && name.getString().toLowerCase().contains("craft item")) { + SkyblockCraftingTableHandler skyblockCraftingTableHandler = new SkyblockCraftingTableHandler(containerScreenHandler, player.getInventory()); + client.player.currentScreenHandler = skyblockCraftingTableHandler; + client.setScreen(new SkyblockCraftingTableScreen(skyblockCraftingTableHandler, player.getInventory(), Text.literal("Craft Item"))); + ci.cancel(); } } } |