From 4d0b2d3f50bf56b83498a3b787ac08afaeb85eff Mon Sep 17 00:00:00 2001 From: Unknown Date: Tue, 18 Jun 2019 16:38:49 +0800 Subject: up to 4x faster search --- .../autocrafting/AutoCraftingTableHandler.java | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/main/java/me/shedaniel/rei/plugin/autocrafting/AutoCraftingTableHandler.java (limited to 'src/main/java/me/shedaniel/rei/plugin/autocrafting/AutoCraftingTableHandler.java') diff --git a/src/main/java/me/shedaniel/rei/plugin/autocrafting/AutoCraftingTableHandler.java b/src/main/java/me/shedaniel/rei/plugin/autocrafting/AutoCraftingTableHandler.java new file mode 100644 index 000000000..f33ee24fa --- /dev/null +++ b/src/main/java/me/shedaniel/rei/plugin/autocrafting/AutoCraftingTableHandler.java @@ -0,0 +1,26 @@ +package me.shedaniel.rei.plugin.autocrafting; + +import me.shedaniel.rei.api.AutoCraftingHandler; +import me.shedaniel.rei.client.ScreenHelper; +import me.shedaniel.rei.gui.ContainerScreenOverlay; +import me.shedaniel.rei.listeners.RecipeBookGuiHooks; +import net.minecraft.client.MinecraftClient; +import net.minecraft.client.gui.screen.Screen; +import net.minecraft.client.gui.screen.ingame.AbstractContainerScreen; +import net.minecraft.client.gui.screen.ingame.CraftingTableScreen; +import net.minecraft.container.CraftingTableContainer; + +public class AutoCraftingTableHandler implements AutoCraftingHandler { + @Override + public boolean handle(MinecraftClient minecraft, Screen recipeViewingScreen, AbstractContainerScreen parentScreen, ContainerScreenOverlay overlay) { + if (parentScreen instanceof CraftingTableScreen) { + CraftingTableScreen craftingTableScreen = (CraftingTableScreen) parentScreen; + minecraft.openScreen(craftingTableScreen); + ((RecipeBookGuiHooks) craftingTableScreen.getRecipeBookGui()).rei_getGhostSlots().reset(); + CraftingTableContainer container = craftingTableScreen.getContainer(); + ScreenHelper.getLastOverlay().init(); + return true; + } + return false; + } +} -- cgit