2014-05-02 21:31:20 +02:00
/*******************************************************************************
2014-08-07 08:29:25 +02:00
* Copyright (c) 2011-2014 SirSengir.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the GNU Lesser Public License v3
* which accompanies this distribution, and is available at
2014-08-07 02:56:58 -07:00
* http://www.gnu.org/licenses/lgpl-3.0.txt
2014-05-02 21:31:20 +02:00
*
2014-08-07 08:29:25 +02:00
* Various Contributors including, but not limited to:
* SirSengir (original work), CovertJaguar, Player, Binnie, MysteriousAges
2014-05-02 21:31:20 +02:00
******************************************************************************/
package forestry.plugins ;
import java.util.ArrayList ;
import net.minecraft.block.material.Material ;
import net.minecraft.init.Blocks ;
import net.minecraft.init.Items ;
import net.minecraft.item.ItemStack ;
import cpw.mods.fml.common.network.IGuiHandler ;
import forestry.api.core.PluginInfo ;
import forestry.api.recipes.ICraftingProvider ;
import forestry.api.recipes.RecipeManagers ;
import forestry.core.GameMode ;
import forestry.core.config.Config ;
import forestry.core.config.Defaults ;
import forestry.core.config.ForestryBlock ;
import forestry.core.config.ForestryItem ;
import forestry.core.gadgets.BlockBase ;
import forestry.core.gadgets.MachineDefinition ;
import forestry.core.gadgets.MachineNBTDefinition ;
import forestry.core.interfaces.IOreDictionaryHandler ;
import forestry.core.interfaces.ISaveEventHandler ;
import forestry.core.items.ItemForestryBlock ;
import forestry.core.items.ItemNBTTile ;
import forestry.core.proxy.Proxies ;
import forestry.core.utils.LiquidHelper ;
import forestry.core.utils.RecipeUtil ;
import forestry.core.utils.ShapedRecipeCustom ;
import forestry.factory.GuiHandlerFactory ;
import forestry.factory.gadgets.MachineBottler ;
import forestry.factory.gadgets.MachineCarpenter ;
import forestry.factory.gadgets.MachineCarpenter.RecipeManager ;
import forestry.factory.gadgets.MachineCentrifuge ;
import forestry.factory.gadgets.MachineFabricator ;
import forestry.factory.gadgets.MachineFermenter ;
import forestry.factory.gadgets.MachineMoistener ;
import forestry.factory.gadgets.MachineRaintank ;
import forestry.factory.gadgets.MachineSqueezer ;
import forestry.factory.gadgets.MachineStill ;
import forestry.factory.gadgets.MillRainmaker ;
import forestry.factory.gadgets.TileWorktable ;
import forestry.factory.recipes.CraftGuideIntegration ;
@PluginInfo ( pluginID = "Factory" , name = "Factory" , author = "SirSengir" , url = Defaults . URL , description = "Adds a wide variety of machines to craft, produce and process products." )
public class PluginFactory extends NativePlugin {
public static MachineDefinition definitionBottler ;
public static MachineDefinition definitionCarpenter ;
public static MachineDefinition definitionCentrifuge ;
public static MachineDefinition definitionFermenter ;
public static MachineDefinition definitionMoistener ;
public static MachineDefinition definitionSqueezer ;
public static MachineDefinition definitionStill ;
public static MachineDefinition definitionRainmaker ;
public static MachineDefinition definitionFabricator ;
public static MachineDefinition definitionRaintank ;
public static MachineDefinition definitionWorktable ;
@Override
public boolean isAvailable () {
return ! Config . disableFactory ;
}
@Override
public void preInit () {
super . preInit ();
RecipeManagers . craftingProviders = new ArrayList < ICraftingProvider > ();
// Init bottler manager
RecipeManagers . craftingProviders . add ( RecipeManagers . bottlerManager = new MachineBottler . RecipeManager ());
// Init carpenter manager
RecipeManagers . craftingProviders . add ( RecipeManagers . carpenterManager = new MachineCarpenter . RecipeManager ());
// Init centrifuge manager
RecipeManagers . craftingProviders . add ( RecipeManagers . centrifugeManager = new MachineCentrifuge . RecipeManager ());
// Init fabricator manager
RecipeManagers . craftingProviders . add ( RecipeManagers . fabricatorManager = new MachineFabricator . RecipeManager ());
// Init fermenter manager
RecipeManagers . craftingProviders . add ( RecipeManagers . fermenterManager = new MachineFermenter . RecipeManager ());
// Init moistener manager
RecipeManagers . craftingProviders . add ( RecipeManagers . moistenerManager = new MachineMoistener . RecipeManager ());
// Init squeezer manager
RecipeManagers . craftingProviders . add ( RecipeManagers . squeezerManager = new MachineSqueezer . RecipeManager ());
// Init still manager
RecipeManagers . craftingProviders . add ( RecipeManagers . stillManager = new MachineStill . RecipeManager ());
ForestryBlock . factoryTESR = new BlockBase ( Material . iron , true );
ForestryBlock . factoryTESR . setBlockName ( "for.factory" );
Proxies . common . registerBlock ( ForestryBlock . factoryTESR , ItemForestryBlock . class );
definitionBottler = ForestryBlock . factoryTESR . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_BOTTLER_META , "forestry.Bottler" , MachineBottler . class ,
Proxies . render . getRenderDefaultMachine ( Defaults . TEXTURE_PATH_BLOCKS + "/bottler_" ), ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryTESR , 1 , Defaults . DEFINITION_BOTTLER_META ),
"X#X" ,
"#Y#" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , ForestryItem . canEmpty ,
'Y' , ForestryItem . sturdyCasing )));
definitionCarpenter = ForestryBlock . factoryTESR . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_CARPENTER_META , "forestry.Carpenter" , MachineCarpenter . class ,
Proxies . render . getRenderDefaultMachine ( Defaults . TEXTURE_PATH_BLOCKS + "/carpenter_" ), ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryTESR , 1 , Defaults . DEFINITION_CARPENTER_META ),
"X#X" ,
"XYX" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , "ingotBronze" ,
'Y' , ForestryItem . sturdyCasing )));
definitionCentrifuge = ForestryBlock . factoryTESR . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_CENTRIFUGE_META , "forestry.Centrifuge" , MachineCentrifuge . class ,
Proxies . render . getRenderDefaultMachine ( Defaults . TEXTURE_PATH_BLOCKS + "/centrifuge_" ), ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryTESR , 1 , Defaults . DEFINITION_CENTRIFUGE_META ),
"X#X" ,
"XYX" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , "ingotCopper" ,
'Y' , ForestryItem . sturdyCasing . getItemStack ())));
definitionFermenter = ForestryBlock . factoryTESR . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_FERMENTER_META , "forestry.Fermenter" , MachineFermenter . class ,
Proxies . render . getRenderDefaultMachine ( Defaults . TEXTURE_PATH_BLOCKS + "/fermenter_" ), ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryTESR , 1 , Defaults . DEFINITION_FERMENTER_META ),
"X#X" ,
"#Y#" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , "gearBronze" ,
'Y' , ForestryItem . sturdyCasing )));
definitionMoistener = ForestryBlock . factoryTESR . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_MOISTENER_META , "forestry.Moistener" , MachineMoistener . class ,
Proxies . render . getRenderDefaultMachine ( Defaults . TEXTURE_PATH_BLOCKS + "/moistener_" ), ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryTESR , 1 , Defaults . DEFINITION_MOISTENER_META ),
"X#X" ,
"#Y#" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , "gearCopper" ,
'Y' , ForestryItem . sturdyCasing )));
definitionSqueezer = ForestryBlock . factoryTESR . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_SQUEEZER_META , "forestry.Squeezer" , MachineSqueezer . class ,
Proxies . render . getRenderDefaultMachine ( Defaults . TEXTURE_PATH_BLOCKS + "/squeezer_" ), ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryTESR , 1 , Defaults . DEFINITION_SQUEEZER_META ),
"X#X" ,
"XYX" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , "ingotTin" ,
'Y' , ForestryItem . sturdyCasing . getItemStack ())));
definitionStill = ForestryBlock . factoryTESR . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_STILL_META , "forestry.Still" , MachineStill . class ,
Proxies . render . getRenderDefaultMachine ( Defaults . TEXTURE_PATH_BLOCKS + "/still_" ), ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryTESR , 1 , Defaults . DEFINITION_STILL_META ),
"X#X" ,
"#Y#" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , Items . redstone ,
'Y' , ForestryItem . sturdyCasing )));
definitionRainmaker = ForestryBlock . factoryTESR . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_RAINMAKER_META , "forestry.Rainmaker" , MillRainmaker . class ,
Proxies . render . getRenderMill ( Defaults . TEXTURE_PATH_BLOCKS + "/rainmaker_" ), ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryTESR , 1 , Defaults . DEFINITION_RAINMAKER_META ),
"X#X" ,
"#Y#" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , "gearTin" ,
'Y' , ForestryItem . hardenedCasing )));
ForestryBlock . factoryPlain = new BlockBase ( Material . iron );
ForestryBlock . factoryPlain . setBlockName ( "for.factory2" );
Proxies . common . registerBlock ( ForestryBlock . factoryPlain , ItemNBTTile . class );
definitionFabricator = ForestryBlock . factoryPlain . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_FABRICATOR_META , "forestry.Fabricator" , MachineFabricator . class ,
ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryPlain ,
1 , Defaults . DEFINITION_FABRICATOR_META ),
"X#X" ,
"#Y#" ,
"XZX" ,
'#' , Blocks . glass ,
'X' , Items . gold_ingot ,
'Y' , ForestryItem . sturdyCasing ,
'Z' , Blocks . chest )). setFaces ( 0 , 1 , 2 , 3 , 4 , 4 ));
definitionRaintank = ForestryBlock . factoryPlain . addDefinition ( new MachineDefinition ( Defaults . DEFINITION_RAINTANK_META , "forestry.Raintank" , MachineRaintank . class ,
ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryPlain , 1 , Defaults . DEFINITION_RAINTANK_META ),
"X#X" ,
"XYX" ,
"X#X" ,
'#' , Blocks . glass ,
'X' , Items . iron_ingot ,
'Y' , ForestryItem . sturdyCasing ))
. setFaces ( 0 , 1 , 0 , 0 , 0 , 0 ));
definitionWorktable = ForestryBlock . factoryPlain . addDefinition ( new MachineNBTDefinition ( Defaults . DEFINITION_WORKTABLE_META , "forestry.Worktable" , TileWorktable . class ,
ShapedRecipeCustom . createShapedRecipe ( new ItemStack ( ForestryBlock . factoryPlain , 1 , Defaults . DEFINITION_WORKTABLE_META ),
"B" ,
"W" ,
"C" ,
'B' , Items . book ,
'W' , Blocks . crafting_table ,
'C' , Blocks . chest )). setFaces ( 0 , 1 , 2 , 3 , 4 , 4 ));
}
@Override
public void doInit () {
super . doInit ();
definitionBottler . register ();
definitionCarpenter . register ();
definitionCentrifuge . register ();
definitionFabricator . register ();
definitionFermenter . register ();
definitionMoistener . register ();
definitionRaintank . register ();
definitionSqueezer . register ();
definitionStill . register ();
definitionRainmaker . register ();
definitionWorktable . register ();
}
@Override
public void postInit () {
super . postInit ();
if ( Proxies . common . isModLoaded ( "craftguide" ))
CraftGuideIntegration . register ();
else
Proxies . log . info ( "Skipping CraftGuide integration." );
}
@Override
protected void registerItems () {
}
@Override
protected void registerBackpackItems () {
}
@Override
protected void registerRecipes () {
// / FABRICATOR
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 0 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , "ingotCopper" });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 1 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , "ingotTin" });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 2 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , "ingotBronze" });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 3 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , Items . iron_ingot });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 4 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , Items . gold_ingot });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 5 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , Items . diamond });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 6 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , Blocks . obsidian });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 7 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , Items . blaze_powder });
if ( PluginIC2 . rubber != null )
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 8 ),
new Object [] { " X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , PluginIC2 . rubber });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 9 ), new Object [] {
" X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , Items . emerald });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 10 ),
new Object [] { " X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , "gemApatite" });
RecipeManagers . fabricatorManager . addRecipe ( null , LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 500 ), ForestryItem . tubes . getItemStack ( 4 , 11 ),
new Object [] { " X " , "#X#" , "XXX" , '#' , Items . redstone , 'X' , new ItemStack ( Items . dye , 1 , 4 ) });
String [] dyes = { "dyeBlack" , "dyeRed" , "dyeGreen" , "dyeBrown" , "dyeBlue" , "dyePurple" , "dyeCyan" , "dyeLightGray" , "dyeGray" , "dyePink" , "dyeLime" ,
"dyeYellow" , "dyeLightBlue" , "dyeMagenta" , "dyeOrange" , "dyeWhite" };
if ( ForestryItem . propolis != null )
for ( int i = 0 ; i < 16 ; i ++ ) {
RecipeManagers . fabricatorManager . addRecipe ( ForestryItem . waxCast . getItemStack ( 1 , Defaults . WILDCARD ), LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS ,
Defaults . BUCKET_VOLUME ), new ItemStack ( ForestryBlock . glass , 1 , 15 - i ), new Object [] { "#" , "X" , '#' , dyes [ i ] ,
'X' , ForestryItem . propolis . getItemStack ( 1 , Defaults . WILDCARD ) });
}
// / SQUEEZER
RecipeManagers . squeezerManager . addRecipe ( 10 , new ItemStack [] { new ItemStack ( Items . apple ) }, LiquidHelper . getLiquid ( Defaults . LIQUID_JUICE , GameMode . getGameMode (). getIntegerSetting ( "squeezer.liquid.apple" )),
ForestryItem . mulch . getItemStack (), GameMode . getGameMode (). getIntegerSetting ( "squeezer.mulch.apple" ));
RecipeManagers . squeezerManager . addRecipe ( 10 , new ItemStack [] { new ItemStack ( Items . wheat_seeds ) }, LiquidHelper . getLiquid ( Defaults . LIQUID_SEEDOIL , GameMode
. getGameMode (). getIntegerSetting ( "squeezer.liquid.seed" )));
RecipeManagers . squeezerManager . addRecipe ( 10 , new ItemStack [] { new ItemStack ( Items . pumpkin_seeds ) }, LiquidHelper . getLiquid ( Defaults . LIQUID_SEEDOIL , GameMode
. getGameMode (). getIntegerSetting ( "squeezer.liquid.seed" )));
RecipeManagers . squeezerManager . addRecipe ( 10 , new ItemStack [] { new ItemStack ( Items . melon_seeds ) }, LiquidHelper . getLiquid ( Defaults . LIQUID_SEEDOIL , GameMode
. getGameMode (). getIntegerSetting ( "squeezer.liquid.seed" )));
RecipeManagers . squeezerManager . addRecipe ( 10 , new ItemStack [] { ForestryItem . phosphor . getItemStack ( 2 ), new ItemStack ( Blocks . cobblestone ) },
LiquidHelper . getLiquid ( Defaults . LIQUID_LAVA , 1600 ));
RecipeManagers . squeezerManager . addRecipe ( 10 , new ItemStack [] { new ItemStack ( Blocks . cactus ) }, LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 500 ));
RecipeManagers . squeezerManager . addRecipe ( 10 , new ItemStack [] { new ItemStack ( Items . snowball ), ForestryItem . craftingMaterial . getItemStack ( 4 , 5 ) },
LiquidHelper . getLiquid ( Defaults . LIQUID_ICE , 4000 ));
// STILL
RecipeManagers . stillManager . addRecipe ( Defaults . STILL_DESTILLATION_DURATION , LiquidHelper . getLiquid ( Defaults . LIQUID_BIOMASS ,
Defaults . STILL_DESTILLATION_INPUT ), LiquidHelper . getLiquid ( Defaults . LIQUID_ETHANOL , Defaults . STILL_DESTILLATION_OUTPUT ));
// MOISTENER
RecipeManagers . moistenerManager . addRecipe ( new ItemStack ( Items . wheat_seeds ), new ItemStack ( Blocks . mycelium ), 5000 );
RecipeManagers . moistenerManager . addRecipe ( new ItemStack ( Blocks . cobblestone ), new ItemStack ( Blocks . mossy_cobblestone ), 20000 );
RecipeManagers . moistenerManager . addRecipe ( new ItemStack ( Blocks . stonebrick ), new ItemStack ( Blocks . stonebrick , 1 , 1 ), 20000 );
// FERMENTER
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Blocks . sapling , 1 , 0 ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.sapling" ), Defaults . LIQUID_BIOMASS );
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Blocks . sapling , 1 , 1 ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.sapling" ), Defaults . LIQUID_BIOMASS );
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Blocks . sapling , 1 , 2 ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.sapling" ), Defaults . LIQUID_BIOMASS );
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Blocks . sapling , 1 , 3 ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.sapling" ), Defaults . LIQUID_BIOMASS );
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Blocks . cactus ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.cactus" ), Defaults . LIQUID_BIOMASS );
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Items . wheat ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.wheat" ), Defaults . LIQUID_BIOMASS );
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Items . reeds ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.cane" ), Defaults . LIQUID_BIOMASS );
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Blocks . brown_mushroom ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.mushroom" ), Defaults . LIQUID_BIOMASS );
RecipeUtil . injectLeveledRecipe ( new ItemStack ( Blocks . red_mushroom ), GameMode . getGameMode (). getIntegerSetting ( "fermenter.yield.mushroom" ), Defaults . LIQUID_BIOMASS );
// FABRICATOR
RecipeManagers . fabricatorManager . addSmelting ( new ItemStack ( Blocks . glass ), LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 1000 ), 1000 );
RecipeManagers . fabricatorManager . addSmelting ( new ItemStack ( Blocks . glass_pane ), LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 375 ), 1000 );
RecipeManagers . fabricatorManager . addSmelting ( new ItemStack ( Blocks . sand ), LiquidHelper . getLiquid ( Defaults . LIQUID_GLASS , 1000 ), 3000 );
// / CARPENTER
RecipeManagers . carpenterManager . addRecipe ( 50 , LiquidHelper . getLiquid ( Defaults . LIQUID_SEEDOIL , 250 ), null , ForestryItem . impregnatedCasing . getItemStack (),
new Object [] { "###" , "# #" , "###" , '#' , "logWood" });
RecipeManagers . carpenterManager . addRecipe ( 50 , LiquidHelper . getLiquid ( Defaults . LIQUID_SEEDOIL , 500 ), null , new ItemStack ( ForestryBlock . core , 1 , Defaults . DEFINITION_ESCRITOIRE_META ),
new Object [] { "# " , "###" , "# #" , '#' , "plankWood" });
// RESOURCES
RecipeManagers . carpenterManager . addRecipe ( 10 , LiquidHelper . getLiquid ( Defaults . LIQUID_SEEDOIL , 100 ), null , ForestryItem . stickImpregnated . getItemStack ( 2 ),
new Object [] { "#" , "#" , '#' , "logWood" });
RecipeManagers . carpenterManager . addRecipe ( 5 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 250 ), null , ForestryItem . woodPulp . getItemStack ( 4 ),
new Object [] { "#" , '#' , "logWood" });
RecipeManagers . carpenterManager . addRecipe ( 5 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 250 ), null , new ItemStack ( Items . paper , 1 ), new Object [] { "#" ,
"#" , '#' , "pulpWood" });
RecipeManagers . carpenterManager . addRecipe ( 5 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , new ItemStack ( ForestryBlock . soil , 9 , 0 ),
new Object [] { "###" , "#X#" , "###" , '#' , Blocks . dirt , 'X' , ForestryItem . mulch });
RecipeManagers . carpenterManager . addRecipe ( 5 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , new ItemStack ( ForestryBlock . soil , 8 , 1 ),
new Object [] { "#X#" , "XYX" , "#X#" , '#' , Blocks . dirt , 'X' , Blocks . sand , 'Y' ,
ForestryItem . mulch });
RecipeManagers . carpenterManager . addRecipe ( 75 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 5000 ), null , ForestryItem . hardenedCasing . getItemStack (),
new Object [] { "# #" , " Y " , "# #" , '#' , Items . diamond , 'Y' , ForestryItem . sturdyCasing });
// / CHIPSETS
RecipeManagers . carpenterManager . addRecipe ( 20 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , ForestryItem . circuitboards . getItemStack ( 1 , 0 ),
new Object [] { "R R" , "R#R" , "R R" , '#' , "ingotTin" , 'R' , Items . redstone });
RecipeManagers . carpenterManager . addRecipe ( 40 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , ForestryItem . circuitboards . getItemStack ( 1 , 1 ),
new Object [] { "R#R" , "R#R" , "R#R" , '#' , "ingotBronze" , 'R' , Items . redstone });
RecipeManagers . carpenterManager . addRecipe ( 80 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , ForestryItem . circuitboards . getItemStack ( 1 , 2 ),
new Object [] { "R#R" , "R#R" , "R#R" , '#' , Items . iron_ingot , 'R' , Items . redstone });
RecipeManagers . carpenterManager . addRecipe ( 80 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , ForestryItem . circuitboards . getItemStack ( 1 , 3 ),
new Object [] { "R#R" , "R#R" , "R#R" , '#' , Items . gold_ingot , 'R' , Items . redstone });
RecipeManagers . carpenterManager . addRecipe ( 40 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , ForestryItem . solderingIron . getItemStack (),
new Object [] { " # " , "# #" , " B" , '#' , Items . iron_ingot , 'B' , "ingotBronze" });
// ForestryCore.oreHandler.registerCarpenterRecipe(solderingIron);
// RAIN SUBSTRATES
RecipeManagers . carpenterManager . addRecipe ( 5 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , ForestryItem . iodineCharge . getItemStack (),
new Object [] { "Z#Z" , "#Y#" , "X#X" , '#' , ForestryItem . pollen , 'X' , Items . gunpowder ,
'Y' , ForestryItem . canEmpty , 'Z' , ForestryItem . honeyDrop });
// ForestryCore.oreHandler.registerCarpenterRecipe(iodineCapsule);
RecipeManagers . carpenterManager . addRecipe (
5 ,
LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ),
null ,
ForestryItem . craftingMaterial . getItemStack ( 1 , 4 ),
new Object [] { "Z#Z" , "#Y#" , "X#X" , '#' , ForestryItem . royalJelly , 'X' , Items . gunpowder ,
'Y' , ForestryItem . canEmpty , 'Z' , ForestryItem . honeydew });
// ForestryCore.oreHandler.registerCarpenterRecipe(dissipationCharge);
// Ender pearl
RecipeManagers . carpenterManager . addRecipe ( 100 , null , new ItemStack ( Items . ender_pearl , 1 ), new Object [] { " # " , "###" , " # " , '#' ,
ForestryItem . craftingMaterial . getItemStack ( 1 , 1 ) });
// Woven Silk
RecipeManagers . carpenterManager . addRecipe ( 10 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 500 ), null , ForestryItem . craftingMaterial . getItemStack ( 1 , 3 ),
new Object [] { "###" , "###" , "###" , '#' , ForestryItem . craftingMaterial . getItemStack ( 1 , 2 ) });
// Boxes
RecipeManagers . carpenterManager . addRecipe ( 5 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , ForestryItem . carton . getItemStack ( 2 ),
new Object [] { " # " , "# #" , " # " , '#' , "pulpWood" });
RecipeManagers . carpenterManager . addRecipe ( 20 , LiquidHelper . getLiquid ( Defaults . LIQUID_WATER , 1000 ), null , ForestryItem . crate . getItemStack ( 24 ),
new Object [] { " # " , "# #" , " # " , '#' , "logWood" });
// Assembly Kits
RecipeManagers . carpenterManager . addRecipe ( 20 , null , ForestryItem . carton . getItemStack (), ForestryItem . kitPickaxe . getItemStack (), new Object [] {
"###" ,
" X " ,
" X " ,
'#' , "ingotBronze" ,
'X' , "stickWood" });
RecipeManagers . carpenterManager . addRecipe ( 20 , null , ForestryItem . carton . getItemStack (), ForestryItem . kitShovel . getItemStack (),
new Object [] { " # " , " X " , " X " , '#' , "ingotBronze" , 'X' , "stickWood" });
// Reclamation
RecipeManagers . carpenterManager . addRecipe ( null , ForestryItem . ingotBronze . getItemStack ( 2 , ForestryItem . ingotBronze . item (). getMaxDamage ()),
new Object [] { "#" , '#' , ForestryItem . brokenBronzePickaxe });
RecipeManagers . carpenterManager . addRecipe ( null , ForestryItem . ingotBronze . getItemStack (), new Object [] { "#" , '#' , ForestryItem . brokenBronzeShovel });
// Crating and uncrating condensed
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedWood . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedCobblestone . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedDirt . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedStone . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedBrick . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedCacti . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedSand . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedObsidian . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedNetherrack . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedSoulsand . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedSandstone . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedBogearth . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedHumus . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedNetherbrick . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedPeat . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedApatite . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedFertilizer . getItemStack ());
(( RecipeManager ) RecipeManagers . carpenterManager ). addCrating ( "ingotTin" , ForestryItem . ingotTin . getItemStack (), ForestryItem . cratedTin . getItemStack ());
(( RecipeManager ) RecipeManagers . carpenterManager ). addCrating ( "ingotCopper" , ForestryItem . ingotCopper . getItemStack (), ForestryItem . cratedCopper . getItemStack ());
(( RecipeManager ) RecipeManagers . carpenterManager ). addCrating ( "ingotBronze" , ForestryItem . ingotBronze . getItemStack (), ForestryItem . cratedBronze . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedWheat . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedMycelium . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedMulch . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedCookies . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedHoneycombs . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedBeeswax . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedPollen . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedPropolis . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedHoneydew . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedRoyalJelly . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedCocoaComb . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedRedstone . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedLapis . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedReeds . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedClay . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedGlowstone . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedApples . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedNetherwart . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedSimmeringCombs . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedStringyCombs . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedFrozenCombs . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedDrippingCombs . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedRefractoryWax . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedPhosphor . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedAsh . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedCharcoal . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedGravel . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedCoal . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedSeeds . getItemStack ());
RecipeManagers . carpenterManager . addCrating ( ForestryItem . cratedSaplings . getItemStack ());
}
@Override
protected void registerCrates () {
// TODO Auto-generated method stub
}
@Override
public IGuiHandler getGuiHandler () {
return new GuiHandlerFactory ();
}
@Override
public ISaveEventHandler getSaveEventHandler () {
return null ;
}
@Override
public IOreDictionaryHandler getDictionaryHandler () {
return null ;
}
}