package minefantasy.mf2.recipe;
import java.util.ArrayList;
import java.util.Iterator;
import minefantasy.mf2.api.MineFantasyAPI;
import minefantasy.mf2.api.crafting.Salvage;
import minefantasy.mf2.api.crafting.refine.PaintOilRecipe;
import minefantasy.mf2.api.crafting.refine.QuernRecipes;
import minefantasy.mf2.api.material.CustomMaterial;
import minefantasy.mf2.api.rpg.Skill;
import minefantasy.mf2.api.rpg.SkillList;
import minefantasy.mf2.block.list.BlockListMF;
import minefantasy.mf2.config.ConfigHardcore;
import minefantasy.mf2.item.ItemComponentMF;
import minefantasy.mf2.item.food.FoodListMF;
import minefantasy.mf2.item.list.ArmourListMF;
import minefantasy.mf2.item.list.ComponentListMF;
import minefantasy.mf2.item.list.CustomToolListMF;
import minefantasy.mf2.item.list.ToolListMF;
import minefantasy.mf2.knowledge.KnowledgeListMF;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraftforge.oredict.OreDictionary;
import cpw.mods.fml.common.registry.GameRegistry;
public class CarpenterRecipes
{
public static final String basic = "step.wood";
public static final String chopping = "dig.wood";
public static final String primitive = "minefantasy2:block.craftprimitive";
public static final String sewing = "step.cloth";
public static final String stonemason = "minefantasy2:block.hammercarpenter";
public static final String snipping = "mob.sheep.shear";
public static final String sawing = "minefantasy2:block.sawcarpenter";
public static final String grinding = "dig.gravel";
public static final String nailHammer = "minefantasy2:block.hammercarpenter";
public static final String woodHammer = "minefantasy2:block.carpentermallet";
public static final String mixing = "step.wood";
public static final String spanner = "minefantasy2:block.twistbolt";
private static final Skill artisanry = SkillList.artisanry;
private static final Skill engineering = SkillList.engineering;
private static final Skill construction = SkillList.construction;
private static final Skill provisioning = SkillList.provisioning;
public static void init()
{
/*
ArrayList<CustomMaterial> wood = CustomMaterial.getList("wood");
Iterator iteratorWood = wood.iterator();
while(iteratorWood.hasNext())
{
CustomMaterial customMat = (CustomMaterial) iteratorWood.next();
}
*/
assembleWoodBasic();
addDusts();
addWoodworks();
addStonemason();
addCooking();
addMisc();
addEngineering();
if(ConfigHardcore.HCCallowRocks)
{
addPrimitive();
}
else
{
addNonPrimitiveStone();
}
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.researchBook), "", sewing, "hands", -1, 1 , new Object[]
{
"B",
'B', Items.book,
});
if(ConfigHardcore.HCCallowRocks)
{
KnowledgeListMF.sharpRocksR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.sharp_rock, 8), "", stonemason, "hammer", -1, 10 , new Object[]
{
"S",
'S', Blocks.cobblestone,
});
}
else
{
}
Salvage.addSalvage(ToolListMF.dryrocks, Blocks.cobblestone);
KnowledgeListMF.threadR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.thread, 4), "commodities", sewing, "hands", -1, 5 , new Object[]
{
"W",
"S",
'W', Blocks.wool,
'S', Items.stick,
});
KnowledgeListMF.stringR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(Items.string), "commodities", sewing, "hands", -1, 10 , new Object[]
{
"T",
"T",
"T",
"T",
'T', ComponentListMF.thread
});
KnowledgeListMF.lStripsR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.leather_strip, 4), "commodities", snipping, "shears", -1, 10 , new Object[]
{
"L",
'L', Items.leather,
});
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(ToolListMF.swordTraining), nailHammer, "knife", 1, 40 , new Object[]
{
"NI ",
"SIII",
"NI ",
'N', ComponentListMF.nail,
'S', ComponentListMF.plank,
'I', Blocks.planks,
});
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(ToolListMF.waraxeTraining), nailHammer, "knife", 1, 30 , new Object[]
{
" II ",
"SSIN",
" I ",
'N', ComponentListMF.nail,
'S', ComponentListMF.plank,
'I', Blocks.planks,
});
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(ToolListMF.maceTraining), nailHammer, "knife", 1, 35 , new Object[]
{
" II ",
"SSIIN",
'N', ComponentListMF.nail,
'S', ComponentListMF.plank,
'I', Blocks.planks,
});
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(ToolListMF.spearTraining), nailHammer, "knife", 1, 20 , new Object[]
{
" N ",
"SSSI",
" N ",
'N', ComponentListMF.nail,
'S', ComponentListMF.plank,
'I', Blocks.planks,
});
ItemStack scrapWood = ((ItemComponentMF)ComponentListMF.plank).construct("ScrapWood");
Salvage.addSalvage(ToolListMF.swordTraining, new ItemStack(Blocks.planks, 5), new ItemStack(ComponentListMF.nail, 2), scrapWood);
Salvage.addSalvage(ToolListMF.waraxeTraining, new ItemStack(Blocks.planks, 4), ComponentListMF.nail, scrapWood, scrapWood);
Salvage.addSalvage(ToolListMF.maceTraining, new ItemStack(Blocks.planks, 4), ComponentListMF.nail, scrapWood, scrapWood);
Salvage.addSalvage(ToolListMF.waraxeTraining, Blocks.planks, new ItemStack(ComponentListMF.nail, 2), scrapWood, scrapWood, scrapWood);
KnowledgeListMF.badBandageR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(ToolListMF.bandage_crude, 2), "bandage", sewing, "needle", -1, 10 , new Object[]
{
"LLL",
'L', ComponentListMF.rawhideSmall,
});
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(ToolListMF.bandage_crude, 4), "bandage", sewing, "needle", -1, 20 , new Object[]
{
"LLL",
'L', ComponentListMF.rawhideMedium,
});
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(ToolListMF.bandage_crude, 6), "bandage", sewing, "needle", -1, 30 , new Object[]
{
"LLL",
'L', ComponentListMF.rawhideLarge,
});
KnowledgeListMF.bandageR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(ToolListMF.bandage_wool, 4), "bandage", sewing, "needle", 1, 10 , new Object[]
{
"CTC",
'T', ComponentListMF.thread,
'C', Blocks.wool,
});
KnowledgeListMF.goodBandageR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(ToolListMF.bandage_tough), "bandageadv", sewing, "needle", 2, 20 , new Object[]
{
"T",
"L",
"B",
'T', ComponentListMF.thread,
'L', ComponentListMF.leather_strip,
'B', ToolListMF.bandage_wool
});
KnowledgeListMF.roughHelmetR =
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 1, 0),"craftArmourBasic", sewing, "needle", -1, 25 , new Object[]
{
"TLT",
"S S",
'T', ComponentListMF.thread,
'S', ComponentListMF.leather_strip,
'L', Items.leather
});
KnowledgeListMF.roughChestR =
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 1, 1),"craftArmourBasic", sewing, "needle", -1, 40 , new Object[]
{
"S S",
"LLL",
"TLT",
'T', ComponentListMF.thread,
'S', ComponentListMF.leather_strip,
'L', Items.leather
});
KnowledgeListMF.roughLegsR =
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 1, 2),"craftArmourBasic", sewing, "needle", -1, 35 , new Object[]
{
"TLT",
"L L",
"S S",
'T', ComponentListMF.thread,
'S', ComponentListMF.leather_strip,
'L', Items.leather
});
KnowledgeListMF.roughBootsR =
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 1, 3),"craftArmourBasic", sewing, "needle", -1, 20 , new Object[]
{
"T T",
"S S",
'T', ComponentListMF.thread,
'S', ComponentListMF.leather_strip,
});
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 1, 0), new ItemStack(ComponentListMF.thread, 2), new ItemStack(ComponentListMF.leather_strip, 2), Items.leather);
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 1, 1), new ItemStack(ComponentListMF.thread, 4), new ItemStack(ComponentListMF.leather_strip, 2), new ItemStack(Items.leather, 4));
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 1, 2), new ItemStack(ComponentListMF.thread, 4), new ItemStack(ComponentListMF.leather_strip, 2), new ItemStack(Items.leather, 3));
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 1, 3), new ItemStack(ComponentListMF.thread, 4), new ItemStack(ComponentListMF.leather_strip, 2));
KnowledgeListMF.reHelmetR =
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 2, 0),"craftArmourLight", sewing, "needle", 0, 50 , new Object[]
{
"TTT",
"UPU",
'T', ComponentListMF.thread,
'P', ArmourListMF.armour(ArmourListMF.leather, 1, 0),
'U', Items.leather
});
KnowledgeListMF.reChestR =
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 2, 1),"craftArmourLight", sewing, "needle", 0, 80 , new Object[]
{
"TTT",
"UPU",
'T', ComponentListMF.thread,
'P', ArmourListMF.armour(ArmourListMF.leather, 1, 1),
'U', Items.leather
});
KnowledgeListMF.reLegsR =
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 2, 2),"craftArmourLight", sewing, "needle", 0, 70 , new Object[]
{
"TTT",
"UPU",
'T', ComponentListMF.thread,
'P', ArmourListMF.armour(ArmourListMF.leather, 1, 2),
'U', Items.leather
});
KnowledgeListMF.reBootsR =
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 2, 3),"craftArmourLight", sewing, "needle", 0, 40 , new Object[]
{
"TTT",
"UPU",
'T', ComponentListMF.thread,
'P', ArmourListMF.armour(ArmourListMF.leather, 1, 3),
'U', Items.leather
});
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 2, 0), ArmourListMF.armourItem(ArmourListMF.leather, 1, 0), new ItemStack(ComponentListMF.thread, 3), new ItemStack(Items.leather, 2));
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 2, 1), ArmourListMF.armourItem(ArmourListMF.leather, 1, 1), new ItemStack(ComponentListMF.thread, 3), new ItemStack(Items.leather, 2));
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 2, 2), ArmourListMF.armourItem(ArmourListMF.leather, 1, 2), new ItemStack(ComponentListMF.thread, 3), new ItemStack(Items.leather, 2));
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 2, 3), ArmourListMF.armourItem(ArmourListMF.leather, 1, 3), new ItemStack(ComponentListMF.thread, 3), new ItemStack(Items.leather, 2));
//PADDING
KnowledgeListMF.padding[0]=
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 5, 0),"craftArmourLight", sewing, "needle", 2, 50 , new Object[]
{
"SWS",
"FPF",
"SFS",
'P', ArmourListMF.armour(ArmourListMF.leather, 1, 0),
'W', Blocks.wool,
'F', Items.feather,
'S', ComponentListMF.thread,
});
KnowledgeListMF.padding[1]=
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 5, 1),"craftArmourLight", sewing, "needle", 2, 80 , new Object[]
{
"SWS",
"FPF",
"SFS",
'P', ArmourListMF.armour(ArmourListMF.leather, 1, 1),
'W', Blocks.wool,
'F', Items.feather,
'S', ComponentListMF.thread,
});
KnowledgeListMF.padding[2]=
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 5, 2),"craftArmourLight", sewing, "needle", 2, 70 , new Object[]
{
"SWS",
"FPF",
"SFS",
'P', ArmourListMF.armour(ArmourListMF.leather, 1, 2),
'W', Blocks.wool,
'F', Items.feather,
'S', ComponentListMF.thread,
});
KnowledgeListMF.padding[3]=
MineFantasyAPI.addCarpenterRecipe(artisanry, ArmourListMF.armour(ArmourListMF.leather, 5, 3),"craftArmourLight", sewing, "needle", 2, 40 , new Object[]
{
"SWS",
"FPF",
"SFS",
'P', ArmourListMF.armour(ArmourListMF.leather, 1, 3),
'W', Blocks.wool,
'F', Items.feather,
'S', ComponentListMF.thread,
});
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 5, 0), ArmourListMF.armourItem(ArmourListMF.leather, 1, 0), new ItemStack(ComponentListMF.thread, 4), new ItemStack(Items.feather, 3), Blocks.wool);
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 5, 1), ArmourListMF.armourItem(ArmourListMF.leather, 1, 1), new ItemStack(ComponentListMF.thread, 4), new ItemStack(Items.feather, 3), Blocks.wool);
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 5, 2), ArmourListMF.armourItem(ArmourListMF.leather, 1, 2), new ItemStack(ComponentListMF.thread, 4), new ItemStack(Items.feather, 3), Blocks.wool);
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 5, 3), ArmourListMF.armourItem(ArmourListMF.leather, 1, 3), new ItemStack(ComponentListMF.thread, 4), new ItemStack(Items.feather, 3), Blocks.wool);
KnowledgeListMF.repairBasicR =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.repair_basic), "repair_basic", sewing, "needle", 1, 20 , new Object[]
{
"TTT",
"FNH",
"SLS",
'T', ComponentListMF.thread,
'S', ComponentListMF.leather_strip,
'L', Items.leather,
'F', Items.flint,
'H', CustomToolListMF.standard_hammer,
'N', ComponentListMF.nail,
});
ItemStack bronzePlate = ComponentListMF.plate.createComm("bronze");
KnowledgeListMF.repairAdvancedR =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.repair_advanced), "repair_advanced", sewing, "needle", 2, 50 , new Object[]
{
"SCS",
"PKH",
"CSC",
'K', BlockListMF.repair_basic,
'P', bronzePlate,
'H', CustomToolListMF.standard_hammer,
'C', Items.slime_ball,
'S', Items.string,
});
KnowledgeListMF.repairOrnateR =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.repair_ornate), "repair_ornate", sewing, "needle", 3, 100 , new Object[]
{
"GDG",
"LKL",
"GLG",
'K', BlockListMF.repair_advanced,
'G', Items.gold_ingot,
'L', new ItemStack(Items.dye, 1, 4),
'D', Items.diamond,
});
Salvage.addSalvage(BlockListMF.repair_basic, new ItemStack(ComponentListMF.thread, 3), ComponentListMF.nail, Items.flint, Items.leather, new ItemStack(ComponentListMF.leather_strip, 2));
Salvage.addSalvage(BlockListMF.repair_advanced, BlockListMF.repair_basic, bronzePlate, new ItemStack(Items.slime_ball, 3), new ItemStack(Items.string, 3));
Salvage.addSalvage(BlockListMF.repair_ornate, BlockListMF.repair_advanced, new ItemStack(Items.gold_ingot, 4), Items.diamond, new ItemStack(Items.dye, 3, 4));
}
public static void assembleWoodBasic()
{
KnowledgeListMF.carpenterRecipe =
GameRegistry.addShapedRecipe(new ItemStack(BlockListMF.carpenter), new Object[]{
"PBP",
"P P",
'B', Blocks.crafting_table,
'P', ComponentListMF.plank
});
Salvage.addSalvage(BlockListMF.carpenter, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("ScrapWood").getItem(), 4), Blocks.crafting_table);
KnowledgeListMF.nailPlanksR=
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.nailed_planks), "refined_planks", nailHammer, "hammer", 1, 5 , new Object[]
{
"NN",
"PP",
"PP",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"),
});
KnowledgeListMF.nailStairR=
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.nailed_planks_stair), "refined_planks", nailHammer, "hammer", 1, 5 , new Object[]
{
"N ",
"P ",
"PP",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"),
});
KnowledgeListMF.woodTroughRecipe =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.trough_wood), "", nailHammer, "hammer", -1, 10 , new Object[]
{
"P P",
"PPP",
'P', ComponentListMF.plank,
});
KnowledgeListMF.tannerRecipe =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.tanner), "", nailHammer, "hammer", -1, 10 , new Object[]
{
"PPP",
"P P",
"PPP",
'P', ComponentListMF.plank,
});
KnowledgeListMF.clayWallR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.clayWall, 4, 0), "clay_wall", nailHammer, "hammer", 1, 2 , new Object[]
{
"NPN",
"PCP",
"NPN",
'N', ComponentListMF.nail,
'P', ComponentListMF.plank,
'C', Blocks.clay
});
KnowledgeListMF.clayWallR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.clayWall1, 1, 1), "clay_wall", nailHammer, "hammer", 1, 2 , new Object[]
{
"PNP",
" C ",
'N', ComponentListMF.nail,
'P', ComponentListMF.plank,
'C', BlockListMF.clayWall
});
KnowledgeListMF.clayWallR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.clayWall2, 1, 2), "clay_wall", nailHammer, "hammer", 1, 2 , new Object[]
{
" C ",
"PN ",
'N', ComponentListMF.nail,
'P', ComponentListMF.plank,
'C', BlockListMF.clayWall
});
KnowledgeListMF.clayWallR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.clayWall3, 1, 3), "clay_wall", nailHammer, "hammer", 1, 2 , new Object[]
{
"PN ",
" C ",
'N', ComponentListMF.nail,
'P', ComponentListMF.plank,
'C', BlockListMF.clayWall
});
KnowledgeListMF.researchTableRecipe =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.research), "", nailHammer, "hammer", -1, 10 , new Object[]
{
"B",
"C",
'B', ToolListMF.researchBook,
'C', BlockListMF.carpenter,
});
KnowledgeListMF.bSalvageR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.salvage_basic), "", nailHammer, "hammer", -1, 10 , new Object[]
{
"SFS",
"PWP",
'W', Blocks.crafting_table,
'S', Blocks.stone,
'F', Items.flint,
'P', ComponentListMF.plank
});
KnowledgeListMF.framedGlassR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.framed_glass), "", nailHammer, "hammer", -1, 10 , new Object[]
{
"PGP",
'P', ComponentListMF.plank,
'G', Blocks.glass
});
KnowledgeListMF.windowR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.window), "", nailHammer, "hammer", -1, 10 , new Object[]
{
" P ",
"PGP",
" P ",
'P', ComponentListMF.plank,
'G', Blocks.glass
});
Salvage.addSalvage(BlockListMF.framed_glass, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("OakWood").getItem(), 2), Blocks.glass);
Salvage.addSalvage(BlockListMF.window, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("OakWood").getItem(), 4), Blocks.glass);
Salvage.addSalvage(BlockListMF.clayWall, ComponentListMF.nail, ((ItemComponentMF)ComponentListMF.plank).construct("ScrapWood"), Items.clay_ball);
Salvage.addSalvage(BlockListMF.tanner, ((ItemComponentMF)ComponentListMF.plank).construct("ScrapWood", 8));
Salvage.addSalvage(BlockListMF.trough_wood, ((ItemComponentMF)ComponentListMF.plank).construct("ScrapWood", 5));
Salvage.addSalvage(BlockListMF.research, BlockListMF.carpenter);
Salvage.addSalvage(BlockListMF.salvage_basic, Items.flint, new ItemStack(Blocks.stone, 2), new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("ScrapWood").getItem(), 2), Blocks.crafting_table);
}
private static void addDusts()
{
QuernRecipes.addRecipe(new ItemStack(Items.dye, 1, 3), new ItemStack(FoodListMF.coca_powder), 0);//ItemDye
QuernRecipes.addRecipe(Items.wheat, new ItemStack(FoodListMF.flour), 0);
QuernRecipes.addRecipe(Items.reeds, new ItemStack(FoodListMF.sugarpot), 0);
QuernRecipes.addRecipe(FoodListMF.breadroll, new ItemStack(FoodListMF.breadcrumbs), 0);
QuernRecipes.addRecipe(FoodListMF.generic_meat_uncooked, new ItemStack(FoodListMF.generic_meat_mince_uncooked), 0);
QuernRecipes.addRecipe(FoodListMF.generic_meat_strip_uncooked, new ItemStack(FoodListMF.generic_meat_mince_uncooked), 0);
QuernRecipes.addRecipe(FoodListMF.generic_meat_chunk_uncooked, new ItemStack(FoodListMF.generic_meat_mince_uncooked), 0);
QuernRecipes.addRecipe(FoodListMF.generic_meat_cooked, new ItemStack(FoodListMF.generic_meat_mince_cooked), 0);
QuernRecipes.addRecipe(FoodListMF.generic_meat_strip_cooked, new ItemStack(FoodListMF.generic_meat_mince_cooked), 0);
QuernRecipes.addRecipe(FoodListMF.generic_meat_chunk_cooked, new ItemStack(FoodListMF.generic_meat_mince_cooked), 0);
QuernRecipes.addRecipe(Items.coal, new ItemStack(ComponentListMF.coalDust), 0);
QuernRecipes.addRecipe(new ItemStack(Items.coal, 1, 1), new ItemStack(ComponentListMF.coalDust), 0);
QuernRecipes.addRecipe(ComponentListMF.kaolinite, new ItemStack(ComponentListMF.kaolinite_dust), 0);
QuernRecipes.addRecipe(Items.flint, new ItemStack(ComponentListMF.shrapnel), 0);
QuernRecipes.addRecipe(ComponentListMF.flux, new ItemStack(ComponentListMF.flux_pot), 0);
KnowledgeListMF.pieTrayRecipe =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.pie_tray_uncooked), "", basic, "hands", -1, 10 , new Object[]
{
"CC",
'C', Items.clay_ball,
});
KnowledgeListMF.potRecipe =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.clay_pot_uncooked, 8), "", basic, "hands", -1, 5 , new Object[]
{
"C C",
" CC ",
'C', Items.clay_ball,
});
KnowledgeListMF.mouldRecipe =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.ingot_mould_uncooked), "crucible", basic, "hands", -1, 10 , new Object[]
{
"CCC",
" C ",
'C', Items.clay_ball,
});
KnowledgeListMF.jugRecipe =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(FoodListMF.jug_uncooked, 4), "", basic, "hands", -1, 8 , new Object[]
{
"C ",
"C C",
" C ",
'C', Items.clay_ball,
});
GameRegistry.addSmelting(ComponentListMF.pie_tray_uncooked, new ItemStack(FoodListMF.pie_tray), 0F);
GameRegistry.addSmelting(ComponentListMF.clay_pot_uncooked, new ItemStack(ComponentListMF.clay_pot), 0F);
GameRegistry.addSmelting(ComponentListMF.ingot_mould_uncooked, new ItemStack(ComponentListMF.ingot_mould), 0F);
GameRegistry.addSmelting(FoodListMF.jug_uncooked, new ItemStack(FoodListMF.jug_empty), 0F);
KnowledgeListMF.blackpowderRec =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.blackpowder, 2), "blackpowder", basic, "hands", -1, 2 , new Object[]
{
"NS",
"CC",
"PP",
'C', ComponentListMF.coalDust,
'N', ComponentListMF.nitre,
'S', ComponentListMF.sulfur,
'P', ComponentListMF.clay_pot,
});
KnowledgeListMF.crudeBombR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ToolListMF.bomb_crude), "blackpowder", primitive, "hands", -1, 5 , new Object[]
{
"T",
"B",
"P",
'B', ComponentListMF.blackpowder,
'T', ComponentListMF.thread,
'P', Items.paper,
});
KnowledgeListMF.advblackpowderRec =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.blackpowder_advanced), "advblackpowder", basic, "hands", -1, 10 , new Object[]
{
" B ",
"RGR",
" P ",
'B', ComponentListMF.blackpowder,
'G', Items.glowstone_dust,
'R', Items.redstone,
'P', ComponentListMF.clay_pot,
});
KnowledgeListMF.magmaRefinedR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ComponentListMF.magma_cream_refined), "firebomb", grinding, "pestle", -1, 10 , new Object[]
{
"B",
"H",
"C",
"P",
'H', ComponentListMF.dragon_heart,
'B', Items.blaze_powder,
'C', Items.magma_cream,
'P', ComponentListMF.clay_pot,
});
Salvage.addSalvage(ComponentListMF.magma_cream_refined, ComponentListMF.dragon_heart, Items.blaze_powder, Items.magma_cream, ComponentListMF.clay_pot);
}
private static void addWoodworks()
{
KnowledgeListMF.refinedPlankBlockR=
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.refined_planks), "refined_planks", nailHammer, "hammer", 1, 10 , new Object[]
{
"NN",
"PP",
"PP",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
});
KnowledgeListMF.refinedStairR=
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.refined_planks_stair), "refined_planks", nailHammer, "hammer", 1, 10 , new Object[]
{
"N ",
"P ",
"PP",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
});
Salvage.addSalvage(BlockListMF.nailed_planks, new ItemStack(ComponentListMF.nail, 2), new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("OakWood").getItem(), 4));
Salvage.addSalvage(BlockListMF.refined_planks, new ItemStack(ComponentListMF.nail, 2), new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 4));
Salvage.addSalvage(BlockListMF.nailed_planks_stair, ComponentListMF.nail, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("OakWood").getItem(), 3));
Salvage.addSalvage(BlockListMF.refined_planks_stair, ComponentListMF.nail, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 3));
KnowledgeListMF.bellowsRecipe =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.bellows), "", nailHammer, "hammer", 1, 50 , new Object[]
{
"NNN",
"PPP",
"LL ",
"PP ",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
'L', Items.leather,
});
Salvage.addSalvage(BlockListMF.bellows, new ItemStack(ComponentListMF.nail, 3), new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 5), new ItemStack(Items.leather, 2));
KnowledgeListMF.rockTroughRecipe =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.trough_rock), "", nailHammer, "hammer", 1, 60 , new Object[]
{
"P P",
"PPP",
'P', BlockListMF.reinforced_stone,
});
KnowledgeListMF.strongwoodTroughRecipe =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.trough_strongwood), "", nailHammer, "hammer", 2, 100 , new Object[]
{
"N N",
"P P",
"PPP",
"NNN",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
});
Salvage.addSalvage(BlockListMF.trough_wood, ((ItemComponentMF)ComponentListMF.plank).construct("ScrapWood", 5));
Salvage.addSalvage(BlockListMF.trough_rock, new ItemStack(BlockListMF.reinforced_stone, 5));
Salvage.addSalvage(BlockListMF.trough_strongwood, ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood", 5), new ItemStack(ComponentListMF.nail, 5));
KnowledgeListMF.strongRackR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.advTanner), "", nailHammer, "hammer", 1, 80 , new Object[]
{
"NNN",
"PPP",
"P P",
"PPP",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
});
Salvage.addSalvage(BlockListMF.advTanner, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 8), new ItemStack(ComponentListMF.nail, 3));
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.refined_planks), "paint_brush", sewing, "brush", -1, 3 , new Object[]
{
"O",
"P",
'O', ComponentListMF.plant_oil,
'P', BlockListMF.nailed_planks,
});
PaintOilRecipe.addRecipe(BlockListMF.nailed_planks, BlockListMF.refined_planks);
PaintOilRecipe.addRecipe(BlockListMF.nailed_planks_stair, BlockListMF.refined_planks_stair);
}
private static void addStonemason()
{
KnowledgeListMF.quernR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(BlockListMF.quern), "", stonemason, "hammer", -1, 10, new Object[]
{
"FSF",
"SSS",
'F', Items.flint,
'S', Blocks.stone,
});
KnowledgeListMF.bloomeryR =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.bloomery), "bloomery", stonemason, "hammer", -1, 10 , new Object[]{
" S ",
"S S",
"SCS",
'C', Blocks.coal_block,
'S', Blocks.stone,
});
KnowledgeListMF.crucibleRecipe =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.crucible), "crucible", stonemason, "hammer", -1, 20 , new Object[]{
"SSS",
"S S",
"SSS",
'S', Blocks.stone,
});
KnowledgeListMF.advCrucibleRecipe =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.crucibleadv), "crucible2", stonemason, 40 , new Object[]{
"SSS",
"SCS",
"SSS",
'S', ComponentListMF.fireclay,
'C', BlockListMF.crucible
});
Salvage.addSalvage(BlockListMF.crucible, new ItemStack(Blocks.stone, 8));
Salvage.addSalvage(BlockListMF.crucibleadv, new ItemStack(ComponentListMF.fireclay, 8), BlockListMF.crucible);
KnowledgeListMF.chimneyRecipe =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.chimney_stone, 8), "", stonemason, "hammer", -1, 30 , new Object[]{
"S S",
"S S",
"S S",
'S', Blocks.stone,
});
KnowledgeListMF.wideChimneyRecipe =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.chimney_stone_wide), "", stonemason, "hammer", -1, 10 , new Object[]{
"S",
"C",
'C', BlockListMF.chimney_stone,
'S', Blocks.stone,
});
KnowledgeListMF.extractChimneyRecipe =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(BlockListMF.chimney_stone_extractor), "", stonemason, "hammer", -1, 15 , new Object[]{
"C",
'C', BlockListMF.chimney_stone_wide,
});
KnowledgeListMF.stoneAnvilRecipe =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(BlockListMF.anvilStone), "", stonemason, "hammer", -1, 10, new Object[]
{
"SS ",
"SSS",
" S ",
'S', Blocks.stone
});
KnowledgeListMF.forgeRecipe =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(BlockListMF.forge), "", stonemason, "hammer", -1, 10, new Object[]
{
"S S",
"SCS",
'C', Items.coal,
'S', Blocks.stone
});
Salvage.addSalvage(BlockListMF.forge, new ItemStack(Blocks.stone, 4), Items.coal);
Salvage.addSalvage(BlockListMF.anvilStone, new ItemStack(Blocks.stone, 6));
Salvage.addSalvage(BlockListMF.chimney_stone, Blocks.stone);
Salvage.addSalvage(BlockListMF.chimney_stone_wide, BlockListMF.chimney_stone, Blocks.stone);
Salvage.addSalvage(BlockListMF.chimney_stone_extractor, BlockListMF.chimney_stone_wide);
Salvage.addSalvage(BlockListMF.quern, new ItemStack(Items.flint, 2), new ItemStack(Blocks.stone, 4));
}
private static void addCooking()
{
String meatRaw = "rawMeat";
String cookedMeat = "cookedMeat";
OreDictionary.registerOre(cookedMeat, Items.cooked_beef);
OreDictionary.registerOre(cookedMeat, Items.cooked_chicken);
OreDictionary.registerOre(cookedMeat, Items.cooked_porkchop);
OreDictionary.registerOre(cookedMeat, FoodListMF.wolf_cooked);
OreDictionary.registerOre(cookedMeat, FoodListMF.horse_cooked);
OreDictionary.registerOre(cookedMeat, Items.cooked_fished);
OreDictionary.registerOre(cookedMeat, new ItemStack(Items.cooked_fished, 1, 1));
addOreD("listAllporkcooked", cookedMeat);
addOreD("listAllmuttoncooked", cookedMeat);
addOreD("listAllbeefcooked", cookedMeat);
addOreD("listAllchickencooked", cookedMeat);
addOreD("listAllfishcooked", cookedMeat);
OreDictionary.registerOre(meatRaw, FoodListMF.guts);
OreDictionary.registerOre(meatRaw, Items.beef);
OreDictionary.registerOre(meatRaw, Items.chicken);
OreDictionary.registerOre(meatRaw, Items.porkchop);
OreDictionary.registerOre(meatRaw, FoodListMF.wolf_raw);
OreDictionary.registerOre(meatRaw, FoodListMF.horse_raw);
OreDictionary.registerOre(meatRaw, Items.fish);
OreDictionary.registerOre(meatRaw, new ItemStack(Items.fish, 1, 1));
addOreD("listAllporkraw", meatRaw);
addOreD("listAllmuttonraw", meatRaw);
addOreD("listAllbeefraw", meatRaw);
addOreD("listAllchickenraw", meatRaw);
addOreD("listAllfishraw", meatRaw);
KnowledgeListMF.curdRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.curds), "", basic, "hands", -1, 10, new Object[]{
"T",
"S",
"M",
'T', FoodListMF.salt,
'S', FoodListMF.sugarpot,
'M', FoodListMF.jug_milk,
});
KnowledgeListMF.oatsRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.oats), "", chopping, "knife", -1, 20, new Object[]{
"M",
"W",
"S",
"B",
'S', Items.wheat_seeds,
'W', Items.wheat,
'M', FoodListMF.jug_milk,
'B', Items.bowl
});
KnowledgeListMF.doughRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.dough), "", basic, "hands", -1, 10, new Object[]{
"W",
"F",
'W', FoodListMF.jug_water,
'F', FoodListMF.flour,
});
KnowledgeListMF.pastryRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.pastry), "", basic, "hands", -1, 10, new Object[]{
" S ",
"FEF",
'F', FoodListMF.flour,
'E', Items.egg,
'S', FoodListMF.salt,
});
KnowledgeListMF.breadRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.raw_bread), "", basic, "hands", -1, 15, new Object[]{
"DDD",
'D', FoodListMF.dough,
});
KnowledgeListMF.sweetrollRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.sweetroll_raw), "sweetroll", basic, 5, new Object[]{
" M ",
"FES",
"BBB",
'M', FoodListMF.jug_milk,
'S', FoodListMF.sugarpot,
'B', FoodListMF.berries,
'E', Items.egg,
'F', FoodListMF.flour,
});
KnowledgeListMF.icingRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.icing), "", mixing, "spoon", -1, 10, new Object[]{
"W",
"S",
"B",
'W', FoodListMF.jug_water,
'S', FoodListMF.sugarpot,
'B', ComponentListMF.clay_pot,
});
KnowledgeListMF.chocoRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.chocolate), "icing", mixing, "spoon", -1, 10, new Object[]{
" M ",
"SCS",
" B ",
'C', FoodListMF.coca_powder,
'M', FoodListMF.jug_milk,
'S', FoodListMF.sugarpot,
'B', ComponentListMF.clay_pot,
});
KnowledgeListMF.custardRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.custard), "icing", mixing, "spoon", -1, 10, new Object[]{
" M ",
"SES",
" B ",
'E', Items.egg,
'M', FoodListMF.jug_milk,
'S', FoodListMF.sugarpot,
'B', ComponentListMF.clay_pot,
});
KnowledgeListMF.iceSR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.sweetroll), "sweetroll", basic, "knife", -1, 15, new Object[]{
"I",
"R",
'I', FoodListMF.icing,
'R', FoodListMF.sweetroll_uniced,
});
KnowledgeListMF.eclairDoughR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.eclair_raw), "eclair", basic, 8, new Object[]{
"SSS",
"PPP",
'P', FoodListMF.pastry,
'S', FoodListMF.sugarpot,
});
KnowledgeListMF.eclairIceR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.eclair_empty), "eclair", basic, "knife", 2, 20, new Object[]{
"C",
"E",
'C', FoodListMF.chocolate,
'E', FoodListMF.eclair_uniced,
});
KnowledgeListMF.eclairFillR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.eclair), "eclair", basic, "knife", 2, 20, new Object[]{
"C",
"E",
'C', FoodListMF.custard,
'E', FoodListMF.eclair_empty,
});
for(ItemStack food: OreDictionary.getOres(meatRaw))
{
int size = getSize(food);
KnowledgeListMF.meatRecipes.add(
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.generic_meat_uncooked, size), "", chopping, "knife", -1, 15, new Object[]{
"M",
'M', food,
}));
}
for(ItemStack food: OreDictionary.getOres(cookedMeat))
{
int size = 1;
KnowledgeListMF.meatRecipes.add(
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.generic_meat_cooked, size), "", chopping, "knife", -1, 15, new Object[]{
"M",
'M', food,
}));
}
KnowledgeListMF.meatStripR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.generic_meat_strip_uncooked), "", chopping, "knife", -1, 5, new Object[]{
"M",
'M', FoodListMF.generic_meat_uncooked,
});
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.generic_meat_strip_cooked), "", chopping, "knife", -1, 5, new Object[]{
"M",
'M', FoodListMF.generic_meat_cooked,
});
KnowledgeListMF.meatHunkR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.generic_meat_chunk_uncooked), "", chopping, "knife", -1, 5, new Object[]{
"M",
'M', FoodListMF.generic_meat_strip_uncooked,
});
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.generic_meat_chunk_cooked), "", chopping, "knife", -1, 5, new Object[]{
"M",
'M', FoodListMF.generic_meat_strip_cooked,
});
KnowledgeListMF.gutsRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.guts), "", chopping, "knife", 1, 8, new Object[]{
"MMMM",
'M', Items.rotten_flesh,
});
KnowledgeListMF.stewRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.stew), "", chopping, "knife", -1, 15, new Object[]{
"M",
"B",
'M', FoodListMF.generic_meat_chunk_cooked,
'B', Items.bowl
});
KnowledgeListMF.jerkyRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.jerky, 1), "jerky", chopping, "knife", 2, 20, new Object[]{
"S",
"M",
'S', FoodListMF.salt,
'M', FoodListMF.generic_meat_strip_cooked,
});
KnowledgeListMF.saussageR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.saussage_raw, 4), "saussage", chopping, "knife", 2, 30, new Object[]{
" G ",
"MMM",
"BES",
'G', FoodListMF.guts,
'E', Items.egg,
'S', FoodListMF.salt,
'B', FoodListMF.breadcrumbs,
'M', FoodListMF.generic_meat_mince_uncooked,
});
KnowledgeListMF.meatPieRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.pie_meat_uncooked), "meatpie", chopping, "knife", 2, 150, new Object[]{
" P ",
"MMM",
" P ",
" T ",
'P', FoodListMF.pastry,
'M', FoodListMF.generic_meat_mince_cooked,
'T', FoodListMF.pie_tray,
});
KnowledgeListMF.breadSliceR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.breadSlice, 12), "", "step.cloth", "knife", -1, 10, new Object[]{
"B",
'B', Items.bread,
});
KnowledgeListMF.sandwitchRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.sandwitch_meat), "sandwitch", chopping, "hands", -1, 4, new Object[]{
"B",
"C",
"M",
"B",
'C', FoodListMF.cheese_slice,
'M', FoodListMF.generic_meat_cooked,
'B', FoodListMF.breadSlice
});
KnowledgeListMF.sandwitchBigRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.sandwitch_big), "sandwitchBig", chopping, "knife", 1, 10, new Object[]{
"CSC",
"MBM",
'S', FoodListMF.salt,
'C', FoodListMF.cheese_slice,
'M', FoodListMF.generic_meat_cooked,
'B', Items.bread
});
KnowledgeListMF.shepardRecipe =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.pie_shepard_uncooked), "shepardpie", chopping, "knife", 3, 200, new Object[]{
"PFP",
"MMM",
"CFC",
" T ",
'C', Items.carrot,
'P', Items.potato,
'F', FoodListMF.pastry,
'M', FoodListMF.generic_meat_mince_cooked,
'T', FoodListMF.pie_tray,
});
KnowledgeListMF.appleR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.pie_apple_uncooked), "applepie", chopping, "knife", 2, 120, new Object[]{
"SPS",
"MMM",
"SPS",
" T ",
'S', FoodListMF.sugarpot,
'P', FoodListMF.pastry,
'M', Items.apple,
'T', FoodListMF.pie_tray,
});
KnowledgeListMF.pumpPieR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.pie_pumpkin_uncooked), "bread", chopping, "knife", 1, 50, new Object[]{
"SMS",
"SPS",
" T ",
'S', FoodListMF.sugarpot,
'P', FoodListMF.pastry,
'M', Blocks.pumpkin,
'T', FoodListMF.pie_tray,
});
KnowledgeListMF.berryR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.pie_berry_uncooked), "berrypie", chopping, "knife", 2, 100, new Object[]{
"SPS",
"MMM",
"SPS",
" T ",
'S', FoodListMF.sugarpot,
'P', FoodListMF.pastry,
'M', FoodListMF.berries,
'T', FoodListMF.pie_tray,
});
KnowledgeListMF.simpCakeR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.cake_simple_raw), "bread", mixing, "spoon", -1, 15, new Object[]{
"MMM",
"SES",
"FFF",
" T ",
'F', FoodListMF.flour,
'E', Items.egg,
'M', FoodListMF.jug_milk,
'S', FoodListMF.sugarpot,
'T', FoodListMF.cake_tin,
});
KnowledgeListMF.cakeR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.cake_raw), "cake", mixing, "spoon", -1, 20, new Object[]{
"SMS",
"SES",
"FFF",
" T ",
'F', FoodListMF.flour,
'E', Items.egg,
'M', FoodListMF.jug_milk,
'S', FoodListMF.sugarpot,
'T', FoodListMF.cake_tin,
});
KnowledgeListMF.carrotCakeR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.cake_carrot_raw), "carrotcake", mixing, "spoon", -1, 25, new Object[]{
"SMS",
"SES",
"CCC",
"FTF",
'C', Items.carrot,
'F', FoodListMF.flour,
'E', Items.egg,
'M', FoodListMF.jug_milk,
'S', FoodListMF.sugarpot,
'T', FoodListMF.cake_tin,
});
KnowledgeListMF.chocoCakeR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.cake_choc_raw), "chococake", mixing, "spoon", -1, 25, new Object[]{
"SMS",
"SES",
"CCC",
"FTF",
'C', FoodListMF.chocolate,
'F', FoodListMF.flour,
'E', Items.egg,
'M', FoodListMF.jug_milk,
'S', FoodListMF.sugarpot,
'T', FoodListMF.cake_tin,
});
KnowledgeListMF.bfCakeR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.cake_bf_raw), "bfcake", mixing, "spoon", -1, 30, new Object[]{
"SMMS",
"SEES",
"CBBC",
"FTFF",
'B', FoodListMF.berriesJuicy,
'C', FoodListMF.chocolate,
'F', FoodListMF.flour,
'E', Items.egg,
'M', FoodListMF.jug_milk,
'S', FoodListMF.sugarpot,
'T', FoodListMF.cake_tin,
});
KnowledgeListMF.simpCakeOut =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(Items.cake), "bread", basic, "knife", -1, 10, new Object[]{
"I",
"R",
'I', FoodListMF.icing,
'R', FoodListMF.cake_simple_uniced,
});
KnowledgeListMF.cakeI =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(BlockListMF.cake_vanilla), "cake", basic, "knife", -1, 60, new Object[]{
"III",
" R ",
'I', FoodListMF.icing,
'R', FoodListMF.cake_uniced,
});
KnowledgeListMF.carrotCakeI =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(BlockListMF.cake_carrot), "carrotcake", basic, "knife", -1, 60, new Object[]{
"III",
" R ",
'I', FoodListMF.icing,
'R', FoodListMF.cake_carrot_uniced,
});
KnowledgeListMF.chocoCakeI =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(BlockListMF.cake_chocolate), "chococake", basic, "knife", -1, 60, new Object[]{
"ICI",
" R ",
'C', FoodListMF.chocolate,
'I', FoodListMF.icing,
'R', FoodListMF.cake_choc_uniced,
});
KnowledgeListMF.bfCakeI =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(BlockListMF.cake_bf), "bfcake", basic, "knife", -1, 100, new Object[]{
"BBB",
"III",
"CRC",
'C', FoodListMF.chocolate,
'B', FoodListMF.berries,
'I', FoodListMF.icing,
'R', FoodListMF.cake_bf_uniced,
});
KnowledgeListMF.cheeserollR =
MineFantasyAPI.addCarpenterRecipe(provisioning, new ItemStack(FoodListMF.cheese_roll), "cheeseroll", chopping, "knife", 1, 30, new Object[]{
"C",
"R",
'C', FoodListMF.cheese_slice,
'R', FoodListMF.breadroll,
});
}
private static void addOreD(String list, String mfList)
{
for(ItemStack stack: OreDictionary.getOres(list))
{
OreDictionary.registerOre(mfList, stack);
}
}
private static int getSize(ItemStack food)
{
if(food != null && food.getItem() instanceof ItemFood)
{
int feed = ((ItemFood)food.getItem()).func_150905_g(food);
return Math.max(1, feed-1);
}
return 1;
}
private static void addMisc()
{
//Fletching
KnowledgeListMF.fletchingR =
MineFantasyAPI.addCarpenterRecipe(artisanry, new ItemStack(ComponentListMF.fletching, 8), "arrows", chopping, 4, new Object[]
{
"PFP",
" P ",
'F', Items.feather,
'P', Items.paper,
});
//BOMBS
KnowledgeListMF.bombCaseCeramicR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.bomb_casing_uncooked, 2), "bombCeramic", basic, 2, new Object[]
{
" C ",
"C C",
" C ",
'C', Items.clay_ball,
});
KnowledgeListMF.mineCaseCeramicR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.mine_casing_uncooked), "mineCeramic", basic, 2, new Object[]
{
" P ",
"C C",
" C ",
'P', Blocks.stone_pressure_plate,
'C', Items.clay_ball,
});
KnowledgeListMF.bombCaseCrystalR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.bomb_casing_crystal), "bombCrystal", basic, 10, new Object[]
{
" D ",
"R R",
" B ",
'B', Items.glass_bottle,
'D', ComponentListMF.diamond_shards,
'R', Items.redstone
});
KnowledgeListMF.mineCaseCrystalR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.mine_casing_crystal), "mineCrystal", basic, 10, new Object[]
{
" P ",
"RDR",
" B ",
'P', Blocks.heavy_weighted_pressure_plate,
'B', Items.glass_bottle,
'D', ComponentListMF.diamond_shards,
'R', Items.redstone
});
Salvage.addSalvage(ComponentListMF.bomb_casing_uncooked, new ItemStack(Items.clay_ball, 2));
Salvage.addSalvage(ComponentListMF.mine_casing_uncooked, new ItemStack(Items.clay_ball, 3), Blocks.stone_pressure_plate);
Salvage.addSalvage(ComponentListMF.bomb_casing_crystal, Items.glass_bottle, ComponentListMF.diamond_shards, new ItemStack(Items.redstone, 2));
Salvage.addSalvage(ComponentListMF.mine_casing_crystal, Blocks.heavy_weighted_pressure_plate, Items.glass_bottle, ComponentListMF.diamond_shards, new ItemStack(Items.redstone, 2));
KnowledgeListMF.bombFuseR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.bomb_fuse, 8), "bombs", basic, 4, new Object[]
{
"R",
"C",
"S",
'S', ComponentListMF.thread,
'C', ComponentListMF.coalDust,
'R', Items.redstone,
});
KnowledgeListMF.longFuseR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.bomb_fuse_long), "bombs", basic, 1, new Object[]
{
"F",
"R",
"F",
'F', ComponentListMF.bomb_fuse,
'R', Items.redstone,
});
Salvage.addSalvage(ComponentListMF.bomb_fuse_long, new ItemStack(ComponentListMF.bomb_fuse, 2), Items.redstone);
KnowledgeListMF.thatchR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.thatch), "", "dig.grass", "hands", -1, 1 , new Object[]
{
"HH",
"HH",
'H', new ItemStack(Blocks.tallgrass, 1, 1)
});
KnowledgeListMF.thatchStairR =
MineFantasyAPI.addCarpenterRecipe(construction, new ItemStack(BlockListMF.thatch_stair), "", "dig.grass", "hands", -1, 1 , new Object[]
{
"H ",
"HH",
'H', new ItemStack(Blocks.tallgrass, 1, 1)
});
Salvage.addSalvage(BlockListMF.thatch_stair, new ItemStack(Blocks.tallgrass, 3, 1));
Salvage.addSalvage(BlockListMF.thatch, new ItemStack(Blocks.tallgrass, 4, 1));
KnowledgeListMF.apronRecipe =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ArmourListMF.leatherapron), "", sewing, "hands", -1, 1, new Object[]
{
"LCL",
" L ",
'L', Items.leather,
'C', Items.coal,
});
Salvage.addSalvage(ArmourListMF.leatherapron, new ItemStack(Items.leather, 3), Items.coal);
KnowledgeListMF.hideHelmR =
MineFantasyAPI.addCarpenterRecipe(null, ArmourListMF.armour(ArmourListMF.leather, 0, 0), "", sewing, "hands", -1, 1, new Object[]
{
"H",
"C",
"H",
'H', ComponentListMF.hideSmall,
'C', Blocks.wool,
});
KnowledgeListMF.hideChestR =
MineFantasyAPI.addCarpenterRecipe(null, ArmourListMF.armour(ArmourListMF.leather, 0, 1), "", sewing, "hands", -1, 1, new Object[]
{
"H",
"C",
'H', ComponentListMF.hideLarge,
'C', Blocks.wool,
});
KnowledgeListMF.hideLegsR =
MineFantasyAPI.addCarpenterRecipe(null, ArmourListMF.armour(ArmourListMF.leather, 0, 2), "", sewing, "hands", -1, 1, new Object[]
{
"H",
"C",
'H', ComponentListMF.hideMedium,
'C', Blocks.wool,
});
KnowledgeListMF.hideBootsR =
MineFantasyAPI.addCarpenterRecipe(null, ArmourListMF.armour(ArmourListMF.leather, 0, 3), "", sewing, "hands", -1, 1, new Object[]
{
"H",
"C",
'H', ComponentListMF.hideSmall,
'C', Blocks.wool,
});
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 0, 0), new ItemStack(ComponentListMF.hideSmall, 2), Blocks.wool);
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 0, 1), ComponentListMF.hideLarge, Blocks.wool);
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 0, 2), ComponentListMF.hideMedium, Blocks.wool);
Salvage.addSalvage(ArmourListMF.armourItem(ArmourListMF.leather, 0, 3), ComponentListMF.hideSmall, Blocks.wool);
}
public static void addCrossbows()
{
//CROSSBOWS
KnowledgeListMF.crossHandleWoodR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.crossbow_handle_wood), "crossShafts", nailHammer, "hammer", 2, 150, new Object[]
{
"N N",
"PP ",
" P ",
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
'N', ComponentListMF.nail
});
KnowledgeListMF.crossStockWoodR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.crossbow_stock_wood), "crossShafts", nailHammer, "hammer", 2, 300, new Object[]
{
"NN N",
"PPPP",
" PPP",
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
'N', ComponentListMF.nail
});
KnowledgeListMF.crossStockIronR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.crossbow_stock_iron), "crossShaftAdvanced", spanner, "spanner", 2, 300, new Object[]
{
" BBB",
"BOGG",
"SWSS",
" ",
'O', Blocks.obsidian,
'G', ComponentListMF.tungsten_gears,
'W', ComponentListMF.crossbow_stock_wood,
'S', ComponentListMF.iron_strut,
'B', ComponentListMF.bolt,
});
KnowledgeListMF.crossHeadLightR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.cross_arms_light), "crossHeads", nailHammer, "hammer", 2, 200, new Object[]
{
"PPP",
"NSN",
" P ",
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
'N', ComponentListMF.nail,
'S', Items.string,
});
KnowledgeListMF.crossHeadMediumR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.cross_arms_basic), "crossHeads", nailHammer, "hammer", 2, 250, new Object[]
{
"NNN",
"PAP",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
'A', ComponentListMF.cross_arms_light,
});
KnowledgeListMF.crossHeadHeavyR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.cross_arms_heavy), "crossHeads", nailHammer, "hammer", 2, 350, new Object[]
{
"NNN",
"PAP",
'N', ComponentListMF.nail,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
'A', ComponentListMF.cross_arms_basic,
});
KnowledgeListMF.crossHeadAdvancedR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.cross_arms_advanced), "crossHeadAdvanced", nailHammer, "hammer", 2, 350, new Object[]
{
"NRN",
"RGR",
" A ",
'G', ComponentListMF.tungsten_gears,
'N', ComponentListMF.nail,
'R', ComponentListMF.steel_tube,
'A', ComponentListMF.cross_arms_basic,
});
KnowledgeListMF.crossAmmoR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.cross_ammo), "crossAmmo", nailHammer, "hammer", 2, 200, new Object[]
{
"NNN",
"P P",
"PGP",
"PPP",
'G', ComponentListMF.tungsten_gears,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
'N', ComponentListMF.nail,
});
KnowledgeListMF.crossScopeR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.cross_scope), "crossScope", spanner, "spanner", 0, 150, new Object[]
{
"BSB",
"GP ",
'G', ComponentListMF.tungsten_gears,
'S', ToolListMF.spyglass,
'P', ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"),
'B', ComponentListMF.bolt,
});
Salvage.addSalvage(ComponentListMF.cross_arms_light, new ItemStack(ComponentListMF.nail, 2), Items.string, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 4));
Salvage.addSalvage(ComponentListMF.cross_arms_basic, new ItemStack(ComponentListMF.nail, 3), ComponentListMF.cross_arms_light, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 2));
Salvage.addSalvage(ComponentListMF.cross_arms_heavy, new ItemStack(ComponentListMF.nail, 3), ComponentListMF.cross_arms_basic, new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 2));
Salvage.addSalvage(ComponentListMF.cross_arms_advanced, ComponentListMF.tungsten_gears, new ItemStack(ComponentListMF.nail, 2), ComponentListMF.cross_arms_basic, new ItemStack(ComponentListMF.steel_tube, 3));
Salvage.addSalvage(ComponentListMF.cross_scope, ComponentListMF.tungsten_gears, ToolListMF.spyglass, new ItemStack(ComponentListMF.bolt, 2), ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem());
Salvage.addSalvage(ComponentListMF.cross_ammo, ComponentListMF.tungsten_gears, new ItemStack(ComponentListMF.nail, 3), new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 7));
Salvage.addSalvage(ComponentListMF.crossbow_handle_wood, new ItemStack(ComponentListMF.nail, 2), new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 3));
Salvage.addSalvage(ComponentListMF.crossbow_stock_wood, new ItemStack(ComponentListMF.nail, 3), new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood").getItem(), 7));
Salvage.addSalvage(ComponentListMF.crossbow_stock_iron, new ItemStack(ComponentListMF.tungsten_gears, 2), Blocks.obsidian, new ItemStack(ComponentListMF.bolt, 4), new ItemStack(ComponentListMF.iron_strut, 3), ComponentListMF.crossbow_stock_wood);
}
private static void addEngineering()
{
addCrossbows();
KnowledgeListMF.bombBenchCraft =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(BlockListMF.bombBench), "bombs", spanner, "spanner", 0, 150, new Object[]
{
"BFB",
"BCB",
'B', ComponentListMF.bolt,
'F', ComponentListMF.iron_frame,
'C', BlockListMF.carpenter,
});
KnowledgeListMF.bombPressCraft =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(BlockListMF.bombPress), "bpress", spanner, "spanner", 0, 200, new Object[]
{
"BFB",
"GGL",
"SPS",
'S', ComponentListMF.iron_strut,
'B', ComponentListMF.bolt,
'F', ComponentListMF.iron_frame,
'L', Blocks.lever,
'P', new ItemStack(ToolListMF.spanner, 1, 0),
'G', ComponentListMF.bronze_gears,
});
KnowledgeListMF.crossBenchCraft =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(BlockListMF.crossbowBench), "crossbows", spanner, "spanner", 0, 200, new Object[]
{
"PSP",
"NCN",
'P', ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"),
'N', ComponentListMF.nail,
'S', Items.string,
'C', BlockListMF.carpenter,
});
KnowledgeListMF.engTannerR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(BlockListMF.engTanner), "engTanner", spanner, "spanner", 0, 300, new Object[]
{
"BLB",
"SPS",
"GGG",
"SFS",
'S', ComponentListMF.iron_strut,
'B', ComponentListMF.bolt,
'F', ComponentListMF.iron_frame,
'L', Blocks.lever,
'P', new ItemStack(CustomToolListMF.standard_knife, 1, 0),
'G', ComponentListMF.bronze_gears,
});
ItemStack blackPlate = ComponentListMF.plate.createComm("blackSteel");
KnowledgeListMF.advancedForgeR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(BlockListMF.forge_metal), "advforge", spanner, "spanner", 1, 400, new Object[]
{
" T ",
"FRRF",
"PPPP",
"BBBB",
'B', ComponentListMF.bolt,
'F', ComponentListMF.iron_frame,
'T', ToolListMF.engin_anvil_tools,
'P', blackPlate,
'R', Blocks.redstone_block,
});
ItemStack steelPlate = ComponentListMF.plate.createComm("steel");
KnowledgeListMF.autoCrucibleR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(BlockListMF.crucibleauto), "advcrucible", spanner, "spanner", 1, 200, new Object[]
{
" T ",
"PCP",
"PGP",
"BBB",
'B', ComponentListMF.bolt,
'C', BlockListMF.crucibleadv,
'G', ComponentListMF.tungsten_gears,
'T', ToolListMF.engin_anvil_tools,
'P', steelPlate
});
KnowledgeListMF.spyglassR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ToolListMF.spyglass), "spyglass", spanner, "spanner", 0, 300, new Object[]
{
" T ",
"BCB",
"GPG",
'C', ComponentListMF.bronze_gears,
'G', Blocks.glass,
'B', ComponentListMF.bolt,
'T', ToolListMF.engin_anvil_tools,
'P', ComponentListMF.steel_tube,
});
KnowledgeListMF.syringeR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ToolListMF.syringe_empty), "syringe", spanner, "spanner", 0, 200, new Object[]
{
"E",
"T",
"B",
"N",
'E', ToolListMF.engin_anvil_tools,
'T', ComponentListMF.steel_tube,
'B', Items.glass_bottle,
'N', new ItemStack(CustomToolListMF.standard_needle),
});
KnowledgeListMF.parachuteR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ToolListMF.parachute), "parachute", sewing, "needle", 1, 350, new Object[]
{
"TTT",
"CCC",
"BEB",
"BLB",
'E', ToolListMF.engin_anvil_tools,
'T', ComponentListMF.thread,
'B', ComponentListMF.leather_strip,
'L', Items.leather,
'C', Blocks.wool,
});
KnowledgeListMF.cogShaftR =
MineFantasyAPI.addCarpenterRecipe(engineering, new ItemStack(ComponentListMF.cogwork_shaft), "cogArmour", spanner, "spanner", 1, 150, new Object[]
{
"BPB",
"SGS",
"BFB",
'P', Blocks.piston,
'G', ComponentListMF.tungsten_gears,
'B', ComponentListMF.bolt,
'F', ComponentListMF.iron_frame,
'S', ComponentListMF.iron_strut,
});
Salvage.addSalvage(ComponentListMF.cogwork_shaft, new ItemStack(ComponentListMF.iron_strut, 2), new ItemStack(ComponentListMF.bolt, 4), ComponentListMF.iron_frame, Blocks.piston, ComponentListMF.tungsten_gears);
Salvage.addSalvage(BlockListMF.crucibleauto, new ItemStack(ComponentListMF.bolt, 3), ComponentListMF.tungsten_gears, BlockListMF.crucibleadv, steelPlate, steelPlate, steelPlate, steelPlate);
Salvage.addSalvage(BlockListMF.bombBench, new ItemStack(ComponentListMF.bolt, 4), ComponentListMF.iron_frame, BlockListMF.carpenter);
Salvage.addSalvage(BlockListMF.crossbowBench, new ItemStack(ComponentListMF.nail, 2), new ItemStack(((ItemComponentMF)ComponentListMF.plank).construct("OakWood").getItem(), 2), Items.string, BlockListMF.carpenter);
Salvage.addSalvage(BlockListMF.bombPress, new ItemStack(ComponentListMF.iron_strut, 2), new ItemStack(ComponentListMF.bolt, 2), new ItemStack(ComponentListMF.bronze_gears, 2), Blocks.lever, ComponentListMF.iron_frame, ToolListMF.spanner);
Salvage.addSalvage(BlockListMF.engTanner, new ItemStack(ComponentListMF.iron_strut, 4), new ItemStack(ComponentListMF.bolt, 2), new ItemStack(ComponentListMF.bronze_gears, 3), CustomToolListMF.standard_needle, Blocks.lever, ComponentListMF.iron_frame);
Salvage.addSalvage(BlockListMF.forge_metal, new ItemStack(ComponentListMF.bolt, 4), blackPlate, blackPlate, blackPlate, blackPlate, new ItemStack(ComponentListMF.iron_frame, 2), new ItemStack(Blocks.redstone_block, 2));
Salvage.addSalvage(ToolListMF.spyglass, new ItemStack(ComponentListMF.bolt, 2), new ItemStack(Blocks.glass, 2), ComponentListMF.steel_tube, ComponentListMF.bronze_gears);
Salvage.addSalvage(ToolListMF.syringe_empty, Items.glass_bottle, CustomToolListMF.standard_needle, ComponentListMF.steel_tube);
Salvage.addSalvage(ToolListMF.parachute, new ItemStack(ComponentListMF.thread, 3), new ItemStack(Blocks.wool, 3), new ItemStack(ComponentListMF.leather_strip, 4), Items.leather);
}
private static void addNonPrimitiveStone()
{
KnowledgeListMF.stoneKnifeR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.knifeStone), "", primitive, "hands", -1, 4, new Object[]
{
"R",
"R",
"S",
'R', Blocks.cobblestone,
'S', ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"),
});
KnowledgeListMF.stoneHammerR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.hammerStone), "", primitive, "hands", -1, 4, new Object[]
{
"R",
"S",
'R', Blocks.cobblestone,
'S', ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"),
});
KnowledgeListMF.stoneTongsR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.tongsStone), "", primitive, "hands", -1, 4, new Object[]
{
"R ",
"SR",
'R', Blocks.cobblestone,
'S', ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"),
});
KnowledgeListMF.boneNeedleR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.needleBone), "", primitive, "hands", -1, 4, new Object[]
{
"B",
'B', Items.bone,
});
Salvage.addSalvage(ToolListMF.knifeStone, new ItemStack(Blocks.cobblestone, 2), ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"));
Salvage.addSalvage(ToolListMF.hammerStone, Blocks.cobblestone, ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"));
Salvage.addSalvage(ToolListMF.tongsStone, new ItemStack(Blocks.cobblestone, 2), ((ItemComponentMF)ComponentListMF.plank).construct("OakWood"));
Salvage.addSalvage(ToolListMF.needleBone, Items.bone);
}
private static void addPrimitive()
{
KnowledgeListMF.stonePickR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.pickStone), "", primitive, "hands", -1, 5, new Object[]
{
"RVR",
" S ",
" S ",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneAxeR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.axeStone), "", primitive, "hands", -1, 5, new Object[]
{
"RV",
"RS",
" S",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneSpadeR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.spadeStone), "", primitive, "hands", -1, 5, new Object[]
{
"VR",
" S",
" S",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneHoeR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.hoeStone), "", primitive, "hands", -1, 5, new Object[]
{
"RV",
" S",
" S",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneSwordR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.swordStone), "", primitive, "hands", -1, 8, new Object[]
{
"R ",
"R ",
"SV",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneWarR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.waraxeStone), "", primitive, "hands", -1, 8, new Object[]
{
"VRV",
"RS",
" S",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneMaceR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.maceStone), "", primitive, "hands", -1, 8, new Object[]
{
" V ",
"RSR",
" S ",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneSpearR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.spearStone), "", primitive, "hands", -1, 8, new Object[]
{
"R",
"V",
"S",
"S",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneKnifeR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.knifeStone), "", primitive, "hands", -1, 4, new Object[]
{
"R ",
"SV",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneHammerR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.hammerStone), "", primitive, "hands", -1, 4, new Object[]
{
"R",
"V",
"S",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.stoneTongsR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.tongsStone), "", primitive, "hands", -1, 4, new Object[]
{
" R",
"SV",
'R', ComponentListMF.sharp_rock,
'V', ComponentListMF.vine,
'S', Items.stick
});
KnowledgeListMF.boneNeedleR =
MineFantasyAPI.addCarpenterRecipe(null, new ItemStack(ToolListMF.needleBone), "", primitive, "hands", -1, 4, new Object[]
{
"B",
'B', Items.bone,
});
Salvage.addSalvage(ToolListMF.pickStone, new ItemStack(ComponentListMF.sharp_rock, 2), new ItemStack(Items.stick, 2), ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.axeStone, new ItemStack(ComponentListMF.sharp_rock, 2), new ItemStack(Items.stick, 2), ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.spadeStone, ComponentListMF.sharp_rock, new ItemStack(Items.stick, 2), ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.hoeStone, ComponentListMF.sharp_rock, new ItemStack(Items.stick, 2), ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.swordStone, Items.stick, new ItemStack(ComponentListMF.sharp_rock, 2), ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.waraxeStone, new ItemStack(ComponentListMF.sharp_rock, 2), new ItemStack(Items.stick, 2), new ItemStack(ComponentListMF.vine, 2));
Salvage.addSalvage(ToolListMF.maceStone, new ItemStack(ComponentListMF.sharp_rock, 2), new ItemStack(Items.stick, 2), ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.spearStone, ComponentListMF.sharp_rock, new ItemStack(Items.stick, 2), ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.knifeStone, ComponentListMF.sharp_rock, Items.stick, ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.hammerStone, ComponentListMF.sharp_rock, Items.stick, ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.tongsStone, ComponentListMF.sharp_rock, Items.stick, ComponentListMF.vine);
Salvage.addSalvage(ToolListMF.needleBone, Items.bone);
}
public static void initTierWood()
{
String basic = CarpenterRecipes.basic;
ArrayList<CustomMaterial> wood = CustomMaterial.getList("wood");
Iterator iteratorWood = wood.iterator();
while(iteratorWood.hasNext())
{
CustomMaterial material = (CustomMaterial) iteratorWood.next();
float time = material.hardness*4;
ItemStack plank = ((ItemComponentMF) ComponentListMF.plank).construct(material.name);
KnowledgeListMF.spoonR.add(
MineFantasyAPI.addCarpenterRecipe(artisanry, CustomToolListMF.standard_spoon.construct(material.name), "", basic, "hands", -1, 1+(int)(1*time), new Object[]{
"W",
"S",
'W', plank,
'S', Items.stick
})
);
Salvage.addSalvage(CustomToolListMF.standard_spoon.construct(material.name), plank, Items.stick);
KnowledgeListMF.malletR.add(
MineFantasyAPI.addCarpenterRecipe(artisanry, CustomToolListMF.standard_mallet.construct(material.name), "", basic, "hands", -1, 1+(int)(2*time), new Object[]{
"WW",
" S",
'W', plank,
'S', Items.stick
})
);
Salvage.addSalvage(CustomToolListMF.standard_mallet.construct(material.name), plank, plank, Items.stick);
if(material.tier == 1)
{
KnowledgeListMF.refinedPlankR.add(
MineFantasyAPI.addCarpenterRecipe(construction, ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood"), "", basic, "hands", -1, 1 , new Object[]
{
"O",
"P",
'O', ComponentListMF.plant_oil,
'P', ((ItemComponentMF)ComponentListMF.plank).construct(material.name)
}));
KnowledgeListMF.easyPaintPlank.add(
MineFantasyAPI.addCarpenterRecipe(construction, ((ItemComponentMF)ComponentListMF.plank).construct("RefinedWood", 4), "paint_brush", sewing, "brush", -1, 2 , new Object[]
{
" O ",
"PPPP",
'O', ComponentListMF.plant_oil,
'P', ((ItemComponentMF)ComponentListMF.plank).construct(material.name)
}));
}
}
}
static void tryAddSawPlanks(ItemStack planks, CustomMaterial material)
{
String sub = material.name.substring(0, material.name.length()-4).toLowerCase();
if(planks.getUnlocalizedName().toLowerCase().contains(sub))
{
addSawPlanks(planks, material);
}
}
static void addSawPlanks(ItemStack planks, CustomMaterial material)
{
MineFantasyAPI.addCarpenterRecipe(construction, ((ItemComponentMF)(ComponentListMF.plank)).construct(material.name, 4), "commodities", sawing, "saw", -1, 10 , new Object[]
{
"P",
'P', planks.copy()
});
}
}