Copy itemstacks before checking them for valid wood recipes, should fix #1538

This commit is contained in:
modmuss50 2018-06-09 11:19:16 +01:00
parent 60c8527f6d
commit 1e129640fe
No known key found for this signature in database
GPG key ID: 773D17BE8BF49C82

View file

@ -31,7 +31,6 @@ import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.oredict.OreDictionary;
@ -45,6 +44,9 @@ import techreborn.lib.ModInfo;
import javax.annotation.Nonnull;
import java.security.InvalidParameterException;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@RebornRegistry(modID = ModInfo.MOD_ID)
public class IndustrialSawmillRecipes extends RecipeMethods {
@ -68,7 +70,11 @@ public class IndustrialSawmillRecipes extends RecipeMethods {
}, 1, 1);
inventoryCrafting.setInventorySlotContents(0, ItemStack.EMPTY);
NonNullList<ItemStack> logs = OreDictionary.getOres("logWood");
List<ItemStack> logs = OreDictionary.getOres("logWood").stream()
.filter(Objects::nonNull)
.map(ItemStack::copy)
.collect(Collectors.toList());
for (ItemStack logStack : logs) {
if (logStack.getItemDamage() == OreDictionary.WILDCARD_VALUE && logStack.getHasSubtypes()) {
for (int i = 0; i < 16; i++) {