aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java
diff options
context:
space:
mode:
authorDanielshe <shekwancheung0528@gmail.com>2019-11-03 14:44:52 +0800
committerDanielshe <shekwancheung0528@gmail.com>2019-11-03 14:44:59 +0800
commit9f5a9eae9a7863412cc5eb433bf15e5ee71da616 (patch)
tree0e6b0b94af061c5e9023b1ff19f339a6c30149be /src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java
parent3e3e25855b9f6df507a7d4c8a07c64b9a502fae2 (diff)
downloadRoughlyEnoughItems-9f5a9eae9a7863412cc5eb433bf15e5ee71da616.tar.gz
RoughlyEnoughItems-9f5a9eae9a7863412cc5eb433bf15e5ee71da616.tar.bz2
RoughlyEnoughItems-9f5a9eae9a7863412cc5eb433bf15e5ee71da616.zip
3.2.1
Diffstat (limited to 'src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java')
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java b/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java
index 756b1afe1..ef6b017ae 100644
--- a/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java
+++ b/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java
@@ -6,6 +6,8 @@
package me.shedaniel.rei.plugin.crafting;
import com.google.common.collect.Lists;
+import me.shedaniel.rei.api.EntryStack;
+import me.shedaniel.rei.utils.CollectionUtils;
import net.minecraft.item.ItemStack;
import net.minecraft.recipe.Recipe;
import net.minecraft.util.Identifier;
@@ -15,20 +17,24 @@ import java.util.Optional;
public class DefaultCustomDisplay implements DefaultCraftingDisplay {
- private List<List<ItemStack>> input;
- private List<ItemStack> output;
+ private List<List<EntryStack>> input;
+ private List<EntryStack> output;
private Recipe<?> possibleRecipe;
private int width, height;
public DefaultCustomDisplay(List<List<ItemStack>> input, List<ItemStack> output, Recipe<?> possibleRecipe) {
+ this(possibleRecipe, CollectionUtils.map(input, i -> CollectionUtils.map(i, EntryStack::create)), CollectionUtils.map(output, EntryStack::create));
+ }
+
+ public DefaultCustomDisplay(Recipe<?> possibleRecipe, List<List<EntryStack>> input, List<EntryStack> output) {
this.input = input;
this.output = output;
this.possibleRecipe = possibleRecipe;
List<Boolean> row = Lists.newArrayList(false, false, false);
List<Boolean> column = Lists.newArrayList(false, false, false);
for (int i = 0; i < 9; i++)
- if (i < input.size()) {
- List<ItemStack> stacks = input.get(i);
+ if (i < this.input.size()) {
+ List<EntryStack> stacks = this.input.get(i);
if (stacks.stream().filter(stack -> !stack.isEmpty()).count() > 0) {
row.set((i - (i % 3)) / 3, true);
column.set(i % 3, true);
@@ -52,17 +58,17 @@ public class DefaultCustomDisplay implements DefaultCraftingDisplay {
}
@Override
- public List<List<ItemStack>> getInput() {
+ public List<List<EntryStack>> getInputEntries() {
return input;
}
@Override
- public List<ItemStack> getOutput() {
+ public List<EntryStack> getOutputEntries() {
return output;
}
@Override
- public List<List<ItemStack>> getRequiredItems() {
+ public List<List<EntryStack>> getRequiredEntries() {
return input;
}