diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/Crucible.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/Crucible.java index 5b0f5174..3699064e 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/Crucible.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/Crucible.java @@ -20,6 +20,7 @@ import net.minecraftforge.fml.relauncher.SideOnly; import nmd.primal.core.api.PrimalAPI; import nmd.primal.forgecraft.CommonUtils; import nmd.primal.forgecraft.ModInfo; +import nmd.primal.forgecraft.crafting.CrucibleCrafting; import nmd.primal.forgecraft.init.ModBlocks; import org.apache.commons.lang3.StringUtils; diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/NBTCrucible.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/NBTCrucible.java index db3a20e3..074966dd 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/NBTCrucible.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/NBTCrucible.java @@ -19,7 +19,6 @@ import net.minecraft.world.World; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import nmd.primal.forgecraft.ModInfo; -import nmd.primal.forgecraft.crafting.CrucibleHandler; import nmd.primal.forgecraft.tiles.TileBaseCrucible; import nmd.primal.forgecraft.tiles.TileNBTCrucible; @@ -50,9 +49,7 @@ public class NBTCrucible extends Block implements ITileEntityProvider { if (!world.isRemote) { TileNBTCrucible tile = (TileNBTCrucible) world.getTileEntity(pos); ItemStack pItem = player.inventory.getCurrentItem(); - if(CrucibleHandler.getCrucibleIngredients().apply(pItem)){ - System.out.println("true"); - } + } return false; } diff --git a/kfc/src/main/java/nmd/primal/forgecraft/crafting/CrucibleCrafting.java b/kfc/src/main/java/nmd/primal/forgecraft/crafting/CrucibleCrafting.java index 88da15a2..8669b1f5 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/crafting/CrucibleCrafting.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/crafting/CrucibleCrafting.java @@ -3,8 +3,8 @@ package nmd.primal.forgecraft.crafting; import net.minecraft.item.ItemStack; import net.minecraft.item.crafting.Ingredient; -import java.util.ArrayList; -import java.util.List; +import javax.annotation.Nullable; +import java.util.*; /** * Created by mminaie on 11/11/17. @@ -23,7 +23,122 @@ public class CrucibleCrafting { private Ingredient ing3; private Ingredient ing4; - private List ingredientList; + private List ingredientList = new List() { + @Override + public int size() { + return 0; + } + + @Override + public boolean isEmpty() { + return false; + } + + @Override + public boolean contains(Object o) { + return false; + } + + @Override + public Iterator iterator() { + return null; + } + + @Override + public Object[] toArray() { + return new Object[0]; + } + + @Override + public T[] toArray(T[] a) { + return null; + } + + @Override + public boolean add(Ingredient ingredient) { + return false; + } + + @Override + public boolean remove(Object o) { + return false; + } + + @Override + public boolean containsAll(Collection c) { + return false; + } + + @Override + public boolean addAll(Collection c) { + return false; + } + + @Override + public boolean addAll(int index, Collection c) { + return false; + } + + @Override + public boolean removeAll(Collection c) { + return false; + } + + @Override + public boolean retainAll(Collection c) { + return false; + } + + @Override + public void clear() { + + } + + @Override + public Ingredient get(int index) { + return null; + } + + @Override + public Ingredient set(int index, Ingredient element) { + return null; + } + + @Override + public void add(int index, Ingredient element) { + + } + + @Override + public Ingredient remove(int index) { + return null; + } + + @Override + public int indexOf(Object o) { + return 0; + } + + @Override + public int lastIndexOf(Object o) { + return 0; + } + + @Override + public ListIterator listIterator() { + return null; + } + + @Override + public ListIterator listIterator(int index) { + return null; + } + + @Override + public List subList(int fromIndex, int toIndex) { + return null; + } + }; private ItemStack drops; @@ -66,4 +181,17 @@ public class CrucibleCrafting { return null; } + public static boolean isValidIngredient(ItemStack checkStack){ + for(CrucibleCrafting recipe : crucibleCrafting) { + if (recipe.ing0.apply(checkStack) || + recipe.ing1.apply(checkStack) || + recipe.ing2.apply(checkStack) || + recipe.ing3.apply(checkStack) || + recipe.ing4.apply(checkStack)) { + return true; + } + } + return false; + } + } diff --git a/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java b/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java index d7a94f78..216cec44 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java @@ -4,6 +4,7 @@ import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.Ingredient; import net.minecraftforge.oredict.OreDictionary; import net.minecraftforge.oredict.OreIngredient; import nmd.primal.core.api.PrimalAPI; @@ -22,7 +23,12 @@ public class ModCrafting{ Random rand = new Random(); - CrucibleCrafting.addRecipe(new OreIngredient("oreIron"), null, null, null, null, + CrucibleCrafting.addRecipe( + new OreIngredient("oreIron"), + Ingredient.EMPTY, + Ingredient.EMPTY, + Ingredient.EMPTY, + Ingredient.EMPTY, new ItemStack(ModBlocks.ironball, 1)); /***CASTING BLOCK***/