aboutsummaryrefslogtreecommitdiff
path: root/default-plugin/src/main/java/me/shedaniel/rei/plugin/common
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2023-08-28 13:16:57 +0800
committershedaniel <daniel@shedaniel.me>2023-09-01 19:48:57 +0800
commit6a8bc6a8c34af1e3ff15fe8a802ef5ece3c417d2 (patch)
treea41c145c1273ab063c725bf44c1f39ca6e0bd5bd /default-plugin/src/main/java/me/shedaniel/rei/plugin/common
parentf8bea2079764219f68070be9ae45ffd8d517de5d (diff)
downloadRoughlyEnoughItems-6a8bc6a8c34af1e3ff15fe8a802ef5ece3c417d2.tar.gz
RoughlyEnoughItems-6a8bc6a8c34af1e3ff15fe8a802ef5ece3c417d2.tar.bz2
RoughlyEnoughItems-6a8bc6a8c34af1e3ff15fe8a802ef5ece3c417d2.zip
Reworked the transfer api
See https://www.craft.me/s/TVL01jO3OZarPE for the documentation of the new experimental simple transfer handle
Diffstat (limited to 'default-plugin/src/main/java/me/shedaniel/rei/plugin/common')
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/DefaultPlugin.java11
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java10
2 files changed, 10 insertions, 11 deletions
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/DefaultPlugin.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/DefaultPlugin.java
index c3465adff..e6a3e33ce 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/DefaultPlugin.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/DefaultPlugin.java
@@ -49,7 +49,7 @@ import me.shedaniel.rei.plugin.common.displays.tag.TagNodes;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.ListTag;
import net.minecraft.nbt.Tag;
-import net.minecraft.world.inventory.*;
+import net.minecraft.world.inventory.InventoryMenu;
import net.minecraft.world.item.*;
import net.minecraft.world.level.material.Fluid;
import org.jetbrains.annotations.ApiStatus;
@@ -124,15 +124,6 @@ public class DefaultPlugin implements BuiltinPlugin, REIServerPlugin {
}
@Override
- public void registerMenuInfo(MenuInfoRegistry registry) {
- registry.register(BuiltinPlugin.CRAFTING, CraftingMenu.class, SimpleMenuInfoProvider.of(RecipeBookGridMenuInfo::new));
- registry.register(BuiltinPlugin.CRAFTING, InventoryMenu.class, SimpleMenuInfoProvider.of(RecipeBookGridMenuInfo::new));
- registry.register(BuiltinPlugin.SMELTING, FurnaceMenu.class, SimpleMenuInfoProvider.of(RecipeBookGridMenuInfo::new));
- registry.register(BuiltinPlugin.SMOKING, SmokerMenu.class, SimpleMenuInfoProvider.of(RecipeBookGridMenuInfo::new));
- registry.register(BuiltinPlugin.BLASTING, BlastFurnaceMenu.class, SimpleMenuInfoProvider.of(RecipeBookGridMenuInfo::new));
- }
-
- @Override
public double getPriority() {
return -100;
}
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java
index 4ac5263ea..d012de882 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java
@@ -41,6 +41,7 @@ import me.shedaniel.rei.api.common.util.EntryIngredients;
import me.shedaniel.rei.plugin.common.BuiltinPlugin;
import net.minecraft.core.NonNullList;
import net.minecraft.resources.ResourceLocation;
+import net.minecraft.world.entity.player.Player;
import net.minecraft.world.inventory.AbstractContainerMenu;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.crafting.Ingredient;
@@ -191,6 +192,11 @@ public abstract class DefaultCraftingDisplay<C extends Recipe<?>> extends BasicD
return getInputIngredients(craftingWidth, craftingHeight);
}
+ @Override
+ public List<InputIngredient<EntryStack<?>>> getInputIngredients(@Nullable AbstractContainerMenu menu, @Nullable Player player) {
+ return getInputIngredients(3, 3);
+ }
+
public List<InputIngredient<EntryStack<?>>> getInputIngredients(int craftingWidth, int craftingHeight) {
int inputWidth = getInputWidth(craftingWidth, craftingHeight);
int inputHeight = getInputHeight(craftingWidth, craftingHeight);
@@ -204,7 +210,9 @@ public abstract class DefaultCraftingDisplay<C extends Recipe<?>> extends BasicD
continue;
}
int index = getSlotWithSize(inputWidth, i, craftingWidth);
- grid.put(new IntIntImmutablePair(i % inputWidth, i / inputWidth), InputIngredient.of(index, stacks));
+ int x = i % inputWidth;
+ int y = i / inputWidth;
+ grid.put(new IntIntImmutablePair(x, y), InputIngredient.of(index, 3 * y + x, stacks));
}
List<InputIngredient<EntryStack<?>>> list = new ArrayList<>(craftingWidth * craftingHeight);