aboutsummaryrefslogtreecommitdiff
path: root/default-plugin
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2021-11-02 12:04:25 +0800
committershedaniel <daniel@shedaniel.me>2021-11-02 12:04:25 +0800
commitb817b2ad84966370a4adf48a192827d8de100b46 (patch)
treee2cea8c09320fd66795c6cd2d0d55088d809fffb /default-plugin
parent1b33b3e72c1b2bdb5b733bb5afe6b478367c77e5 (diff)
downloadRoughlyEnoughItems-b817b2ad84966370a4adf48a192827d8de100b46.tar.gz
RoughlyEnoughItems-b817b2ad84966370a4adf48a192827d8de100b46.tar.bz2
RoughlyEnoughItems-b817b2ad84966370a4adf48a192827d8de100b46.zip
Add option to merge displays
Diffstat (limited to 'default-plugin')
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/DefaultCraftingCategory.java19
1 files changed, 14 insertions, 5 deletions
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<DefaultCraftingDisplay> {
+public class DefaultCraftingCategory implements TransferDisplayCategory<DefaultCraftingDisplay<?>> {
@Override
- public CategoryIdentifier<? extends DefaultCraftingDisplay> getCategoryIdentifier() {
+ public CategoryIdentifier<? extends DefaultCraftingDisplay<?>> getCategoryIdentifier() {
return BuiltinPlugin.CRAFTING;
}
@@ -65,7 +68,7 @@ public class DefaultCraftingCategory implements TransferDisplayCategory<DefaultC
}
@Override
- public List<Widget> setupDisplay(DefaultCraftingDisplay display, Rectangle bounds) {
+ public List<Widget> setupDisplay(DefaultCraftingDisplay<?> display, Rectangle bounds) {
Point startPoint = new Point(bounds.getCenterX() - 58, bounds.getCenterY() - 27);
List<Widget> widgets = Lists.newArrayList();
widgets.add(Widgets.createRecipeBase(bounds));
@@ -89,9 +92,9 @@ public class DefaultCraftingCategory implements TransferDisplayCategory<DefaultC
}
@Override
- public void renderRedSlots(PoseStack matrices, List<Widget> widgets, Rectangle bounds, DefaultCraftingDisplay display, IntList redSlots) {
+ public void renderRedSlots(PoseStack matrices, List<Widget> 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<AbstractContainerMenu, DefaultCraftingDisplay> info = (MenuInfo<AbstractContainerMenu, DefaultCraftingDisplay>) MenuInfoRegistry.getInstance().get(getCategoryIdentifier(), containerMenu.getClass());
@@ -109,4 +112,10 @@ public class DefaultCraftingCategory implements TransferDisplayCategory<DefaultC
// }
// matrices.popPose();
}
+
+ @Override
+ @Nullable
+ public DisplayMerger<DefaultCraftingDisplay<?>> getDisplayMerger() {
+ return DisplayCategory.getContentMerger();
+ }
}