浏览代码

Fix recipes with 'holes' in it

Unknown 6 年之前
父节点
当前提交
330a69f32c
共有 3 个文件被更改,包括 9 次插入3 次删除
  1. 1 1
      build.gradle
  2. 1 1
      src/main/java/me/shedaniel/api/IRecipe.java
  3. 7 1
      src/main/java/me/shedaniel/impl/REIRecipeManager.java

+ 1 - 1
build.gradle

@@ -6,7 +6,7 @@ sourceCompatibility = 1.8
 targetCompatibility = 1.8
 
 archivesBaseName = "RoughlyEnoughItems"
-version = "1.5.1-19"
+version = "1.5.1-20"
 
 minecraft {
 }

+ 1 - 1
src/main/java/me/shedaniel/api/IRecipe.java

@@ -15,6 +15,6 @@ public interface IRecipe<T> {
 
     public List<List<T>> getInput();
     
-    public List<List<T>> getRecipeRequiredInput();
+    public List<List<ItemStack>> getRecipeRequiredInput();
     
 }

+ 7 - 1
src/main/java/me/shedaniel/impl/REIRecipeManager.java

@@ -10,6 +10,7 @@ import net.minecraft.client.MinecraftClient;
 import net.minecraft.client.gui.Gui;
 import net.minecraft.item.Item;
 import net.minecraft.item.ItemStack;
+import net.minecraft.item.Items;
 import net.minecraft.recipe.RecipeManager;
 
 import java.awt.*;
@@ -153,7 +154,12 @@ public class REIRecipeManager implements IRecipeManager {
         for(List<IRecipe> value : recipeList.values())
             for(IRecipe iRecipe : value) {
                 int slotsCraftable = 0;
-                for(List<ItemStack> slot : ((List<List<ItemStack>>) iRecipe.getRecipeRequiredInput())) {
+                List<List<ItemStack>> requiredInput = (List<List<ItemStack>>) iRecipe.getRecipeRequiredInput();
+                for(List<ItemStack> slot : requiredInput) {
+                    if (slot.isEmpty()) {
+                        slotsCraftable++;
+                        continue;
+                    }
                     boolean slotDone = false;
                     for(ItemStack possibleType : types) {
                         for(ItemStack slotPossible : slot)