package minefantasy.mf2.recipe;
import java.util.ArrayList;
import minefantasy.mf2.item.armour.ItemArmourMF;
import minefantasy.mf2.item.gadget.ItemSyringe;
import minefantasy.mf2.item.list.ToolListMF;
import net.minecraft.block.BlockColored;
import net.minecraft.entity.passive.EntitySheep;
import net.minecraft.init.Items;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.ItemPotion;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.world.World;
public class RecipeSyringe implements IRecipe
{
/**
* Used to check if a recipe matches current crafting inventory
*/
@Override
public boolean matches(InventoryCrafting matrix, World world)
{
ItemStack syringe = null;
ItemStack filler = null;
for (int i = 0; i < matrix.getSizeInventory(); ++i)
{
ItemStack itemstack1 = matrix.getStackInSlot(i);
if (itemstack1 != null)
{
if (itemstack1.getItem() == ToolListMF.syringe_empty)
{
syringe = itemstack1;
}
else if (itemstack1.getItem() instanceof ItemPotion)
{
ItemPotion potion = (ItemPotion)itemstack1.getItem();
if(potion.isSplash(itemstack1.getItemDamage()))
{
return false;
}
filler = itemstack1;
}
}
}
return syringe != null && filler != null;
}
/**
* Returns an Item that is the result of this recipe
*/
@Override
public ItemStack getCraftingResult(InventoryCrafting matrix)
{
ItemStack syringe = null;
ItemStack filler = null;
for (int i = 0; i < matrix.getSizeInventory(); ++i)
{
ItemStack itemstack1 = matrix.getStackInSlot(i);
if (itemstack1 != null)
{
if (itemstack1.getItem() == ToolListMF.syringe_empty)
{
syringe = itemstack1;
}
else if (itemstack1.getItem() instanceof ItemPotion)
{
ItemPotion potion = (ItemPotion)itemstack1.getItem();
if(potion.isSplash(itemstack1.getItemDamage()))
{
return null;
}
filler = itemstack1;
}
}
}
if(syringe != null && filler != null)
{
return new ItemStack(ToolListMF.syringe, 1, filler.getItemDamage());
}
return null;
}
/**
* Returns the size of the recipe area
*/
@Override
public int getRecipeSize()
{
return 10;
}
@Override
public ItemStack getRecipeOutput()
{
return null;
}
}