@@ -0,0 +1,2190 @@
+package boilerplate.steamapi.machines;%0A%0Aimport java.util.HashMap;%0Aimport java.util.Iterator;%0Aimport java.util.Map;%0Aimport java.util.Map.Entry;%0A%0Aimport net.minecraft.block.Block;%0Aimport net.minecraft.init.Blocks;%0Aimport net.minecraft.init.Items;%0Aimport net.minecraft.item.Item;%0Aimport net.minecraft.item.ItemStack;%0A%0Apublic class BloomeryRecipes%0A%7B%0A    private static final BloomeryRecipes smeltingBase = new BloomeryRecipes();%0A    /** The list of smelting results. */%0A    private Map%3CItemStack, ItemStack%3E smeltingList = new HashMap%3CItemStack, ItemStack%3E();%0A%0A    /**%0A     * Used to call methods addSmelting and getSmeltingResult.%0A     */%0A    public static BloomeryRecipes smelting()%0A    %7B%0A        return smeltingBase;%0A    %7D%0A%0A    private BloomeryRecipes()%0A    %7B%0A        this.addBloomeryBlockRecipe(Blocks.iron_ore, new ItemStack(Items.apple));%0A    %7D%0A%0A    public void addBloomeryBlockRecipe(Block input, ItemStack result)%0A    %7B%0A        this.addBloomeryItemRecipe(Item.getItemFromBlock(input), result);%0A    %7D%0A%0A    public void addBloomeryItemRecipe(Item input, ItemStack result)%0A    %7B%0A        this.addBloomeryItemStackRecipe(new ItemStack(input, 1, 32767), result);%0A    %7D%0A%0A    public void addBloomeryItemStackRecipe(ItemStack input, ItemStack result)%0A    %7B%0A        this.smeltingList.put(input, result);%0A    %7D%0A%0A    /**%0A     * Returns the smelting result of an item.%0A     */%0A    public ItemStack getSmeltingResult(ItemStack stack)%0A    %7B%0A        Iterator%3C?%3E iterator = this.smeltingList.entrySet().iterator();%0A        Entry%3C?, ?%3E entry;%0A%0A        do%0A        %7B%0A            if (!iterator.hasNext())%0A            %7B%0A                return null;%0A            %7D%0A%0A            entry = (Entry%3C?, ?%3E)iterator.next();%0A        %7D%0A        while (!this.func_151397_a(stack, (ItemStack)entry.getKey()));%0A%0A        return (ItemStack)entry.getValue();%0A    %7D%0A%0A    private boolean func_151397_a(ItemStack p_151397_1_, ItemStack p_151397_2_)%0A    %7B%0A        return p_151397_2_.getItem() == p_151397_1_.getItem() && (p_151397_2_.getItemDamage() == 32767 %7C%7C p_151397_2_.getItemDamage() == p_151397_1_.getItemDamage());%0A    %7D%0A%0A    public Map%3CItemStack, ItemStack%3E getSmeltingList()%0A    %7B%0A        return this.smeltingList;%0A    %7D%0A%7D

Add BloomeryRecipes