From b817b2ad84966370a4adf48a192827d8de100b46 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Tue, 2 Nov 2021 12:04:25 +0800 Subject: Add option to merge displays --- .../categories/crafting/DefaultCraftingCategory.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'default-plugin/src/main') diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/DefaultCraftingCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/DefaultCraftingCategory.java index 32bec42b1..fdedcff29 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/DefaultCraftingCategory.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/DefaultCraftingCategory.java @@ -32,8 +32,10 @@ import me.shedaniel.rei.api.client.gui.Renderer; import me.shedaniel.rei.api.client.gui.widgets.Slot; import me.shedaniel.rei.api.client.gui.widgets.Widget; import me.shedaniel.rei.api.client.gui.widgets.Widgets; +import me.shedaniel.rei.api.client.registry.display.DisplayCategory; import me.shedaniel.rei.api.client.registry.display.TransferDisplayCategory; import me.shedaniel.rei.api.common.category.CategoryIdentifier; +import me.shedaniel.rei.api.common.display.DisplayMerger; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.util.EntryStacks; import me.shedaniel.rei.plugin.common.BuiltinPlugin; @@ -44,13 +46,14 @@ import net.fabricmc.api.Environment; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.world.level.block.Blocks; +import org.jetbrains.annotations.Nullable; import java.util.List; @Environment(EnvType.CLIENT) -public class DefaultCraftingCategory implements TransferDisplayCategory { +public class DefaultCraftingCategory implements TransferDisplayCategory> { @Override - public CategoryIdentifier getCategoryIdentifier() { + public CategoryIdentifier> getCategoryIdentifier() { return BuiltinPlugin.CRAFTING; } @@ -65,7 +68,7 @@ public class DefaultCraftingCategory implements TransferDisplayCategory setupDisplay(DefaultCraftingDisplay display, Rectangle bounds) { + public List setupDisplay(DefaultCraftingDisplay display, Rectangle bounds) { Point startPoint = new Point(bounds.getCenterX() - 58, bounds.getCenterY() - 27); List widgets = Lists.newArrayList(); widgets.add(Widgets.createRecipeBase(bounds)); @@ -89,9 +92,9 @@ public class DefaultCraftingCategory implements TransferDisplayCategory widgets, Rectangle bounds, DefaultCraftingDisplay display, IntList redSlots) { + public void renderRedSlots(PoseStack matrices, List widgets, Rectangle bounds, DefaultCraftingDisplay display, IntList redSlots) { // @Nullable -// Screen previousScreen = REIHelper.getInstance().getPreviousScreen(); +// Screen previousScreen = REIRuntime.getInstance().getPreviousScreen(); // if (!(previousScreen instanceof AbstractContainerScreen)) return; // AbstractContainerMenu containerMenu = ((AbstractContainerScreen) previousScreen).getMenu(); // MenuInfo info = (MenuInfo) MenuInfoRegistry.getInstance().get(getCategoryIdentifier(), containerMenu.getClass()); @@ -109,4 +112,10 @@ public class DefaultCraftingCategory implements TransferDisplayCategory> getDisplayMerger() { + return DisplayCategory.getContentMerger(); + } } -- cgit