aboutsummaryrefslogtreecommitdiff
path: root/RoughlyEnoughItems-runtime/src/main/java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2020-08-21 05:12:31 +0800
committershedaniel <daniel@shedaniel.me>2020-08-21 05:12:31 +0800
commit88025ee2dd9830aacaa380f5394c1072ed661f8f (patch)
tree24576a8676622d1d8fce712e847f0592537e51ea /RoughlyEnoughItems-runtime/src/main/java
parent38779f9b8e3804a6efa0e47d28226017e2584c13 (diff)
downloadRoughlyEnoughItems-88025ee2dd9830aacaa380f5394c1072ed661f8f.tar.gz
RoughlyEnoughItems-88025ee2dd9830aacaa380f5394c1072ed661f8f.tar.bz2
RoughlyEnoughItems-88025ee2dd9830aacaa380f5394c1072ed661f8f.zip
Fix not being able to move items to grid in survival.
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'RoughlyEnoughItems-runtime/src/main/java')
-rw-r--r--RoughlyEnoughItems-runtime/src/main/java/me/shedaniel/rei/server/InputSlotCrafter.java39
1 files changed, 19 insertions, 20 deletions
diff --git a/RoughlyEnoughItems-runtime/src/main/java/me/shedaniel/rei/server/InputSlotCrafter.java b/RoughlyEnoughItems-runtime/src/main/java/me/shedaniel/rei/server/InputSlotCrafter.java
index 8d8eeb4cb..4447256e2 100644
--- a/RoughlyEnoughItems-runtime/src/main/java/me/shedaniel/rei/server/InputSlotCrafter.java
+++ b/RoughlyEnoughItems-runtime/src/main/java/me/shedaniel/rei/server/InputSlotCrafter.java
@@ -59,30 +59,29 @@ public class InputSlotCrafter<C extends Inventory> implements RecipeGridAligner<
this.player = player;
this.inventoryStacks = this.containerInfo.getInventoryStacks(this);
this.gridStacks = this.containerInfo.getGridStacks(this);
- if (player.isCreative()) {
- player.skipPacketSlotUpdates = true;
- // Return the already placed items on the grid
+
+ player.skipPacketSlotUpdates = true;
+ // Return the already placed items on the grid
+ this.returnInputs();
+
+ RecipeFinder recipeFinder = new RecipeFinder();
+ this.containerInfo.getRecipeFinderPopulator().populate(this).accept(recipeFinder);
+ DefaultedList<Ingredient> ingredients = DefaultedList.of();
+ map.entrySet().stream().sorted(Comparator.comparingInt(Map.Entry::getKey)).forEach(entry -> {
+ ingredients.add(Ingredient.ofItems(entry.getValue().stream().map(ItemStack::getItem).toArray(Item[]::new)));
+ });
+
+ if (recipeFinder.findRecipe(ingredients, null)) {
+ this.fillInputSlots(recipeFinder, ingredients, hasShift);
+ } else {
this.returnInputs();
-
- RecipeFinder recipeFinder = new RecipeFinder();
- this.containerInfo.getRecipeFinderPopulator().populate(this).accept(recipeFinder);
- DefaultedList<Ingredient> ingredients = DefaultedList.of();
- map.entrySet().stream().sorted(Comparator.comparingInt(Map.Entry::getKey)).forEach(entry -> {
- ingredients.add(Ingredient.ofItems(entry.getValue().stream().map(ItemStack::getItem).toArray(Item[]::new)));
- });
-
- if (recipeFinder.findRecipe(ingredients, null)) {
- this.fillInputSlots(recipeFinder, ingredients, hasShift);
- } else {
- this.returnInputs();
- player.skipPacketSlotUpdates = false;
- this.containerInfo.markDirty(this);
- throw new NotEnoughMaterialsException();
- }
-
player.skipPacketSlotUpdates = false;
this.containerInfo.markDirty(this);
+ throw new NotEnoughMaterialsException();
}
+
+ player.skipPacketSlotUpdates = false;
+ this.containerInfo.markDirty(this);
}
@Override