2013-07-26 21:18:53 -07:00
package tconstruct.common ;
2013-11-23 19:07:27 -08:00
import net.minecraft.item.Item ;
2013-11-17 19:59:56 +11:00
import net.minecraft.item.ItemStack ;
import tconstruct.library.crafting.ToolBuilder ;
2013-10-29 20:04:11 +01:00
import cpw.mods.fml.common.* ;
import cpw.mods.fml.common.event.FMLInterModComms ;
import cpw.mods.fml.common.registry.* ;
2013-07-26 21:18:53 -07:00
import java.lang.reflect.Field ;
2013-09-17 20:00:54 +10:00
import java.util.* ;
import net.minecraft.block.* ;
import net.minecraft.block.material.* ;
2013-07-27 20:08:11 -07:00
import net.minecraft.creativetab.CreativeTabs ;
2013-09-17 20:00:54 +10:00
import net.minecraft.item.* ;
import net.minecraft.item.crafting.* ;
2013-08-27 01:09:03 +10:00
import net.minecraft.nbt.NBTTagCompound ;
import net.minecraft.potion.Potion ;
2013-11-17 19:59:56 +11:00
import net.minecraft.stats.Achievement ;
2013-08-27 01:09:03 +10:00
import net.minecraft.util.WeightedRandomChestContent ;
2013-09-17 20:00:54 +10:00
import net.minecraftforge.common.* ;
import net.minecraftforge.fluids.* ;
2013-08-27 01:09:03 +10:00
import net.minecraftforge.fluids.FluidContainerRegistry.FluidContainerData ;
2013-09-17 20:00:54 +10:00
import net.minecraftforge.oredict.* ;
2013-08-05 13:36:19 -07:00
import tconstruct.TConstruct ;
2013-11-17 19:59:56 +11:00
import tconstruct.achievements.TAchievements ;
2013-09-17 20:00:54 +10:00
import tconstruct.blocks.* ;
import tconstruct.blocks.logic.* ;
import tconstruct.blocks.slime.* ;
import tconstruct.blocks.traps.* ;
2013-08-05 13:36:19 -07:00
import tconstruct.client.StepSoundSlime ;
2013-09-17 20:00:54 +10:00
import tconstruct.entity.* ;
2013-11-02 22:24:47 -07:00
import tconstruct.entity.item.* ;
2013-09-17 20:00:54 +10:00
import tconstruct.entity.projectile.* ;
import tconstruct.items.* ;
import tconstruct.items.armor.* ;
import tconstruct.items.blocks.* ;
import tconstruct.items.tools.* ;
2013-08-05 13:36:19 -07:00
import tconstruct.library.TConstructRegistry ;
2013-10-26 10:25:24 +11:00
import tconstruct.library.client.* ;
import tconstruct.library.client.FluidRenderProperties.Applications ;
2013-09-17 20:00:54 +10:00
import tconstruct.library.crafting.* ;
2013-08-05 13:36:19 -07:00
import tconstruct.library.tools.ToolCore ;
import tconstruct.library.util.IPattern ;
2013-09-17 20:00:54 +10:00
import tconstruct.modifiers.* ;
import tconstruct.util.* ;
2013-10-06 10:14:33 -07:00
import tconstruct.util.config.* ;
2013-07-26 21:18:53 -07:00
public class TContent implements IFuelHandler
{
2013-10-08 21:08:46 +11:00
//Temporary items
//public static Item armorTest = new ArmorStandard(2445, 4, EnumArmorPart.HELMET).setCreativeTab(CreativeTabs.tabAllSearch);
2013-10-19 07:45:16 -07:00
2013-07-26 21:18:53 -07:00
public TContent ()
{
registerItems ();
2013-11-29 23:16:32 -05:00
TRecipes . registerItemRecipes ();
2013-07-26 21:18:53 -07:00
registerBlocks ();
2013-11-29 23:16:32 -05:00
TRecipes . registerBlockRecipes ();
2013-07-26 21:18:53 -07:00
registerMaterials ();
addCraftingRecipes ();
setupToolTabs ();
addLoot ();
2013-11-19 20:57:52 -08:00
if ( PHConstruct . achievementsEnabled )
{
addAchievements ();
2013-11-17 19:59:56 +11:00
}
2013-07-26 21:18:53 -07:00
}
2013-10-06 09:53:48 -07:00
public void createEntities ()
2013-07-26 21:18:53 -07:00
{
EntityRegistry . registerModEntity ( FancyEntityItem . class , "Fancy Item" , 0 , TConstruct . instance , 32 , 5 , true );
EntityRegistry . registerModEntity ( DaggerEntity . class , "Dagger" , 1 , TConstruct . instance , 32 , 5 , true );
EntityRegistry . registerModEntity ( Crystal . class , "Crystal" , 2 , TConstruct . instance , 32 , 3 , true );
EntityRegistry . registerModEntity ( LaunchedPotion . class , "Launched Potion" , 3 , TConstruct . instance , 32 , 3 , true );
EntityRegistry . registerModEntity ( ArrowEntity . class , "Arrow" , 4 , TConstruct . instance , 32 , 5 , true );
2013-10-28 23:12:41 +11:00
EntityRegistry . registerModEntity ( EntityLandmineFirework . class , "LandmineFirework" , 5 , TConstruct . instance , 32 , 5 , true );
2013-11-02 22:24:47 -07:00
EntityRegistry . registerModEntity ( ExplosivePrimed . class , "SlimeExplosive" , 6 , TConstruct . instance , 32 , 5 , true );
2013-07-26 21:18:53 -07:00
//EntityRegistry.registerModEntity(CartEntity.class, "Small Wagon", 1, TConstruct.instance, 32, 5, true);
EntityRegistry . registerModEntity ( BlueSlime . class , "EdibleSlime" , 12 , TConstruct . instance , 64 , 5 , true );
//EntityRegistry.registerModEntity(MetalSlime.class, "MetalSlime", 13, TConstruct.instance, 64, 5, true);
}
2013-10-06 09:53:48 -07:00
void registerBlocks ()
2013-07-26 21:18:53 -07:00
{
//Tool Station
2013-11-29 23:16:32 -05:00
TRepo . toolStationWood = new ToolStationBlock ( PHConstruct . woodStation , Material . wood ). setUnlocalizedName ( "ToolStation" );
TRepo . toolForge = new ToolForgeBlock ( PHConstruct . toolForge , Material . iron ). setUnlocalizedName ( "ToolForge" );
TRepo . craftingStationWood = new CraftingStationBlock ( PHConstruct . woodCrafter , Material . wood ). setUnlocalizedName ( "CraftingStation" );
TRepo . craftingSlabWood = new CraftingSlab ( PHConstruct . woodCrafterSlab , Material . wood ). setUnlocalizedName ( "CraftingSlab" );
TRepo . furnaceSlab = new FurnaceSlab ( PHConstruct . furnaceSlab , Material . rock ). setUnlocalizedName ( "FurnaceSlab" );
2013-08-16 13:51:33 -07:00
2013-11-29 23:16:32 -05:00
TRepo . heldItemBlock = new EquipBlock ( PHConstruct . heldItemBlock , Material . wood ). setUnlocalizedName ( "Frypan" );
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
TRepo . craftedSoil = new SoilBlock ( PHConstruct . craftedSoil ). setLightOpacity ( 0 ). setUnlocalizedName ( "TConstruct.Soil" );
TRepo . craftedSoil . stepSound = Block . soundGravelFootstep ;
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
TRepo . searedSlab = new SearedSlab ( PHConstruct . searedSlab ). setUnlocalizedName ( "SearedSlab" );
TRepo . searedSlab . stepSound = Block . soundStoneFootstep ;
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
TRepo . speedSlab = new SpeedSlab ( PHConstruct . speedSlab ). setUnlocalizedName ( "SpeedSlab" );
TRepo . speedSlab . stepSound = Block . soundStoneFootstep ;
2013-10-06 09:53:48 -07:00
2013-11-29 23:16:32 -05:00
TRepo . metalBlock = new TMetalBlock ( PHConstruct . metalBlock , Material . iron , 10 . 0F ). setUnlocalizedName ( "tconstruct.metalblock" );
TRepo . metalBlock . stepSound = Block . soundMetalFootstep ;
2013-08-16 09:30:56 -07:00
2013-11-29 23:16:32 -05:00
TRepo . meatBlock = new MeatBlock ( PHConstruct . meatBlock ). setUnlocalizedName ( "tconstruct.meatblock" );
TRepo . glueBlock = new GlueBlock ( PHConstruct . glueBlock ). setUnlocalizedName ( "GlueBlock" ). setCreativeTab ( TConstructRegistry . blockTab );
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
TRepo . woolSlab1 = new SlabBase ( PHConstruct . woolSlab1 , Material . cloth , Block . cloth , 0 , 8 ). setUnlocalizedName ( "cloth" );
TRepo . woolSlab1 . setStepSound ( Block . soundClothFootstep ). setCreativeTab ( CreativeTabs . tabDecorations );
TRepo . woolSlab2 = new SlabBase ( PHConstruct . woolSlab2 , Material . cloth , Block . cloth , 8 , 8 ). setUnlocalizedName ( "cloth" );
TRepo . woolSlab2 . setStepSound ( Block . soundClothFootstep ). setCreativeTab ( CreativeTabs . tabDecorations );
2013-08-07 19:06:26 -07:00
2013-11-29 23:16:32 -05:00
//Smeltery
TRepo . smeltery = new SmelteryBlock ( PHConstruct . smeltery ). setUnlocalizedName ( "Smeltery" );
TRepo . lavaTank = new LavaTankBlock ( PHConstruct . lavaTank ). setUnlocalizedName ( "LavaTank" );
TRepo . lavaTank . setStepSound ( Block . soundGlassFootstep );
2013-08-07 19:06:26 -07:00
2013-11-29 23:16:32 -05:00
TRepo . searedBlock = new SearedBlock ( PHConstruct . searedTable ). setUnlocalizedName ( "SearedBlock" );
2013-08-07 19:06:26 -07:00
2013-11-29 23:16:32 -05:00
TRepo . castingChannel = ( new CastingChannelBlock ( PHConstruct . castingChannel )). setUnlocalizedName ( "CastingChannel" );
2013-08-07 19:06:26 -07:00
2013-11-29 23:16:32 -05:00
TRepo . tankAir = new TankAirBlock ( PHConstruct . airTank , Material . leaves ). setBlockUnbreakable (). setUnlocalizedName ( "tconstruct.tank.air" );
2013-11-04 00:33:39 +01:00
2013-11-29 23:16:32 -05:00
//Traps
TRepo . landmine = new BlockLandmine ( PHConstruct . landmine ). setHardness ( 0 . 5F ). setResistance ( 0F ). setStepSound ( Block . soundMetalFootstep ). setCreativeTab ( CreativeTabs . tabRedstone )
. setUnlocalizedName ( "landmine" );
TRepo . punji = new Punji ( PHConstruct . punji ). setUnlocalizedName ( "trap.punji" );
TRepo . barricadeOak = new BarricadeBlock ( PHConstruct . barricadeOak , Block . wood , 0 ). setUnlocalizedName ( "trap.barricade.oak" );
TRepo . barricadeSpruce = new BarricadeBlock ( PHConstruct . barricadeSpruce , Block . wood , 1 ). setUnlocalizedName ( "trap.barricade.spruce" );
TRepo . barricadeBirch = new BarricadeBlock ( PHConstruct . barricadeBirch , Block . wood , 2 ). setUnlocalizedName ( "trap.barricade.birch" );
TRepo . barricadeJungle = new BarricadeBlock ( PHConstruct . barricadeJungle , Block . wood , 3 ). setUnlocalizedName ( "trap.barricade.jungle" );
TRepo . slimeExplosive = new SlimeExplosive ( PHConstruct . slimeExplosive ). setHardness ( 0 . 0F ). setStepSound ( Block . soundGrassFootstep ). setUnlocalizedName ( "explosive.slime" );
2013-08-07 19:06:26 -07:00
2013-11-29 23:16:32 -05:00
TRepo . dryingRack = new DryingRack ( PHConstruct . dryingRack ). setUnlocalizedName ( "Armor.DryingRack" );
2013-07-26 21:18:53 -07:00
//Liquids
2013-11-29 23:16:32 -05:00
TRepo . liquidMetal = new MaterialLiquid ( MapColor . tntColor );
TRepo . moltenIronFluid = new Fluid ( "iron.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenIronFluid ))
TRepo . moltenIronFluid = FluidRegistry . getFluid ( "iron.molten" );
TRepo . moltenIron = new TConstructFluid ( PHConstruct . moltenIron , TRepo . moltenIronFluid , Material . lava , "liquid_iron" ). setUnlocalizedName ( "metal.molten.iron" );
GameRegistry . registerBlock ( TRepo . moltenIron , "metal.molten.iron" );
TRepo . fluids [ 0 ] = TRepo . moltenIronFluid ;
TRepo . fluidBlocks [ 0 ] = TRepo . moltenIron ;
TRepo . moltenIronFluid . setBlockID ( TRepo . moltenIron ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenIronFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 0 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenGoldFluid = new Fluid ( "gold.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenGoldFluid ))
TRepo . moltenGoldFluid = FluidRegistry . getFluid ( "gold.molten" );
TRepo . moltenGold = new TConstructFluid ( PHConstruct . moltenGold , TRepo . moltenGoldFluid , Material . lava , "liquid_gold" ). setUnlocalizedName ( "metal.molten.gold" );
GameRegistry . registerBlock ( TRepo . moltenGold , "metal.molten.gold" );
TRepo . fluids [ 1 ] = TRepo . moltenGoldFluid ;
TRepo . fluidBlocks [ 1 ] = TRepo . moltenGold ;
TRepo . moltenGoldFluid . setBlockID ( TRepo . moltenGold ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenGoldFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 1 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenCopperFluid = new Fluid ( "copper.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenCopperFluid ))
TRepo . moltenCopperFluid = FluidRegistry . getFluid ( "copper.molten" );
TRepo . moltenCopper = new TConstructFluid ( PHConstruct . moltenCopper , TRepo . moltenCopperFluid , Material . lava , "liquid_copper" ). setUnlocalizedName ( "metal.molten.copper" );
GameRegistry . registerBlock ( TRepo . moltenCopper , "metal.molten.copper" );
TRepo . fluids [ 2 ] = TRepo . moltenCopperFluid ;
TRepo . fluidBlocks [ 2 ] = TRepo . moltenCopper ;
TRepo . moltenCopperFluid . setBlockID ( TRepo . moltenCopper ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenCopperFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 2 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenTinFluid = new Fluid ( "tin.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenTinFluid ))
TRepo . moltenTinFluid = FluidRegistry . getFluid ( "tin.molten" );
TRepo . moltenTin = new TConstructFluid ( PHConstruct . moltenTin , TRepo . moltenTinFluid , Material . lava , "liquid_tin" ). setUnlocalizedName ( "metal.molten.tin" );
GameRegistry . registerBlock ( TRepo . moltenTin , "metal.molten.tin" );
TRepo . fluids [ 3 ] = TRepo . moltenTinFluid ;
TRepo . fluidBlocks [ 3 ] = TRepo . moltenTin ;
TRepo . moltenTinFluid . setBlockID ( TRepo . moltenTin ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenTinFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 3 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenAluminumFluid = new Fluid ( "aluminum.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenAluminumFluid ))
TRepo . moltenAluminumFluid = FluidRegistry . getFluid ( "aluminum.molten" );
TRepo . moltenAluminum = new TConstructFluid ( PHConstruct . moltenAluminum , TRepo . moltenAluminumFluid , Material . lava , "liquid_aluminum" ). setUnlocalizedName ( "metal.molten.aluminum" );
GameRegistry . registerBlock ( TRepo . moltenAluminum , "metal.molten.aluminum" );
TRepo . fluids [ 4 ] = TRepo . moltenAluminumFluid ;
TRepo . fluidBlocks [ 4 ] = TRepo . moltenAluminum ;
TRepo . moltenAluminumFluid . setBlockID ( TRepo . moltenAluminum ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenAluminumFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 4 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenCobaltFluid = new Fluid ( "cobalt.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenCobaltFluid ))
TRepo . moltenCobaltFluid = FluidRegistry . getFluid ( "cobalt.molten" );
TRepo . moltenCobalt = new TConstructFluid ( PHConstruct . moltenCobalt , TRepo . moltenCobaltFluid , Material . lava , "liquid_cobalt" ). setUnlocalizedName ( "metal.molten.cobalt" );
GameRegistry . registerBlock ( TRepo . moltenCobalt , "metal.molten.cobalt" );
TRepo . fluids [ 5 ] = TRepo . moltenCobaltFluid ;
TRepo . fluidBlocks [ 5 ] = TRepo . moltenCobalt ;
TRepo . moltenCobaltFluid . setBlockID ( TRepo . moltenCobalt ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenCobaltFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 5 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenArditeFluid = new Fluid ( "ardite.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenArditeFluid ))
TRepo . moltenArditeFluid = FluidRegistry . getFluid ( "ardite.molten" );
TRepo . moltenArdite = new TConstructFluid ( PHConstruct . moltenArdite , TRepo . moltenArditeFluid , Material . lava , "liquid_ardite" ). setUnlocalizedName ( "metal.molten.ardite" );
GameRegistry . registerBlock ( TRepo . moltenArdite , "metal.molten.ardite" );
TRepo . fluids [ 6 ] = TRepo . moltenArditeFluid ;
TRepo . fluidBlocks [ 6 ] = TRepo . moltenArdite ;
TRepo . moltenArditeFluid . setBlockID ( TRepo . moltenArdite ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenArditeFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 6 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenBronzeFluid = new Fluid ( "bronze.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenBronzeFluid ))
TRepo . moltenBronzeFluid = FluidRegistry . getFluid ( "bronze.molten" );
TRepo . moltenBronze = new TConstructFluid ( PHConstruct . moltenBronze , TRepo . moltenBronzeFluid , Material . lava , "liquid_bronze" ). setUnlocalizedName ( "metal.molten.bronze" );
GameRegistry . registerBlock ( TRepo . moltenBronze , "metal.molten.bronze" );
TRepo . fluids [ 7 ] = TRepo . moltenBronzeFluid ;
TRepo . fluidBlocks [ 7 ] = TRepo . moltenBronze ;
TRepo . moltenBronzeFluid . setBlockID ( TRepo . moltenBronze ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenBronzeFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 7 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenAlubrassFluid = new Fluid ( "aluminumbrass.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenAlubrassFluid ))
TRepo . moltenAlubrassFluid = FluidRegistry . getFluid ( "aluminumbrass.molten" );
TRepo . moltenAlubrass = new TConstructFluid ( PHConstruct . moltenAlubrass , TRepo . moltenAlubrassFluid , Material . lava , "liquid_alubrass" ). setUnlocalizedName ( "metal.molten.alubrass" );
GameRegistry . registerBlock ( TRepo . moltenAlubrass , "metal.molten.alubrass" );
TRepo . fluids [ 8 ] = TRepo . moltenAlubrassFluid ;
TRepo . fluidBlocks [ 8 ] = TRepo . moltenAlubrass ;
TRepo . moltenAlubrassFluid . setBlockID ( TRepo . moltenAlubrass ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenAlubrassFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 8 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenManyullynFluid = new Fluid ( "manyullyn.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenManyullynFluid ))
TRepo . moltenManyullynFluid = FluidRegistry . getFluid ( "manyullyn.molten" );
TRepo . moltenManyullyn = new TConstructFluid ( PHConstruct . moltenManyullyn , TRepo . moltenManyullynFluid , Material . lava , "liquid_manyullyn" ). setUnlocalizedName ( "metal.molten.manyullyn" );
GameRegistry . registerBlock ( TRepo . moltenManyullyn , "metal.molten.manyullyn" );
TRepo . fluids [ 9 ] = TRepo . moltenManyullynFluid ;
TRepo . fluidBlocks [ 9 ] = TRepo . moltenManyullyn ;
TRepo . moltenManyullynFluid . setBlockID ( TRepo . moltenManyullyn ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenManyullynFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 9 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenAlumiteFluid = new Fluid ( "alumite.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenAlumiteFluid ))
TRepo . moltenAlumiteFluid = FluidRegistry . getFluid ( "alumite.molten" );
TRepo . moltenAlumite = new TConstructFluid ( PHConstruct . moltenAlumite , TRepo . moltenAlumiteFluid , Material . lava , "liquid_alumite" ). setUnlocalizedName ( "metal.molten.alumite" );
GameRegistry . registerBlock ( TRepo . moltenAlumite , "metal.molten.alumite" );
TRepo . fluids [ 10 ] = TRepo . moltenAlumiteFluid ;
TRepo . fluidBlocks [ 10 ] = TRepo . moltenAlumite ;
TRepo . moltenAlumiteFluid . setBlockID ( TRepo . moltenAlumite ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenAlumiteFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 10 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenObsidianFluid = new Fluid ( "obsidian.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenObsidianFluid ))
TRepo . moltenObsidianFluid = FluidRegistry . getFluid ( "obsidian.molten" );
TRepo . moltenObsidian = new TConstructFluid ( PHConstruct . moltenObsidian , TRepo . moltenObsidianFluid , Material . lava , "liquid_obsidian" ). setUnlocalizedName ( "metal.molten.obsidian" );
GameRegistry . registerBlock ( TRepo . moltenObsidian , "metal.molten.obsidian" );
TRepo . fluids [ 11 ] = TRepo . moltenObsidianFluid ;
TRepo . fluidBlocks [ 11 ] = TRepo . moltenObsidian ;
TRepo . moltenObsidianFluid . setBlockID ( TRepo . moltenObsidian ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenObsidianFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 11 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenSteelFluid = new Fluid ( "steel.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenSteelFluid ))
TRepo . moltenSteelFluid = FluidRegistry . getFluid ( "steel.molten" );
TRepo . moltenSteel = new TConstructFluid ( PHConstruct . moltenSteel , TRepo . moltenSteelFluid , Material . lava , "liquid_steel" ). setUnlocalizedName ( "metal.molten.steel" );
GameRegistry . registerBlock ( TRepo . moltenSteel , "metal.molten.steel" );
TRepo . fluids [ 12 ] = TRepo . moltenSteelFluid ;
TRepo . fluidBlocks [ 12 ] = TRepo . moltenSteel ;
TRepo . moltenSteelFluid . setBlockID ( TRepo . moltenSteel ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenSteelFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 12 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenGlassFluid = new Fluid ( "glass.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenGlassFluid ))
TRepo . moltenGlassFluid = FluidRegistry . getFluid ( "glass.molten" );
TRepo . moltenGlass = new TConstructFluid ( PHConstruct . moltenGlass , TRepo . moltenGlassFluid , Material . lava , "liquid_glass" , true ). setUnlocalizedName ( "metal.molten.glass" );
GameRegistry . registerBlock ( TRepo . moltenGlass , "metal.molten.glass" );
TRepo . fluids [ 13 ] = TRepo . moltenGlassFluid ;
TRepo . fluidBlocks [ 13 ] = TRepo . moltenGlass ;
TRepo . moltenGlassFluid . setBlockID ( TRepo . moltenGlass ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenGlassFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 13 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenStoneFluid = new Fluid ( "stone.seared" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenStoneFluid ))
TRepo . moltenStoneFluid = FluidRegistry . getFluid ( "stone.seared" );
TRepo . moltenStone = new TConstructFluid ( PHConstruct . moltenStone , TRepo . moltenStoneFluid , Material . lava , "liquid_stone" ). setUnlocalizedName ( "molten.stone" );
GameRegistry . registerBlock ( TRepo . moltenStone , "molten.stone" );
TRepo . fluids [ 14 ] = TRepo . moltenStoneFluid ;
TRepo . fluidBlocks [ 14 ] = TRepo . moltenStone ;
TRepo . moltenStoneFluid . setBlockID ( TRepo . moltenStone ). setLuminosity ( 12 ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenStoneFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 14 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenEmeraldFluid = new Fluid ( "emerald.liquid" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenEmeraldFluid ))
TRepo . moltenEmeraldFluid = FluidRegistry . getFluid ( "emerald.liquid" );
TRepo . moltenEmerald = new TConstructFluid ( PHConstruct . moltenEmerald , TRepo . moltenEmeraldFluid , Material . water , "liquid_villager" ). setUnlocalizedName ( "molten.emerald" );
GameRegistry . registerBlock ( TRepo . moltenEmerald , "molten.emerald" );
TRepo . fluids [ 15 ] = TRepo . moltenEmeraldFluid ;
TRepo . fluidBlocks [ 15 ] = TRepo . moltenEmerald ;
TRepo . moltenEmeraldFluid . setBlockID ( TRepo . moltenEmerald ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenEmeraldFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 15 ), new ItemStack ( Item . bucketEmpty )));
TRepo . bloodFluid = new Fluid ( "blood" );
if ( ! FluidRegistry . registerFluid ( TRepo . bloodFluid ))
TRepo . bloodFluid = FluidRegistry . getFluid ( "blood" );
TRepo . blood = new BloodBlock ( PHConstruct . blood , TRepo . bloodFluid , Material . water , "liquid_cow" ). setUnlocalizedName ( "liquid.blood" );
GameRegistry . registerBlock ( TRepo . blood , "liquid.blood" );
TRepo . fluids [ 16 ] = TRepo . bloodFluid ;
TRepo . fluidBlocks [ 16 ] = TRepo . blood ;
TRepo . bloodFluid . setBlockID ( TRepo . blood ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . bloodFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 16 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenNickelFluid = new Fluid ( "nickel.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenNickelFluid ))
TRepo . moltenNickelFluid = FluidRegistry . getFluid ( "nickel.molten" );
TRepo . moltenNickel = new TConstructFluid ( PHConstruct . moltenNickel , TRepo . moltenNickelFluid , Material . lava , "liquid_ferrous" ). setUnlocalizedName ( "metal.molten.nickel" );
GameRegistry . registerBlock ( TRepo . moltenNickel , "metal.molten.nickel" );
TRepo . fluids [ 17 ] = TRepo . moltenNickelFluid ;
TRepo . fluidBlocks [ 17 ] = TRepo . moltenNickel ;
TRepo . moltenNickelFluid . setBlockID ( TRepo . moltenNickel ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenNickelFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 17 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenLeadFluid = new Fluid ( "lead.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenLeadFluid ))
TRepo . moltenLeadFluid = FluidRegistry . getFluid ( "lead.molten" );
TRepo . moltenLead = new TConstructFluid ( PHConstruct . moltenLead , TRepo . moltenLeadFluid , Material . lava , "liquid_lead" ). setUnlocalizedName ( "metal.molten.lead" );
GameRegistry . registerBlock ( TRepo . moltenLead , "metal.molten.lead" );
TRepo . fluids [ 18 ] = TRepo . moltenLeadFluid ;
TRepo . fluidBlocks [ 18 ] = TRepo . moltenLead ;
TRepo . moltenLeadFluid . setBlockID ( TRepo . moltenLead ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenLeadFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 18 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenSilverFluid = new Fluid ( "silver.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenSilverFluid ))
TRepo . moltenSilverFluid = FluidRegistry . getFluid ( "silver.molten" );
TRepo . moltenSilver = new TConstructFluid ( PHConstruct . moltenSilver , TRepo . moltenSilverFluid , Material . lava , "liquid_silver" ). setUnlocalizedName ( "metal.molten.silver" );
GameRegistry . registerBlock ( TRepo . moltenSilver , "metal.molten.silver" );
TRepo . fluids [ 19 ] = TRepo . moltenSilverFluid ;
TRepo . fluidBlocks [ 19 ] = TRepo . moltenSilver ;
TRepo . moltenSilverFluid . setBlockID ( TRepo . moltenSilver ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenSilverFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 19 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenShinyFluid = new Fluid ( "platinum.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenShinyFluid ))
TRepo . moltenShinyFluid = FluidRegistry . getFluid ( "platinum.molten" );
TRepo . moltenShiny = new TConstructFluid ( PHConstruct . moltenShiny , TRepo . moltenShinyFluid , Material . lava , "liquid_shiny" ). setUnlocalizedName ( "metal.molten.shiny" );
GameRegistry . registerBlock ( TRepo . moltenShiny , "metal.molten.shiny" );
TRepo . fluids [ 20 ] = TRepo . moltenShinyFluid ;
TRepo . fluidBlocks [ 20 ] = TRepo . moltenShiny ;
TRepo . moltenShinyFluid . setBlockID ( TRepo . moltenShiny ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenShinyFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 20 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenInvarFluid = new Fluid ( "invar.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenInvarFluid ))
TRepo . moltenInvarFluid = FluidRegistry . getFluid ( "invar.molten" );
TRepo . moltenInvar = new TConstructFluid ( PHConstruct . moltenInvar , TRepo . moltenInvarFluid , Material . lava , "liquid_invar" ). setUnlocalizedName ( "metal.molten.invar" );
GameRegistry . registerBlock ( TRepo . moltenInvar , "metal.molten.invar" );
TRepo . fluids [ 21 ] = TRepo . moltenInvarFluid ;
TRepo . fluidBlocks [ 21 ] = TRepo . moltenInvar ;
TRepo . moltenInvarFluid . setBlockID ( TRepo . moltenInvar ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenInvarFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 21 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenElectrumFluid = new Fluid ( "electrum.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenElectrumFluid ))
TRepo . moltenElectrumFluid = FluidRegistry . getFluid ( "electrum.molten" );
TRepo . moltenElectrum = new TConstructFluid ( PHConstruct . moltenElectrum , TRepo . moltenElectrumFluid , Material . lava , "liquid_electrum" ). setUnlocalizedName ( "metal.molten.electrum" );
GameRegistry . registerBlock ( TRepo . moltenElectrum , "metal.molten.electrum" );
TRepo . fluids [ 22 ] = TRepo . moltenElectrumFluid ;
TRepo . fluidBlocks [ 22 ] = TRepo . moltenElectrum ;
TRepo . moltenElectrumFluid . setBlockID ( TRepo . moltenElectrum ). setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenElectrumFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 22 ), new ItemStack ( Item . bucketEmpty )));
TRepo . moltenEnderFluid = new Fluid ( "ender" );
if ( ! FluidRegistry . registerFluid ( TRepo . moltenEnderFluid ))
{
TRepo . moltenEnderFluid = FluidRegistry . getFluid ( "ender" );
TRepo . moltenEnder = Block . blocksList [ TRepo . moltenEnderFluid . getBlockID () ] ;
if ( TRepo . moltenEnder == null )
2013-11-08 01:00:37 -08:00
TConstruct . logger . info ( "Molten ender block missing!" );
2013-11-08 00:49:44 -08:00
}
else
2013-10-30 13:22:00 -04:00
{
2013-11-29 23:16:32 -05:00
TRepo . moltenEnder = new TConstructFluid ( PHConstruct . moltenEnder , TRepo . moltenEnderFluid , Material . water , "liquid_ender" ). setUnlocalizedName ( "fluid.ender" );
GameRegistry . registerBlock ( TRepo . moltenEnder , "fluid.ender" );
TRepo . moltenEnderFluid . setBlockID ( TRepo . moltenEnder ). setDensity ( 3000 ). setViscosity ( 6000 );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . moltenEnderFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 23 ), new ItemStack ( Item . bucketEmpty )));
2013-10-30 13:22:00 -04:00
}
2013-11-29 23:16:32 -05:00
TRepo . fluids [ 23 ] = TRepo . moltenEnderFluid ;
TRepo . fluidBlocks [ 23 ] = TRepo . moltenEnder ;
2013-07-18 12:58:08 -07:00
2013-08-12 05:58:15 -07:00
//Slime
2013-11-29 23:16:32 -05:00
TRepo . slimeStep = new StepSoundSlime ( "mob.slime" , 1 . 0f , 1 . 0f );
TRepo . blueSlimeFluid = new Fluid ( "slime.blue" );
if ( ! FluidRegistry . registerFluid ( TRepo . blueSlimeFluid ))
TRepo . blueSlimeFluid = FluidRegistry . getFluid ( "slime.blue" );
TRepo . slimePool = new SlimeFluid ( PHConstruct . slimePoolBlue , TRepo . blueSlimeFluid , Material . water ). setCreativeTab ( TConstructRegistry . blockTab ). setStepSound ( TRepo . slimeStep )
. setUnlocalizedName ( "liquid.slime" );
GameRegistry . registerBlock ( TRepo . slimePool , "liquid.slime" );
TRepo . fluids [ 24 ] = TRepo . blueSlimeFluid ;
TRepo . fluidBlocks [ 24 ] = TRepo . slimePool ;
TRepo . blueSlimeFluid . setBlockID ( TRepo . slimePool );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . blueSlimeFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 24 ), new ItemStack ( Item . bucketEmpty )));
2013-08-31 05:13:31 -07:00
2013-11-23 15:48:19 +00:00
//Glue
2013-11-29 23:16:32 -05:00
TRepo . glueFluid = new Fluid ( "glue" ). setDensity ( 6000 ). setViscosity ( 6000 ). setTemperature ( 200 );
if ( ! FluidRegistry . registerFluid ( TRepo . glueFluid ))
TRepo . glueFluid = FluidRegistry . getFluid ( "glue" );
TRepo . glueFluidBlock = new GlueFluid ( PHConstruct . glueFluidBlock , TRepo . glueFluid , Material . water ). setCreativeTab ( TConstructRegistry . blockTab ). setStepSound ( TRepo . slimeStep )
. setUnlocalizedName ( "liquid.glue" );
GameRegistry . registerBlock ( TRepo . glueFluidBlock , "liquid.glue" );
TRepo . fluids [ 25 ] = TRepo . glueFluid ;
TRepo . fluidBlocks [ 25 ] = TRepo . glueFluidBlock ;
TRepo . glueFluid . setBlockID ( TRepo . glueFluidBlock );
FluidContainerRegistry . registerFluidContainer ( new FluidContainerData ( new FluidStack ( TRepo . glueFluid , 1000 ), new ItemStack ( TRepo . buckets , 1 , 26 ), new ItemStack ( Item . bucketEmpty )));
TRepo . pigIronFluid = new Fluid ( "pigiron.molten" );
if ( ! FluidRegistry . registerFluid ( TRepo . pigIronFluid ))
TRepo . pigIronFluid = FluidRegistry . getFluid ( "pigiron.molten" );
2013-11-19 20:57:52 -08:00
else
2013-11-29 23:16:32 -05:00
TRepo . pigIronFluid . setDensity ( 3000 ). setViscosity ( 6000 ). setTemperature ( 1300 );
TRepo . fluids [ 26 ] = TRepo . pigIronFluid ;
//Slime Islands
TRepo . slimeGel = new SlimeGel ( PHConstruct . slimeGel ). setStepSound ( TRepo . slimeStep ). setLightOpacity ( 0 ). setUnlocalizedName ( "slime.gel" );
TRepo . slimeGrass = new SlimeGrass ( PHConstruct . slimeGrass ). setStepSound ( Block . soundGrassFootstep ). setLightOpacity ( 0 ). setUnlocalizedName ( "slime.grass" );
TRepo . slimeTallGrass = new SlimeTallGrass ( PHConstruct . slimeTallGrass ). setStepSound ( Block . soundGrassFootstep ). setUnlocalizedName ( "slime.grass.tall" );
TRepo . slimeLeaves = ( SlimeLeaves ) new SlimeLeaves ( PHConstruct . slimeLeaves ). setStepSound ( TRepo . slimeStep ). setLightOpacity ( 0 ). setUnlocalizedName ( "slime.leaves" );
TRepo . slimeSapling = ( SlimeSapling ) new SlimeSapling ( PHConstruct . slimeSapling ). setStepSound ( TRepo . slimeStep ). setUnlocalizedName ( "slime.sapling" );
TRepo . slimeChannel = new ConveyorBase ( PHConstruct . slimeChannel , Material . water ). setStepSound ( TRepo . slimeStep ). setUnlocalizedName ( "slime.channel" );
TRepo . slimePad = new SlimePad ( PHConstruct . slimePad , Material . cloth ). setStepSound ( TRepo . slimeStep ). setUnlocalizedName ( "slime.pad" );
2013-09-04 20:26:43 -07:00
2013-07-26 21:18:53 -07:00
//Decoration
2013-11-29 23:16:32 -05:00
TRepo . stoneTorch = new StoneTorch ( PHConstruct . stoneTorch ). setUnlocalizedName ( "decoration.stonetorch" );
TRepo . stoneLadder = new StoneLadder ( PHConstruct . stoneLadder ). setUnlocalizedName ( "decoration.stoneladder" );
TRepo . multiBrick = new MultiBrick ( PHConstruct . multiBrick ). setUnlocalizedName ( "Decoration.Brick" );
TRepo . multiBrickFancy = new MultiBrickFancy ( PHConstruct . multiBrickFancy ). setUnlocalizedName ( "Decoration.BrickFancy" );
2013-07-26 21:18:53 -07:00
//Ores
String [] berryOres = new String [] { "berry_iron" , "berry_gold" , "berry_copper" , "berry_tin" , "berry_iron_ripe" , "berry_gold_ripe" , "berry_copper_ripe" , "berry_tin_ripe" };
2013-11-29 23:16:32 -05:00
TRepo . oreBerry = ( OreberryBush ) new OreberryBush ( PHConstruct . oreBerry , berryOres , 0 , 4 , new String [] { "oreIron" , "oreGold" , "oreCopper" , "oreTin" }). setUnlocalizedName ( "ore.berries.one" );
2013-07-26 21:18:53 -07:00
String [] berryOresTwo = new String [] { "berry_aluminum" , "berry_essence" , "" , "" , "berry_aluminum_ripe" , "berry_essence_ripe" , "" , "" };
2013-11-29 23:16:32 -05:00
TRepo . oreBerrySecond = ( OreberryBush ) new OreberryBushEssence ( PHConstruct . oreBerrySecond , berryOresTwo , 4 , 2 , new String [] { "oreAluminum" , "oreSilver" })
. setUnlocalizedName ( "ore.berries.two" );
2013-07-26 21:18:53 -07:00
String [] oreTypes = new String [] { "nether_slag" , "nether_cobalt" , "nether_ardite" , "ore_copper" , "ore_tin" , "ore_aluminum" , "ore_slag" };
2013-11-29 23:16:32 -05:00
TRepo . oreSlag = new MetalOre ( PHConstruct . oreSlag , Material . rock , 10 . 0F , oreTypes ). setUnlocalizedName ( "tconstruct.stoneore" );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreSlag , 1 , "pickaxe" , 4 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreSlag , 2 , "pickaxe" , 4 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreSlag , 3 , "pickaxe" , 1 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreSlag , 4 , "pickaxe" , 1 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreSlag , 5 , "pickaxe" , 1 );
TRepo . oreGravel = new GravelOre ( PHConstruct . oreGravel ). setUnlocalizedName ( "GravelOre" ). setUnlocalizedName ( "tconstruct.gravelore" );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreGravel , 0 , "shovel" , 1 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreGravel , 1 , "shovel" , 2 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreGravel , 2 , "shovel" , 1 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreGravel , 3 , "shovel" , 1 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreGravel , 4 , "shovel" , 1 );
MinecraftForge . setBlockHarvestLevel ( TRepo . oreGravel , 5 , "shovel" , 4 );
TRepo . speedBlock = new SpeedBlock ( PHConstruct . speedBlock ). setUnlocalizedName ( "SpeedBlock" );
2013-07-26 21:18:53 -07:00
//Glass
2013-11-29 23:16:32 -05:00
TRepo . clearGlass = new GlassBlockConnected ( PHConstruct . glass , "clear" , false ). setUnlocalizedName ( "GlassBlock" );
TRepo . clearGlass . stepSound = Block . soundGlassFootstep ;
TRepo . glassPane = new GlassPaneConnected ( PHConstruct . glassPane , "clear" , false );
TRepo . stainedGlassClear = new GlassBlockConnectedMeta ( PHConstruct . stainedGlassClear , "stained" , true , "white" , "orange" , "magenta" , "light_blue" , "yellow" , "lime" , "pink" , "gray" ,
"light_gray" , "cyan" , "purple" , "blue" , "brown" , "green" , "red" , "black" ). setUnlocalizedName ( "GlassBlock.StainedClear" );
TRepo . stainedGlassClear . stepSound = Block . soundGlassFootstep ;
TRepo . stainedGlassClearPane = new GlassPaneStained ( PHConstruct . stainedGlassClearPane );
2013-08-31 05:13:31 -07:00
2013-10-24 18:59:04 +01:00
//Rail
2013-11-29 23:16:32 -05:00
TRepo . woodenRail = new WoodRail ( PHConstruct . woodenRail ). setStepSound ( Block . soundWoodFootstep ). setCreativeTab ( TConstructRegistry . blockTab ). setUnlocalizedName ( "rail.wood" );
2013-11-07 23:13:44 -08:00
2013-07-26 21:18:53 -07:00
}
2013-10-06 09:53:48 -07:00
void registerItems ()
2013-07-26 21:18:53 -07:00
{
2013-11-29 23:16:32 -05:00
TRepo . titleIcon = new TitleIcon ( PHConstruct . uselessItem ). setUnlocalizedName ( "tconstruct.titleicon" );
GameRegistry . registerItem ( TRepo . titleIcon , "titleIcon" );
2013-07-26 21:18:53 -07:00
String [] blanks = new String [] { "blank_pattern" , "blank_cast" , "blank_cast" };
2013-11-29 23:16:32 -05:00
TRepo . blankPattern = new CraftingItem ( PHConstruct . blankPattern , blanks , blanks , "materials/" ). setUnlocalizedName ( "tconstruct.Pattern" );
GameRegistry . registerItem ( TRepo . blankPattern , "blankPattern" );
TRepo . materials = new MaterialItem ( PHConstruct . materials ). setUnlocalizedName ( "tconstruct.Materials" );
TRepo . toolRod = new ToolPart ( PHConstruct . toolRod , "_rod" , "ToolRod" ). setUnlocalizedName ( "tconstruct.ToolRod" );
TRepo . toolShard = new ToolShard ( PHConstruct . toolShard , "_chunk" ). setUnlocalizedName ( "tconstruct.ToolShard" );
TRepo . woodPattern = new Pattern ( PHConstruct . woodPattern , "pattern_" , "materials/" ). setUnlocalizedName ( "tconstruct.Pattern" );
TRepo . metalPattern = new MetalPattern ( PHConstruct . metalPattern , "cast_" , "materials/" ). setUnlocalizedName ( "tconstruct.MetalPattern" );
2013-11-23 18:30:52 -08:00
//armorPattern = new ArmorPattern(PHConstruct.armorPattern, "armorcast_", "materials/").setUnlocalizedName("tconstruct.ArmorPattern");
2013-11-29 23:16:32 -05:00
GameRegistry . registerItem ( TRepo . materials , "materials" );
GameRegistry . registerItem ( TRepo . woodPattern , "woodPattern" );
GameRegistry . registerItem ( TRepo . metalPattern , "metalPattern" );
//GameRegistry.registerItem(TRepo.armorPattern, "armorPattern");
TConstructRegistry . addItemToDirectory ( "blankPattern" , TRepo . blankPattern );
TConstructRegistry . addItemToDirectory ( "woodPattern" , TRepo . woodPattern );
TConstructRegistry . addItemToDirectory ( "metalPattern" , TRepo . metalPattern );
2013-11-23 19:07:27 -08:00
//TConstructRegistry.addItemToDirectory("armorPattern", armorPattern);
2013-07-26 21:18:53 -07:00
String [] patternTypes = { "ingot" , "toolRod" , "pickaxeHead" , "shovelHead" , "hatchetHead" , "swordBlade" , "wideGuard" , "handGuard" , "crossbar" , "binding" , "frypanHead" , "signHead" ,
"knifeBlade" , "chiselHead" , "toughRod" , "toughBinding" , "largePlate" , "broadAxeHead" , "scytheHead" , "excavatorHead" , "largeBlade" , "hammerHead" , "fullGuard" };
for ( int i = 1 ; i < patternTypes . length ; i ++ )
{
2013-11-29 23:16:32 -05:00
TConstructRegistry . addItemStackToDirectory ( patternTypes [ i ] + "Pattern" , new ItemStack ( TRepo . woodPattern , 1 , i ));
2013-07-26 21:18:53 -07:00
}
for ( int i = 0 ; i < patternTypes . length ; i ++ )
{
2013-11-29 23:16:32 -05:00
TConstructRegistry . addItemStackToDirectory ( patternTypes [ i ] + "Cast" , new ItemStack ( TRepo . metalPattern , 1 , i ));
2013-07-26 21:18:53 -07:00
}
2013-11-23 19:07:27 -08:00
/*String[] armorPartTypes = { "helmet", "chestplate", "leggings", "boots" };
2013-10-19 07:45:16 -07:00
for (int i = 1; i < armorPartTypes.length; i++)
{
TConstructRegistry.addItemStackToDirectory(armorPartTypes[i] + "Cast", new ItemStack(armorPattern, 1, i));
2013-11-23 19:07:27 -08:00
}*/
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
TRepo . manualBook = new Manual ( PHConstruct . manual );
GameRegistry . registerItem ( TRepo . manualBook , "manualBook" );
TRepo . buckets = new FilledBucket ( PHConstruct . buckets );
GameRegistry . registerItem ( TRepo . buckets , "buckets" );
TRepo . pickaxe = new Pickaxe ( PHConstruct . pickaxe );
TRepo . shovel = new Shovel ( PHConstruct . shovel );
TRepo . hatchet = new Hatchet ( PHConstruct . axe );
TRepo . broadsword = new Broadsword ( PHConstruct . broadsword );
TRepo . longsword = new Longsword ( PHConstruct . longsword );
TRepo . rapier = new Rapier ( PHConstruct . rapier );
TRepo . dagger = new Dagger ( PHConstruct . dagger );
TRepo . cutlass = new Cutlass ( PHConstruct . cutlass );
TRepo . frypan = new FryingPan ( PHConstruct . frypan );
TRepo . battlesign = new BattleSign ( PHConstruct . battlesign );
TRepo . mattock = new Mattock ( PHConstruct . mattock );
TRepo . chisel = new Chisel ( PHConstruct . chisel );
TRepo . lumberaxe = new LumberAxe ( PHConstruct . lumberaxe );
TRepo . cleaver = new Cleaver ( PHConstruct . cleaver );
TRepo . scythe = new Scythe ( PHConstruct . scythe );
TRepo . excavator = new Excavator ( PHConstruct . excavator );
TRepo . hammer = new Hammer ( PHConstruct . hammer );
TRepo . battleaxe = new Battleaxe ( PHConstruct . battleaxe );
TRepo . shortbow = new Shortbow ( PHConstruct . shortbow );
TRepo . arrow = new Arrow ( PHConstruct . arrow );
Item [] tools = { TRepo . pickaxe , TRepo . shovel , TRepo . hatchet , TRepo . broadsword , TRepo . longsword , TRepo . rapier , TRepo . dagger , TRepo . cutlass , TRepo . frypan , TRepo . battlesign , TRepo . mattock ,
TRepo . chisel , TRepo . lumberaxe , TRepo . cleaver , TRepo . scythe , TRepo . excavator , TRepo . hammer , TRepo . battleaxe , TRepo . shortbow , TRepo . arrow };
2013-11-25 04:12:29 -08:00
String [] toolStrings = { "pickaxe" , "shovel" , "hatchet" , "broadsword" , "longsword" , "rapier" , "dagger" , "cutlass" , "frypan" , "battlesign" , "mattock" , "chisel" , "lumberaxe" , "cleaver" ,
"scythe" , "excavator" , "hammer" , "battleaxe" , "shortbow" , "arrow" };
2013-07-26 21:18:53 -07:00
for ( int i = 0 ; i < tools . length ; i ++ )
{
2013-11-23 12:53:57 +00:00
GameRegistry . registerItem ( tools [ i ] , toolStrings [ i ] ); // 1.7 compat
2013-07-26 21:18:53 -07:00
TConstructRegistry . addItemToDirectory ( toolStrings [ i ] , tools [ i ] );
}
2013-11-29 23:16:32 -05:00
TRepo . potionLauncher = new PotionLauncher ( PHConstruct . potionLauncher ). setUnlocalizedName ( "tconstruct.PotionLauncher" );
GameRegistry . registerItem ( TRepo . potionLauncher , "potionLauncher" );
TRepo . pickaxeHead = new ToolPart ( PHConstruct . pickaxeHead , "_pickaxe_head" , "PickHead" ). setUnlocalizedName ( "tconstruct.PickaxeHead" );
TRepo . shovelHead = new ToolPart ( PHConstruct . shovelHead , "_shovel_head" , "ShovelHead" ). setUnlocalizedName ( "tconstruct.ShovelHead" );
TRepo . hatchetHead = new ToolPart ( PHConstruct . axeHead , "_axe_head" , "AxeHead" ). setUnlocalizedName ( "tconstruct.AxeHead" );
TRepo . binding = new ToolPart ( PHConstruct . binding , "_binding" , "Binding" ). setUnlocalizedName ( "tconstruct.Binding" );
TRepo . toughBinding = new ToolPart ( PHConstruct . toughBinding , "_toughbind" , "ToughBind" ). setUnlocalizedName ( "tconstruct.ThickBinding" );
TRepo . toughRod = new ToolPart ( PHConstruct . toughRod , "_toughrod" , "ToughRod" ). setUnlocalizedName ( "tconstruct.ThickRod" );
TRepo . largePlate = new ToolPart ( PHConstruct . largePlate , "_largeplate" , "LargePlate" ). setUnlocalizedName ( "tconstruct.LargePlate" );
TRepo . swordBlade = new ToolPart ( PHConstruct . swordBlade , "_sword_blade" , "SwordBlade" ). setUnlocalizedName ( "tconstruct.SwordBlade" );
TRepo . wideGuard = new ToolPart ( PHConstruct . largeGuard , "_large_guard" , "LargeGuard" ). setUnlocalizedName ( "tconstruct.LargeGuard" );
TRepo . handGuard = new ToolPart ( PHConstruct . medGuard , "_medium_guard" , "MediumGuard" ). setUnlocalizedName ( "tconstruct.MediumGuard" );
TRepo . crossbar = new ToolPart ( PHConstruct . crossbar , "_crossbar" , "Crossbar" ). setUnlocalizedName ( "tconstruct.Crossbar" );
TRepo . knifeBlade = new ToolPart ( PHConstruct . knifeBlade , "_knife_blade" , "KnifeBlade" ). setUnlocalizedName ( "tconstruct.KnifeBlade" );
TRepo . fullGuard = new ToolPartHidden ( PHConstruct . fullGuard , "_full_guard" , "FullGuard" ). setUnlocalizedName ( "tconstruct.FullGuard" );
TRepo . frypanHead = new ToolPart ( PHConstruct . frypanHead , "_frypan_head" , "FrypanHead" ). setUnlocalizedName ( "tconstruct.FrypanHead" );
TRepo . signHead = new ToolPart ( PHConstruct . signHead , "_battlesign_head" , "SignHead" ). setUnlocalizedName ( "tconstruct.SignHead" );
TRepo . chiselHead = new ToolPart ( PHConstruct . chiselHead , "_chisel_head" , "ChiselHead" ). setUnlocalizedName ( "tconstruct.ChiselHead" );
TRepo . scytheBlade = new ToolPart ( PHConstruct . scytheBlade , "_scythe_head" , "ScytheHead" ). setUnlocalizedName ( "tconstruct.ScytheBlade" );
TRepo . broadAxeHead = new ToolPart ( PHConstruct . lumberHead , "_lumberaxe_head" , "LumberHead" ). setUnlocalizedName ( "tconstruct.LumberHead" );
TRepo . excavatorHead = new ToolPart ( PHConstruct . excavatorHead , "_excavator_head" , "ExcavatorHead" ). setUnlocalizedName ( "tconstruct.ExcavatorHead" );
TRepo . largeSwordBlade = new ToolPart ( PHConstruct . largeSwordBlade , "_large_sword_blade" , "LargeSwordBlade" ). setUnlocalizedName ( "tconstruct.LargeSwordBlade" );
TRepo . hammerHead = new ToolPart ( PHConstruct . hammerHead , "_hammer_head" , "HammerHead" ). setUnlocalizedName ( "tconstruct.HammerHead" );
TRepo . bowstring = new Bowstring ( PHConstruct . bowstring ). setUnlocalizedName ( "tconstruct.Bowstring" );
TRepo . arrowhead = new ToolPart ( PHConstruct . arrowhead , "_arrowhead" , "ArrowHead" ). setUnlocalizedName ( "tconstruct.Arrowhead" );
TRepo . fletching = new Fletching ( PHConstruct . fletching ). setUnlocalizedName ( "tconstruct.Fletching" );
Item [] toolParts = { TRepo . toolRod , TRepo . toolShard , TRepo . pickaxeHead , TRepo . shovelHead , TRepo . hatchetHead , TRepo . binding , TRepo . toughBinding , TRepo . toughRod , TRepo . largePlate ,
TRepo . swordBlade , TRepo . wideGuard , TRepo . handGuard , TRepo . crossbar , TRepo . knifeBlade , TRepo . fullGuard , TRepo . frypanHead , TRepo . signHead , TRepo . chiselHead , TRepo . scytheBlade ,
TRepo . broadAxeHead , TRepo . excavatorHead , TRepo . largeSwordBlade , TRepo . hammerHead , TRepo . bowstring , TRepo . fletching , TRepo . arrowhead };
2013-07-26 21:18:53 -07:00
String [] toolPartStrings = { "toolRod" , "toolShard" , "pickaxeHead" , "shovelHead" , "hatchetHead" , "binding" , "toughBinding" , "toughRod" , "heavyPlate" , "swordBlade" , "wideGuard" , "handGuard" ,
"crossbar" , "knifeBlade" , "fullGuard" , "frypanHead" , "signHead" , "chiselHead" , "scytheBlade" , "broadAxeHead" , "excavatorHead" , "largeSwordBlade" , "hammerHead" , "bowstring" ,
"fletching" , "arrowhead" };
for ( int i = 0 ; i < toolParts . length ; i ++ )
{
2013-11-23 12:53:57 +00:00
GameRegistry . registerItem ( toolParts [ i ] , toolPartStrings [ i ] ); // 1.7 compat
2013-07-26 21:18:53 -07:00
TConstructRegistry . addItemToDirectory ( toolPartStrings [ i ] , toolParts [ i ] );
}
2013-11-29 23:16:32 -05:00
TRepo . diamondApple = new DiamondApple ( PHConstruct . diamondApple ). setUnlocalizedName ( "tconstruct.apple.diamond" );
TRepo . strangeFood = new StrangeFood ( PHConstruct . slimefood ). setUnlocalizedName ( "tconstruct.strangefood" );
TRepo . oreBerries = new OreBerries ( PHConstruct . oreChunks ). setUnlocalizedName ( "oreberry" );
GameRegistry . registerItem ( TRepo . diamondApple , "diamondApple" );
GameRegistry . registerItem ( TRepo . strangeFood , "strangeFood" );
GameRegistry . registerItem ( TRepo . oreBerries , "oreBerries" );
2013-10-06 09:53:48 -07:00
2013-11-29 23:16:32 -05:00
TRepo . jerky = new Jerky ( PHConstruct . jerky , Loader . isModLoaded ( "HungerOverhaul" )). setUnlocalizedName ( "tconstruct.jerky" );
GameRegistry . registerItem ( TRepo . jerky , "jerky" );
2013-07-26 21:18:53 -07:00
//Wearables
//heavyHelmet = new TArmorBase(PHConstruct.heavyHelmet, 0).setUnlocalizedName("tconstruct.HeavyHelmet");
2013-11-29 23:16:32 -05:00
TRepo . heartCanister = new HeartCanister ( PHConstruct . heartCanister ). setUnlocalizedName ( "tconstruct.canister" );
2013-08-09 08:47:40 -07:00
//heavyBoots = new TArmorBase(PHConstruct.heavyBoots, 3).setUnlocalizedName("tconstruct.HeavyBoots");
//glove = new Glove(PHConstruct.glove).setUnlocalizedName("tconstruct.Glove");
2013-11-29 23:16:32 -05:00
TRepo . knapsack = new Knapsack ( PHConstruct . knapsack ). setUnlocalizedName ( "tconstruct.storage" );
TRepo . goldHead = new GoldenHead ( PHConstruct . goldHead , 4 , 1 . 2F , false ). setAlwaysEdible (). setPotionEffect ( Potion . regeneration . id , 10 , 0 , 1 . 0F ). setUnlocalizedName ( "goldenhead" );
//GameRegistry.registerItem(TRepo.heavyHelmet, "heavyHelmet");
GameRegistry . registerItem ( TRepo . heartCanister , "heartCanister" );
//GameRegistry.registerItem(TRepo.heavyBoots, "heavyBoots");
//GameRegistry.registerItem(TRepo.glove, "glove");
GameRegistry . registerItem ( TRepo . knapsack , "knapsack" );
GameRegistry . registerItem ( TRepo . goldHead , "goldHead" );
2013-10-19 07:45:16 -07:00
2013-10-10 20:03:45 +11:00
LiquidCasting basinCasting = TConstruct . getBasinCasting ();
2013-11-29 23:16:32 -05:00
TRepo . materialWood = EnumHelper . addArmorMaterial ( "WOOD" , 2 , new int [] { 1 , 2 , 2 , 1 }, 3 );
TRepo . helmetWood = new ArmorBasic ( PHConstruct . woodHelmet , TRepo . materialWood , 0 , "wood" ). setUnlocalizedName ( "tconstruct.helmetWood" );
TRepo . chestplateWood = new ArmorBasic ( PHConstruct . woodChestplate , TRepo . materialWood , 1 , "wood" ). setUnlocalizedName ( "tconstruct.chestplateWood" );
TRepo . leggingsWood = new ArmorBasic ( PHConstruct . woodPants , TRepo . materialWood , 2 , "wood" ). setUnlocalizedName ( "tconstruct.leggingsWood" );
TRepo . bootsWood = new ArmorBasic ( PHConstruct . woodBoots , TRepo . materialWood , 3 , "wood" ). setUnlocalizedName ( "tconstruct.bootsWood" );
GameRegistry . registerItem ( TRepo . helmetWood , "helmetWood" );
GameRegistry . registerItem ( TRepo . chestplateWood , "chestplateWood" );
GameRegistry . registerItem ( TRepo . leggingsWood , "leggingsWood" );
GameRegistry . registerItem ( TRepo . bootsWood , "bootsWood" );
2013-10-19 07:45:16 -07:00
2013-09-04 20:26:43 -07:00
// essenceCrystal = new EssenceCrystal(PHConstruct.essenceCrystal).setUnlocalizedName("tconstruct.crystal.essence");
2013-07-26 21:18:53 -07:00
String [] materialStrings = { "paperStack" , "greenSlimeCrystal" , "searedBrick" , "ingotCobalt" , "ingotArdite" , "ingotManyullyn" , "mossBall" , "lavaCrystal" , "necroticBone" , "ingotCopper" ,
"ingotTin" , "ingotAluminum" , "rawAluminum" , "ingotBronze" , "ingotAluminumBrass" , "ingotAlumite" , "ingotSteel" , "blueSlimeCrystal" , "ingotObsidian" , "nuggetIron" , "nuggetCopper" ,
"nuggetTin" , "nuggetAluminum" , "nuggetSilver" , "nuggetAluminumBrass" , "silkyCloth" , "silkyJewel" , "nuggetObsidian" , "nuggetCobalt" , "nuggetArdite" , "nuggetManyullyn" , "nuggetBronze" ,
2013-11-24 23:40:51 -08:00
"nuggetAlumite" , "nuggetSteel" , "ingotPigIron" , "nuggetPigIron" , "glueball" };
2013-07-26 21:18:53 -07:00
for ( int i = 0 ; i < materialStrings . length ; i ++ )
{
2013-11-29 23:16:32 -05:00
TConstructRegistry . addItemStackToDirectory ( materialStrings [ i ] , new ItemStack ( TRepo . materials , 1 , i ));
2013-07-26 21:18:53 -07:00
}
String [] oreberries = { "Iron" , "Gold" , "Copper" , "Tin" , "Aluminum" , "Essence" };
for ( int i = 0 ; i < oreberries . length ; i ++ )
{
2013-11-29 23:16:32 -05:00
TConstructRegistry . addItemStackToDirectory ( "oreberry" + oreberries [ i ] , new ItemStack ( TRepo . oreBerries , 1 , i ));
2013-07-26 21:18:53 -07:00
}
2013-11-29 23:16:32 -05:00
TConstructRegistry . addItemStackToDirectory ( "diamondApple" , new ItemStack ( TRepo . diamondApple , 1 , 0 ));
TConstructRegistry . addItemStackToDirectory ( "blueSlimeFood" , new ItemStack ( TRepo . strangeFood , 1 , 0 ));
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
TConstructRegistry . addItemStackToDirectory ( "canisterEmpty" , new ItemStack ( TRepo . heartCanister , 1 , 0 ));
TConstructRegistry . addItemStackToDirectory ( "miniRedHeart" , new ItemStack ( TRepo . heartCanister , 1 , 1 ));
TConstructRegistry . addItemStackToDirectory ( "canisterRedHeart" , new ItemStack ( TRepo . heartCanister , 1 , 2 ));
2013-11-07 23:13:44 -08:00
2013-07-26 21:18:53 -07:00
//Vanilla stack sizes
Item . doorWood . setMaxStackSize ( 16 );
Item . doorIron . setMaxStackSize ( 16 );
Item . snowball . setMaxStackSize ( 64 );
Item . boat . setMaxStackSize ( 16 );
Item . minecartEmpty . setMaxStackSize ( 3 );
Item . minecartCrate . setMaxStackSize ( 3 );
Item . minecartPowered . setMaxStackSize ( 3 );
2013-08-16 09:30:56 -07:00
Item . itemsList [ Block . cake . blockID ] . setMaxStackSize ( 16 );
2013-07-26 21:18:53 -07:00
//Block.torchWood.setTickRandomly(false);
}
2013-10-06 09:53:48 -07:00
void registerMaterials ()
2013-07-26 21:18:53 -07:00
{
2013-08-19 09:11:30 -07:00
TConstructRegistry . addToolMaterial ( 0 , "Wood" , "Wooden " , 0 , 59 , 200 , 0 , 1 . 0F , 0 , 0f , "\u00A7e" , "" );
2013-07-26 21:18:53 -07:00
TConstructRegistry . addToolMaterial ( 1 , "Stone" , 1 , 131 , 400 , 1 , 0 . 5F , 0 , 1f , "" , "Stonebound" );
TConstructRegistry . addToolMaterial ( 2 , "Iron" , 2 , 250 , 600 , 2 , 1 . 3F , 1 , 0f , "\u00A7f" , "" );
TConstructRegistry . addToolMaterial ( 3 , "Flint" , 1 , 171 , 525 , 2 , 0 . 7F , 0 , 0f , "\u00A78" , "" );
TConstructRegistry . addToolMaterial ( 4 , "Cactus" , 1 , 150 , 500 , 2 , 1 . 0F , 0 , - 1f , "\u00A72" , "Jagged" );
TConstructRegistry . addToolMaterial ( 5 , "Bone" , 1 , 200 , 400 , 1 , 1 . 0F , 0 , 0f , "\u00A7e" , "" );
TConstructRegistry . addToolMaterial ( 6 , "Obsidian" , 3 , 89 , 700 , 2 , 0 . 8F , 3 , 0f , "\u00A7d" , "" );
TConstructRegistry . addToolMaterial ( 7 , "Netherrack" , 2 , 131 , 400 , 1 , 1 . 2F , 0 , 1f , "\u00A74" , "Stonebound" );
2013-09-05 12:39:18 -07:00
TConstructRegistry . addToolMaterial ( 8 , "Slime" , 0 , 500 , 150 , 0 , 1 . 5F , 0 , 0f , "\u00A7a" , "" );
2013-07-26 21:18:53 -07:00
TConstructRegistry . addToolMaterial ( 9 , "Paper" , 0 , 30 , 200 , 0 , 0 . 3F , 0 , 0f , "\u00A7f" , "Writable" );
TConstructRegistry . addToolMaterial ( 10 , "Cobalt" , 4 , 800 , 1100 , 3 , 1 . 75F , 2 , 0f , "\u00A73" , "" );
TConstructRegistry . addToolMaterial ( 11 , "Ardite" , 4 , 600 , 800 , 3 , 2 . 0F , 0 , 2f , "\u00A74" , "Stonebound" );
TConstructRegistry . addToolMaterial ( 12 , "Manyullyn" , 5 , 1200 , 900 , 4 , 2 . 5F , 0 , 0f , "\u00A75" , "" );
TConstructRegistry . addToolMaterial ( 13 , "Copper" , 1 , 180 , 500 , 2 , 1 . 15F , 0 , 0f , "\u00A7c" , "" );
TConstructRegistry . addToolMaterial ( 14 , "Bronze" , 2 , 350 , 700 , 2 , 1 . 3F , 1 , 0f , "\u00A76" , "" );
TConstructRegistry . addToolMaterial ( 15 , "Alumite" , 4 , 550 , 800 , 3 , 1 . 3F , 2 , 0f , "\u00A7d" , "" );
TConstructRegistry . addToolMaterial ( 16 , "Steel" , 4 , 750 , 800 , 3 , 1 . 3F , 2 , 0f , "" , "" );
2013-09-05 12:39:18 -07:00
TConstructRegistry . addToolMaterial ( 17 , "BlueSlime" , "Slime " , 0 , 1200 , 150 , 0 , 2 . 0F , 0 , 0f , "\u00A7b" , "" );
2013-11-21 22:34:47 -08:00
TConstructRegistry . addToolMaterial ( 18 , "PigIron" , "Pig Iron " , 3 , 250 , 600 , 2 , 1 . 3F , 1 , 0f , "\u00A7c" , "Tasty" );
2013-07-26 21:18:53 -07:00
TConstructRegistry . addBowMaterial ( 0 , 384 , 20 , 1 . 0f ); //Wood
TConstructRegistry . addBowMaterial ( 1 , 10 , 80 , 0 . 2f ); //Stone
TConstructRegistry . addBowMaterial ( 2 , 576 , 40 , 1 . 2f ); //Iron
TConstructRegistry . addBowMaterial ( 3 , 10 , 80 , 0 . 2f ); //Flint
TConstructRegistry . addBowMaterial ( 4 , 384 , 20 , 1 . 0f ); //Cactus
TConstructRegistry . addBowMaterial ( 5 , 192 , 30 , 1 . 0f ); //Bone
TConstructRegistry . addBowMaterial ( 6 , 10 , 80 , 0 . 2f ); //Obsidian
TConstructRegistry . addBowMaterial ( 7 , 10 , 80 , 0 . 2f ); //Netherrack
TConstructRegistry . addBowMaterial ( 8 , 1536 , 20 , 1 . 2f ); //Slime
TConstructRegistry . addBowMaterial ( 9 , 48 , 25 , 0 . 5f ); //Paper
TConstructRegistry . addBowMaterial ( 10 , 1152 , 40 , 1 . 2f ); //Cobalt
TConstructRegistry . addBowMaterial ( 11 , 960 , 40 , 1 . 2f ); //Ardite
TConstructRegistry . addBowMaterial ( 12 , 1536 , 40 , 1 . 2f ); //Manyullyn
TConstructRegistry . addBowMaterial ( 13 , 384 , 40 , 1 . 2f ); //Copper
TConstructRegistry . addBowMaterial ( 14 , 576 , 40 , 1 . 2f ); //Bronze
TConstructRegistry . addBowMaterial ( 15 , 768 , 40 , 1 . 2f ); //Alumite
TConstructRegistry . addBowMaterial ( 16 , 768 , 40 , 1 . 2f ); //Steel
TConstructRegistry . addBowMaterial ( 17 , 576 , 20 , 1 . 2f ); //Blue Slime
2013-11-19 20:57:52 -08:00
TConstructRegistry . addBowMaterial ( 18 , 384 , 20 , 1 . 2f ); //Slime
2013-07-26 21:18:53 -07:00
//Material ID, mass, fragility
TConstructRegistry . addArrowMaterial ( 0 , 0 . 69F , 1 . 0F , 100F ); //Wood
TConstructRegistry . addArrowMaterial ( 1 , 2 . 5F , 5 . 0F , 100F ); //Stone
TConstructRegistry . addArrowMaterial ( 2 , 7 . 2F , 0 . 5F , 100F ); //Iron
TConstructRegistry . addArrowMaterial ( 3 , 2 . 65F , 1 . 0F , 100F ); //Flint
TConstructRegistry . addArrowMaterial ( 4 , 0 . 76F , 1 . 0F , 100F ); //Cactus
TConstructRegistry . addArrowMaterial ( 5 , 0 . 69F , 1 . 0F , 100 ); //Bone
TConstructRegistry . addArrowMaterial ( 6 , 2 . 4F , 1 . 0F , 100F ); //Obsidian
TConstructRegistry . addArrowMaterial ( 7 , 3 . 5F , 1 . 0F , 100F ); //Netherrack
TConstructRegistry . addArrowMaterial ( 8 , 0 . 42F , 0 . 0F , 100F ); //Slime
TConstructRegistry . addArrowMaterial ( 9 , 1 . 1F , 3 . 0F , 90F ); //Paper
TConstructRegistry . addArrowMaterial ( 10 , 8 . 9F , 0 . 25F , 100F ); //Cobalt
TConstructRegistry . addArrowMaterial ( 11 , 7 . 2F , 0 . 25F , 100F ); //Ardite
TConstructRegistry . addArrowMaterial ( 12 , 10 . 6F , 0 . 1F , 100F ); //Manyullyn
TConstructRegistry . addArrowMaterial ( 13 , 8 . 96F , 0 . 5F , 100F ); //Copper
TConstructRegistry . addArrowMaterial ( 14 , 7 . 9F , 0 . 25F , 100F ); //Bronze
TConstructRegistry . addArrowMaterial ( 15 , 4 . 7F , 0 . 25F , 100F ); //Alumite
TConstructRegistry . addArrowMaterial ( 16 , 7 . 6F , 0 . 25F , 100F ); //Steel
TConstructRegistry . addArrowMaterial ( 17 , 0 . 42F , 0 . 0F , 100F ); //Blue Slime
2013-11-19 20:57:52 -08:00
TConstructRegistry . addArrowMaterial ( 18 , 6 . 8F , 0 . 5F , 100F ); //Iron
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
TConstructRegistry . addBowstringMaterial ( 0 , 2 , new ItemStack ( Item . silk ), new ItemStack ( TRepo . bowstring , 1 , 0 ), 1F , 1F , 1f ); //String
TConstructRegistry . addFletchingMaterial ( 0 , 2 , new ItemStack ( Item . feather ), new ItemStack ( TRepo . fletching , 1 , 0 ), 100F , 0F , 0 . 05F ); //Feather
2013-10-06 09:53:48 -07:00
for ( int i = 0 ; i < 4 ; i ++ )
2013-11-29 23:16:32 -05:00
TConstructRegistry . addFletchingMaterial ( 1 , 2 , new ItemStack ( Block . leaves , 1 , i ), new ItemStack ( TRepo . fletching , 1 , 1 ), 75F , 0F , 0 . 2F ); //All four vanialla Leaves
TConstructRegistry . addFletchingMaterial ( 2 , 2 , new ItemStack ( TRepo . materials , 1 , 1 ), new ItemStack ( TRepo . fletching , 1 , 2 ), 100F , 0F , 0 . 12F ); //Slime
TConstructRegistry . addFletchingMaterial ( 3 , 2 , new ItemStack ( TRepo . materials , 1 , 17 ), new ItemStack ( TRepo . fletching , 1 , 3 ), 100F , 0F , 0 . 12F ); //BlueSlime
2013-07-26 21:18:53 -07:00
PatternBuilder pb = PatternBuilder . instance ;
if ( PHConstruct . enableTWood )
pb . registerFullMaterial ( Block . planks , 2 , "Wood" , new ItemStack ( Item . stick ), new ItemStack ( Item . stick ), 0 );
else
pb . registerMaterialSet ( "Wood" , new ItemStack ( Item . stick , 2 ), new ItemStack ( Item . stick ), 0 );
if ( PHConstruct . enableTStone )
{
2013-11-29 23:16:32 -05:00
pb . registerFullMaterial ( Block . stone , 2 , "Stone" , new ItemStack ( TRepo . toolShard , 1 , 1 ), new ItemStack ( TRepo . toolRod , 1 , 1 ), 1 );
2013-07-26 21:18:53 -07:00
pb . registerMaterial ( Block . cobblestone , 2 , "Stone" );
}
else
2013-11-29 23:16:32 -05:00
pb . registerMaterialSet ( "Stone" , new ItemStack ( TRepo . toolShard , 1 , 1 ), new ItemStack ( TRepo . toolRod , 1 , 1 ), 0 );
pb . registerFullMaterial ( Item . ingotIron , 2 , "Iron" , new ItemStack ( TRepo . toolShard , 1 , 2 ), new ItemStack ( TRepo . toolRod , 1 , 2 ), 2 );
2013-07-26 21:18:53 -07:00
if ( PHConstruct . enableTFlint )
2013-11-29 23:16:32 -05:00
pb . registerFullMaterial ( Item . flint , 2 , "Flint" , new ItemStack ( TRepo . toolShard , 1 , 3 ), new ItemStack ( TRepo . toolRod , 1 , 3 ), 3 );
2013-07-26 21:18:53 -07:00
else
2013-11-29 23:16:32 -05:00
pb . registerMaterialSet ( "Flint" , new ItemStack ( TRepo . toolShard , 1 , 3 ), new ItemStack ( TRepo . toolRod , 1 , 3 ), 3 );
2013-07-26 21:18:53 -07:00
if ( PHConstruct . enableTCactus )
2013-11-29 23:16:32 -05:00
pb . registerFullMaterial ( Block . cactus , 2 , "Cactus" , new ItemStack ( TRepo . toolShard , 1 , 4 ), new ItemStack ( TRepo . toolRod , 1 , 4 ), 4 );
2013-07-26 21:18:53 -07:00
else
2013-11-29 23:16:32 -05:00
pb . registerMaterialSet ( "Cactus" , new ItemStack ( TRepo . toolShard , 1 , 4 ), new ItemStack ( TRepo . toolRod , 1 , 4 ), 4 );
2013-07-26 21:18:53 -07:00
if ( PHConstruct . enableTBone )
pb . registerFullMaterial ( Item . bone , 2 , "Bone" , new ItemStack ( Item . dyePowder , 1 , 15 ), new ItemStack ( Item . bone ), 5 );
else
pb . registerMaterialSet ( "Bone" , new ItemStack ( Item . dyePowder , 1 , 15 ), new ItemStack ( Item . bone ), 5 );
2013-11-29 23:16:32 -05:00
pb . registerFullMaterial ( Block . obsidian , 2 , "Obsidian" , new ItemStack ( TRepo . toolShard , 1 , 6 ), new ItemStack ( TRepo . toolRod , 1 , 6 ), 6 );
pb . registerMaterial ( new ItemStack ( TRepo . materials , 1 , 18 ), 2 , "Obsidian" );
2013-07-26 21:18:53 -07:00
if ( PHConstruct . enableTNetherrack )
2013-11-29 23:16:32 -05:00
pb . registerFullMaterial ( Block . netherrack , 2 , "Netherrack" , new ItemStack ( TRepo . toolShard , 1 , 7 ), new ItemStack ( TRepo . toolRod , 1 , 7 ), 7 );
2013-07-26 21:18:53 -07:00
else
2013-11-29 23:16:32 -05:00
pb . registerMaterialSet ( "Netherrack" , new ItemStack ( TRepo . toolShard , 1 , 7 ), new ItemStack ( TRepo . toolRod , 1 , 7 ), 7 );
2013-07-26 21:18:53 -07:00
if ( PHConstruct . enableTSlime )
2013-11-29 23:16:32 -05:00
pb . registerFullMaterial ( new ItemStack ( TRepo . materials , 1 , 1 ), 2 , "Slime" , new ItemStack ( TRepo . toolShard , 1 , 8 ), new ItemStack ( TRepo . toolRod , 1 , 8 ), 8 );
2013-07-26 21:18:53 -07:00
else
2013-11-29 23:16:32 -05:00
pb . registerMaterialSet ( "Slime" , new ItemStack ( TRepo . toolShard , 1 , 8 ), new ItemStack ( TRepo . toolRod , 1 , 17 ), 8 );
2013-07-26 21:18:53 -07:00
if ( PHConstruct . enableTPaper )
2013-11-29 23:16:32 -05:00
pb . registerFullMaterial ( new ItemStack ( TRepo . materials , 1 , 0 ), 2 , "Paper" , new ItemStack ( Item . paper , 2 ), new ItemStack ( TRepo . toolRod , 1 , 9 ), 9 );
2013-07-26 21:18:53 -07:00
else
2013-11-29 23:16:32 -05:00
pb . registerMaterialSet ( "BlueSlime" , new ItemStack ( Item . paper , 2 ), new ItemStack ( TRepo . toolRod , 1 , 9 ), 9 );
pb . registerMaterialSet ( "Cobalt" , new ItemStack ( TRepo . toolShard , 1 , 10 ), new ItemStack ( TRepo . toolRod , 1 , 10 ), 10 );
pb . registerMaterialSet ( "Ardite" , new ItemStack ( TRepo . toolShard , 1 , 11 ), new ItemStack ( TRepo . toolRod , 1 , 11 ), 11 );
pb . registerMaterialSet ( "Manyullyn" , new ItemStack ( TRepo . toolShard , 1 , 12 ), new ItemStack ( TRepo . toolRod , 1 , 12 ), 12 );
pb . registerMaterialSet ( "Copper" , new ItemStack ( TRepo . toolShard , 1 , 13 ), new ItemStack ( TRepo . toolRod , 1 , 13 ), 13 );
pb . registerMaterialSet ( "Bronze" , new ItemStack ( TRepo . toolShard , 1 , 14 ), new ItemStack ( TRepo . toolRod , 1 , 14 ), 14 );
pb . registerMaterialSet ( "Alumite" , new ItemStack ( TRepo . toolShard , 1 , 15 ), new ItemStack ( TRepo . toolRod , 1 , 15 ), 15 );
pb . registerMaterialSet ( "Steel" , new ItemStack ( TRepo . toolShard , 1 , 16 ), new ItemStack ( TRepo . toolRod , 1 , 16 ), 16 );
2013-07-26 21:18:53 -07:00
if ( PHConstruct . enableTBlueSlime )
2013-11-29 23:16:32 -05:00
pb . registerFullMaterial ( new ItemStack ( TRepo . materials , 1 , 17 ), 2 , "BlueSlime" , new ItemStack ( TRepo . toolShard , 1 , 17 ), new ItemStack ( TRepo . toolRod , 1 , 17 ), 17 );
2013-07-26 21:18:53 -07:00
else
2013-11-29 23:16:32 -05:00
pb . registerMaterialSet ( "BlueSlime" , new ItemStack ( TRepo . toolShard , 1 , 17 ), new ItemStack ( TRepo . toolRod , 1 , 17 ), 17 );
pb . registerFullMaterial ( new ItemStack ( TRepo . materials , 1 , 34 ), 2 , "PigIron" , new ItemStack ( TRepo . toolShard , 1 , 18 ), new ItemStack ( TRepo . toolRod , 1 , 18 ), 18 );
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
pb . addToolPattern (( IPattern ) TRepo . woodPattern );
2013-07-26 21:18:53 -07:00
}
public static Item [] patternOutputs ;
public static FluidStack [] liquids ;
2013-10-06 09:53:48 -07:00
void addCraftingRecipes ()
2013-11-04 00:33:39 +01:00
{
addPartMapping ();
addRecipesForToolBuilder ();
addRecipesForTableCasting ();
addRecipesForBasinCasting ();
addRecipesForSmeltery ();
addRecipesForChisel ();
addRecipesForFurnace ();
addRecipesForCraftingTable ();
addRecipesForDryingRack ();
}
private void addRecipesForCraftingTable ()
{
String [] patBlock = { "###" , "###" , "###" };
String [] patSurround = { "###" , "#m#" , "###" };
Object [] toolForgeBlocks = { "blockIron" , "blockGold" , Block . blockDiamond , Block . blockEmerald , "blockCobalt" , "blockArdite" , "blockManyullyn" , "blockCopper" , "blockBronze" , "blockTin" ,
2013-11-25 16:11:20 -08:00
"blockAluminum" , "blockAluminumBrass" , "blockAlumite" , "blockSteel" };
2013-11-04 00:33:39 +01:00
// ToolForge Recipes (Metal Version)
for ( int sc = 0 ; sc < toolForgeBlocks . length ; sc ++ )
{
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . toolForge , 1 , sc ), "bbb" , "msm" , "m m" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 2 ), 's' , new ItemStack ( TRepo . toolStationWood ,
1 , 0 ), 'm' , toolForgeBlocks [ sc ] ));
2013-11-04 00:33:39 +01:00
// adding slab version recipe
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 5 ), "bbb" , "msm" , "m m" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 2 ), 's' , new ItemStack (
TRepo . craftingSlabWood , 1 , 1 ), 'm' , toolForgeBlocks [ sc ] ));
2013-11-04 00:33:39 +01:00
}
// ToolStation Recipes (Wooden Version)
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 0 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , "crafterWood" ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 0 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , "craftingTableWood" ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 0 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( TRepo . craftingStationWood , 1 , 0 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 0 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( TRepo . craftingSlabWood , 1 , 0 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 2 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( Block . wood , 1 , 1 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 3 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( Block . wood , 1 , 2 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 4 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( Block . wood , 1 , 3 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 5 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , Block . chest );
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 1 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , "logWood" ));
2013-11-04 00:33:39 +01:00
if ( PHConstruct . stencilTableCrafting )
{
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 10 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( Block . planks , 1 , 0 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 11 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( Block . planks , 1 , 1 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 12 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( Block . planks , 1 , 2 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 13 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , new ItemStack ( Block . planks , 1 , 3 ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . toolStationWood , 1 , 10 ), "p" , "w" , 'p' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'w' , "plankWood" ));
2013-11-04 00:33:39 +01:00
}
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . furnaceSlab , 1 , 0 ), "###" , "# #" , "###" , '#' , new ItemStack ( Block . stoneSingleSlab , 1 , 3 ));
2013-11-10 13:57:35 -08:00
2013-11-04 00:33:39 +01:00
// Blank Pattern Recipe
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . blankPattern , 1 , 0 ), "ps" , "sp" , 'p' , "plankWood" , 's' , "stickWood" ));
2013-11-04 00:33:39 +01:00
// Manual Book Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . manualBook ), "wp" , 'w' , new ItemStack ( TRepo . blankPattern , 1 , 0 ), 'p' , Item . paper );
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . manualBook , 2 , 0 ), new ItemStack ( TRepo . manualBook , 1 , 0 ), Item . book );
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . manualBook , 1 , 1 ), new ItemStack ( TRepo . manualBook , 1 , 0 ));
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . manualBook , 2 , 1 ), new ItemStack ( TRepo . manualBook , 1 , 1 ), Item . book );
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . manualBook , 1 , 2 ), new ItemStack ( TRepo . manualBook , 1 , 1 ));
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . manualBook , 2 , 2 ), new ItemStack ( TRepo . manualBook , 1 , 2 ), Item . book );
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . manualBook , 1 , 3 ), new ItemStack ( TRepo . manualBook , 1 , 2 ));
2013-11-25 18:57:54 -05:00
// alternative Vanilla Book Recipe
2013-11-29 23:16:32 -05:00
GameRegistry . addShapelessRecipe ( new ItemStack ( Item . book ), Item . paper , Item . paper , Item . paper , Item . silk , TRepo . blankPattern , TRepo . blankPattern );
2013-11-04 00:33:39 +01:00
// Paperstack Recipe
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 0 ), "pp" , "pp" , 'p' , Item . paper );
2013-11-04 00:33:39 +01:00
// Mossball Recipe
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . materials , 1 , 6 ), patBlock , '#' , "stoneMossy" ));
2013-11-04 00:33:39 +01:00
// LavaCrystal Recipes -Auto-smelt
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 7 ), "xcx" , "cbc" , "xcx" , 'b' , Item . bucketLava , 'c' , Item . fireballCharge , 'x' , Item . blazeRod );
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 7 ), "xcx" , "cbc" , "xcx" , 'b' , Item . bucketLava , 'x' , Item . fireballCharge , 'c' , Item . blazeRod );
2013-11-04 00:33:39 +01:00
// Slimy sand Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . craftedSoil , 1 , 0 ), Item . slimeBall , Item . slimeBall , Item . slimeBall , Item . slimeBall , Block . sand , Block . dirt );
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . craftedSoil , 1 , 2 ), TRepo . strangeFood , TRepo . strangeFood , TRepo . strangeFood , TRepo . strangeFood , Block . sand , Block . dirt );
2013-11-04 00:33:39 +01:00
// Grout Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . craftedSoil , 2 , 1 ), Item . clay , Block . sand , Block . gravel );
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftedSoil , 8 , 1 ), "sgs" , "gcg" , "sgs" , 'c' , new ItemStack ( Block . stainedClay , 1 , Short . MAX_VALUE ), 's' , Block . sand , 'g' , Block . gravel );
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftedSoil , 8 , 1 ), "sgs" , "gcg" , "sgs" , 'c' , new ItemStack ( Block . blockClay , 1 , Short . MAX_VALUE ), 's' , Block . sand , 'g' , Block . gravel );
2013-11-04 00:33:39 +01:00
// Graveyard Soil Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . craftedSoil , 1 , 3 ), Block . dirt , Item . rottenFlesh , new ItemStack ( Item . dyePowder , 1 , 15 ));
2013-11-04 00:33:39 +01:00
// Silky Cloth Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 25 ), patSurround , 'm' , new ItemStack ( TRepo . materials , 1 , 24 ), '#' , new ItemStack ( Item . silk ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . materials , 1 , 25 ), patSurround , 'm' , "nuggetGold" , '#' , new ItemStack ( Item . silk )));
2013-11-04 00:33:39 +01:00
// Silky Jewel Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 26 ), " c " , "cec" , " c " , 'c' , new ItemStack ( TRepo . materials , 1 , 25 ), 'e' , new ItemStack ( Item . emerald ));
// Wooden Armor Recipes
GameRegistry . addRecipe ( new ShapedOreRecipe ( TRepo . helmetWood , new Object [] { "www" , "w w" , 'w' , "logWood" }));
GameRegistry . addRecipe ( new ShapedOreRecipe ( TRepo . chestplateWood , new Object [] { "w w" , "www" , "www" , 'w' , "logWood" }));
GameRegistry . addRecipe ( new ShapedOreRecipe ( TRepo . leggingsWood , new Object [] { "www" , "w w" , "w w" , 'w' , "logWood" }));
GameRegistry . addRecipe ( new ShapedOreRecipe ( TRepo . bootsWood , new Object [] { "w w" , "w w" , 'w' , "logWood" }));
2013-11-04 00:33:39 +01:00
// Metal conversion Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 3 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 9 )); // Copper
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 5 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 10 )); // Tin
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 6 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 11 )); // Aluminum
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 6 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 12 )); // Aluminum
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 4 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 13 )); // Bronze
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 7 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 14 )); // AluBrass
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 0 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 3 )); // Cobalt
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 1 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 4 )); // Ardite
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 2 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 5 )); // Manyullyn
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 8 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 15 )); // Alumite
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 9 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 16 )); // Steel
GameRegistry . addRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 11 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 12 )); //Aluminum raw -> ingot
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 9 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 3 )); //Copper
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 10 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 5 )); //Tin
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 12 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 6 )); //Aluminum
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 13 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 4 )); //Bronze
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 14 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 7 )); //AluBrass
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 3 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 0 )); //Cobalt
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 4 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 1 )); //Ardite
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 5 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 2 )); //Manyullyn
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 15 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 8 )); //Alumite
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 16 ), "m" , 'm' , new ItemStack ( TRepo . metalBlock , 1 , 9 )); //Steel
GameRegistry . addRecipe ( new ItemStack ( Item . ingotIron ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 19 )); //Iron
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 9 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 20 )); //Copper
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 10 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 21 )); //Tin
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 11 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 22 )); //Aluminum
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 14 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 24 )); //Aluminum Brass
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 18 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 27 )); //Obsidian
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 3 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 28 )); //Cobalt
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 4 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 29 )); //Ardite
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 5 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 30 )); //Manyullyn
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 13 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 31 )); //Bronze
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 15 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 32 )); //Alumite
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 1 , 16 ), patBlock , '#' , new ItemStack ( TRepo . materials , 1 , 33 )); //Steel
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 19 ), "m" , 'm' , new ItemStack ( Item . ingotIron )); //Iron
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 20 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 9 )); //Copper
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 21 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 10 )); //Tin
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 22 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 11 )); //Aluminum
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 22 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 12 )); //Aluminum
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 24 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 14 )); //Aluminum Brass
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 27 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 18 )); //Obsidian
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 28 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 3 )); //Cobalt
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 29 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 4 )); //Ardite
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 30 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 5 )); //Manyullyn
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 31 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 13 )); //Bronze
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 32 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 15 )); //Alumite
GameRegistry . addRecipe ( new ItemStack ( TRepo . materials , 9 , 33 ), "m" , 'm' , new ItemStack ( TRepo . materials , 1 , 16 )); //Steel
2013-11-04 00:33:39 +01:00
// stained Glass Recipes
String [] dyeTypes = { "dyeBlack" , "dyeRed" , "dyeGreen" , "dyeBrown" , "dyeBlue" , "dyePurple" , "dyeCyan" , "dyeLightGray" , "dyeGray" , "dyePink" , "dyeLime" , "dyeYellow" , "dyeLightBlue" ,
"dyeMagenta" , "dyeOrange" , "dyeWhite" };
String color = "" ;
for ( int i = 0 ; i < 16 ; i ++ )
{
color = dyeTypes [ 15 - i ] ;
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( Block . cloth , 8 , i ), patSurround , 'm' , color , '#' , new ItemStack ( Block . cloth , 1 , Short . MAX_VALUE )));
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . stainedGlassClear , 8 , i ), patSurround , 'm' , color , '#' , TRepo . clearGlass ));
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( TRepo . stainedGlassClear , 1 , i ), color , TRepo . clearGlass ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . stainedGlassClear , 8 , i ), patSurround , 'm' , color , '#' , new ItemStack ( TRepo . stainedGlassClear , 1 , Short . MAX_VALUE )));
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( TRepo . stainedGlassClear , 1 , i ), color , new ItemStack ( TRepo . stainedGlassClear , 1 , Short . MAX_VALUE )));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . stainedGlassClearPane , 8 , i ), patSurround , 'm' , color , '#' , TRepo . glassPane ));
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( TRepo . stainedGlassClearPane , 1 , i ), color , TRepo . glassPane ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . stainedGlassClearPane , 8 , i ), patSurround , 'm' , color , '#' , new ItemStack ( TRepo . stainedGlassClearPane , 1 , Short . MAX_VALUE )));
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( TRepo . stainedGlassClearPane , 1 , i ), color , new ItemStack ( TRepo . stainedGlassClearPane , 1 , Short . MAX_VALUE )));
2013-11-04 00:33:39 +01:00
}
// Glass Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( Item . glassBottle , 3 ), new Object [] { "# #" , " # " , '#' , TRepo . clearGlass });
2013-11-04 00:33:39 +01:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( Block . daylightSensor ), new Object [] { "GGG" , "QQQ" , "WWW" , 'G' , "glass" , 'Q' , Item . netherQuartz , 'W' , "slabWood" }));
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( Block . beacon , 1 ), new Object [] { "GGG" , "GSG" , "OOO" , 'G' , TRepo . clearGlass , 'S' , Item . netherStar , 'O' , Block . obsidian });
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . glassPane , 16 , 0 ), "GGG" , "GGG" , 'G' , TRepo . clearGlass ));
2013-11-04 00:33:39 +01:00
// Smeltery Components Recipes
2013-11-29 23:16:32 -05:00
ItemStack searedBrick = new ItemStack ( TRepo . materials , 1 , 2 );
GameRegistry . addRecipe ( new ItemStack ( TRepo . smeltery , 1 , 0 ), "bbb" , "b b" , "bbb" , 'b' , searedBrick ); //Controller
GameRegistry . addRecipe ( new ItemStack ( TRepo . smeltery , 1 , 1 ), "b b" , "b b" , "b b" , 'b' , searedBrick ); //Drain
GameRegistry . addRecipe ( new ItemStack ( TRepo . smeltery , 1 , 2 ), "bb" , "bb" , 'b' , searedBrick ); //Bricks
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . lavaTank , 1 , 0 ), patSurround , '#' , searedBrick , 'm' , "glass" )); //Tank
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . lavaTank , 1 , 1 ), "bgb" , "ggg" , "bgb" , 'b' , searedBrick , 'g' , "glass" )); //Glass
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . lavaTank , 1 , 2 ), "bgb" , "bgb" , "bgb" , 'b' , searedBrick , 'g' , "glass" )); //Window
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedBlock , 1 , 0 ), "bbb" , "b b" , "b b" , 'b' , searedBrick ); //Table
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedBlock , 1 , 1 ), "b b" , " b " , 'b' , searedBrick ); //Faucet
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedBlock , 1 , 2 ), "b b" , "b b" , "bbb" , 'b' , searedBrick ); //Basin
GameRegistry . addRecipe ( new ItemStack ( TRepo . castingChannel , 4 , 0 ), "b b" , "bbb" , 'b' , searedBrick ); //Channel
2013-11-04 00:33:39 +01:00
// Jack o'Latern Recipe - Stone Torch
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( Block . pumpkinLantern , 1 , 0 ), "p" , "s" , 'p' , new ItemStack ( Block . pumpkin ), 's' , new ItemStack ( TRepo . stoneTorch ));
2013-11-04 00:33:39 +01:00
// Stone Torch Recipe
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . stoneTorch , 4 ), "p" , "w" , 'p' , new ItemStack ( Item . coal , 1 , Short . MAX_VALUE ), 'w' , "stoneRod" ));
2013-11-04 00:33:39 +01:00
// Stone Ladder Recipe
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . stoneLadder , 3 ), "w w" , "www" , "w w" , 'w' , "stoneRod" ));
2013-11-04 00:33:39 +01:00
// Wooden Rail Recipe
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . woodenRail , 4 , 0 ), "b b" , "bxb" , "b b" , 'b' , "plankWood" , 'x' , "stickWood" ));
2013-11-04 00:33:39 +01:00
// Stonesticks Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolRod , 4 , 1 ), "c" , "c" , 'c' , new ItemStack ( Block . stone ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . toolRod , 2 , 1 ), "c" , "c" , 'c' , new ItemStack ( Block . cobblestone ));
2013-11-04 00:33:39 +01:00
//
2013-11-29 23:16:32 -05:00
ItemStack aluBrass = new ItemStack ( TRepo . materials , 1 , 14 );
2013-11-04 00:33:39 +01:00
// Clock Recipe - Vanilla alternativ
GameRegistry . addRecipe ( new ItemStack ( Item . pocketSundial ), " i " , "iri" , " i " , 'i' , aluBrass , 'r' , new ItemStack ( Item . redstone ));
// Gold Pressure Plate - Vanilla alternativ
GameRegistry . addRecipe ( new ItemStack ( Block . pressurePlateGold ), "ii" , 'i' , aluBrass );
//Accessories
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . heartCanister , 1 , 0 ), "##" , "##" , '#' , "ingotAluminum" ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . heartCanister , 1 , 0 ), "##" , "##" , '#' , "ingotAluminium" ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . heartCanister , 1 , 0 ), "##" , "##" , '#' , "ingotNaturalAluminum" ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . diamondApple ), " d " , "d#d" , " d " , 'd' , new ItemStack ( Item . diamond ), '#' , new ItemStack ( Item . appleRed ));
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . heartCanister , 1 , 2 ), new ItemStack ( TRepo . diamondApple ), new ItemStack ( TRepo . materials , 1 , 8 ), new ItemStack ( TRepo . heartCanister , 1 , 0 ),
new ItemStack ( TRepo . heartCanister , 1 , 1 ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . knapsack , 1 , 0 ), "###" , "rmr" , "###" , '#' , new ItemStack ( Item . leather ), 'r' , new ItemStack ( TRepo . toughRod , 1 , 2 ), 'm' ,
"ingotGold" ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . knapsack , 1 , 0 ), "###" , "rmr" , "###" , '#' , new ItemStack ( Item . leather ), 'r' , new ItemStack ( TRepo . toughRod , 1 , 2 ), 'm' , aluBrass );
2013-11-04 00:33:39 +01:00
// Drying Rack Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . dryingRack , 1 , 0 ), "bbb" , 'b' , "slabWood" ));
2013-11-04 00:33:39 +01:00
//Landmine Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . landmine , 1 , 0 ), "mcm" , "rpr" , 'm' , "plankWood" , 'c' , new ItemStack ( TRepo . blankPattern , 1 , 1 ), 'r' , Item . redstone , 'p' ,
2013-11-04 00:33:39 +01:00
Block . pressurePlateStone ));
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . landmine , 1 , 1 ), "mcm" , "rpr" , 'm' , Block . stone , 'c' , new ItemStack ( TRepo . blankPattern , 1 , 1 ), 'r' , Item . redstone , 'p' ,
2013-11-04 00:33:39 +01:00
Block . pressurePlateStone ));
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . landmine , 1 , 2 ), "mcm" , "rpr" , 'm' , Block . obsidian , 'c' , new ItemStack ( TRepo . blankPattern , 1 , 1 ), 'r' , Item . redstone , 'p' ,
2013-11-04 00:33:39 +01:00
Block . pressurePlateStone ));
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . landmine , 1 , 3 ), "mcm" , "rpr" , 'm' , Item . redstoneRepeater , 'c' , new ItemStack ( TRepo . blankPattern , 1 , 1 ), 'r' , Item . redstone ,
'p' , Block . pressurePlateStone ));
2013-11-04 00:33:39 +01:00
//Ultra hardcore recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . goldHead ), patSurround , '#' , new ItemStack ( Item . ingotGold ), 'm' , new ItemStack ( Item . skull , 1 , 3 ));
2013-11-04 00:33:39 +01:00
// Slab Smeltery Components Recipes
for ( int i = 0 ; i < 7 ; i ++ )
{
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . speedSlab , 6 , i ), "bbb" , 'b' , new ItemStack ( TRepo . speedBlock , 1 , i ));
2013-11-04 00:33:39 +01:00
}
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedSlab , 6 , 0 ), "bbb" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 2 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedSlab , 6 , 1 ), "bbb" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 4 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedSlab , 6 , 2 ), "bbb" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 5 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedSlab , 6 , 3 ), "bbb" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 6 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedSlab , 6 , 4 ), "bbb" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 8 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedSlab , 6 , 5 ), "bbb" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 9 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedSlab , 6 , 6 ), "bbb" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 10 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . searedSlab , 6 , 7 ), "bbb" , 'b' , new ItemStack ( TRepo . smeltery , 1 , 11 ));
2013-11-04 00:33:39 +01:00
// Wool Slab Recipes
for ( int sc = 0 ; sc <= 7 ; sc ++ )
{
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . woolSlab1 , 6 , sc ), "www" , 'w' , new ItemStack ( Block . cloth , 1 , sc ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . woolSlab2 , 6 , sc ), "www" , 'w' , new ItemStack ( Block . cloth , 1 , sc + 8 ));
2013-11-04 00:33:39 +01:00
2013-11-29 23:16:32 -05:00
GameRegistry . addShapelessRecipe ( new ItemStack ( Block . cloth , 1 , sc ), new ItemStack ( TRepo . woolSlab1 , 1 , sc ), new ItemStack ( TRepo . woolSlab1 , 1 , sc ));
GameRegistry . addShapelessRecipe ( new ItemStack ( Block . cloth , 1 , sc + 8 ), new ItemStack ( TRepo . woolSlab2 , 1 , sc ), new ItemStack ( TRepo . woolSlab2 , 1 , sc ));
2013-11-04 00:33:39 +01:00
}
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( Block . cloth , 1 , 0 ), "slabCloth" , "slabCloth" ));
//Trap Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . punji , 5 , 0 ), "b b" , " b " , "b b" , 'b' , new ItemStack ( Item . reed ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . barricadeSpruce , 1 , 0 ), "b" , "b" , 'b' , new ItemStack ( Block . wood , 1 , 1 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . barricadeBirch , 1 , 0 ), "b" , "b" , 'b' , new ItemStack ( Block . wood , 1 , 2 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . barricadeJungle , 1 , 0 ), "b" , "b" , 'b' , new ItemStack ( Block . wood , 1 , 3 ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . barricadeOak , 1 , 0 ), "b" , "b" , 'b' , "logWood" ));
2013-11-04 00:33:39 +01:00
// Advanced WorkBench Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . craftingStationWood , 1 , 0 ), "b" , 'b' , "crafterWood" ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . craftingStationWood , 1 , 0 ), "b" , 'b' , "craftingTableWood" ));
2013-11-04 00:33:39 +01:00
//Slab crafters
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . craftingSlabWood , 6 , 0 ), "bbb" , 'b' , "crafterWood" ));
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( TRepo . craftingSlabWood , 6 , 0 ), "bbb" , 'b' , "craftingTableWood" ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 0 ), "b" , 'b' , new ItemStack ( TRepo . craftingStationWood , 1 , 0 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 1 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 0 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 2 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 1 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 2 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 2 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 2 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 3 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 2 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 4 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 4 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 5 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 3 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 10 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 3 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 11 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 3 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 12 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 3 ), "b" , 'b' , new ItemStack ( TRepo . toolStationWood , 1 , 13 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . craftingSlabWood , 1 , 5 ), "b" , 'b' , new ItemStack ( TRepo . toolForge , 1 , Short . MAX_VALUE ));
2013-11-04 00:33:39 +01:00
// EssenceExtractor Recipe
//Slime Recipes
2013-11-29 23:16:32 -05:00
GameRegistry . addRecipe ( new ItemStack ( TRepo . slimeGel , 1 , 0 ), "##" , "##" , '#' , TRepo . strangeFood );
GameRegistry . addRecipe ( new ItemStack ( TRepo . strangeFood , 4 , 0 ), "#" , '#' , new ItemStack ( TRepo . slimeGel , 1 , 0 ));
GameRegistry . addRecipe ( new ItemStack ( TRepo . slimeGel , 1 , 1 ), "##" , "##" , '#' , Item . slimeBall );
GameRegistry . addRecipe ( new ItemStack ( Item . slimeBall , 4 , 0 ), "#" , '#' , new ItemStack ( TRepo . slimeGel , 1 , 1 ));
2013-11-04 00:33:39 +01:00
//slimeExplosive
2013-11-29 23:16:32 -05:00
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . slimeExplosive , 1 , 0 ), Item . slimeBall , Block . tnt );
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . slimeExplosive , 1 , 2 ), TRepo . strangeFood , Block . tnt );
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( TRepo . slimeExplosive , 1 , 0 ), "slimeball" , Block . tnt ));
2013-11-04 00:33:39 +01:00
2013-11-29 23:16:32 -05:00
GameRegistry . addShapelessRecipe ( new ItemStack ( TRepo . slimeChannel , 1 , 0 ), new ItemStack ( TRepo . slimeGel , 1 , Short . MAX_VALUE ), new ItemStack ( Item . redstone ));
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( TRepo . slimePad , 1 , 0 ), TRepo . slimeChannel , "slimeBall" ));
2013-11-04 00:33:39 +01:00
}
private void addRecipesForFurnace ()
{
2013-11-29 23:16:32 -05:00
FurnaceRecipes . smelting (). addSmelting ( TRepo . craftedSoil . blockID , 3 , new ItemStack ( TRepo . craftedSoil , 1 , 4 ), 0 . 2f ); //Concecrated Soil
FurnaceRecipes . smelting (). addSmelting ( TRepo . craftedSoil . blockID , 0 , new ItemStack ( TRepo . materials , 1 , 1 ), 2f ); //Slime
FurnaceRecipes . smelting (). addSmelting ( TRepo . craftedSoil . blockID , 1 , new ItemStack ( TRepo . materials , 1 , 2 ), 2f ); //Seared brick item
FurnaceRecipes . smelting (). addSmelting ( TRepo . craftedSoil . blockID , 2 , new ItemStack ( TRepo . materials , 1 , 17 ), 2f ); //Blue Slime
//FurnaceRecipes.smelting().addSmelting(TRepo.oreSlag.blockID, 1, new ItemStack(TRepo.materials, 1, 3), 3f);
//FurnaceRecipes.smelting().addSmelting(TRepo.oreSlag.blockID, 2, new ItemStack(TRepo.materials, 1, 4), 3f);
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreSlag . blockID , 3 , new ItemStack ( TRepo . materials , 1 , 9 ), 0 . 5f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreSlag . blockID , 4 , new ItemStack ( TRepo . materials , 1 , 10 ), 0 . 5f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreSlag . blockID , 5 , new ItemStack ( TRepo . materials , 1 , 11 ), 0 . 5f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreBerries . itemID , 0 , new ItemStack ( TRepo . materials , 1 , 19 ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreBerries . itemID , 1 , new ItemStack ( Item . goldNugget ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreBerries . itemID , 2 , new ItemStack ( TRepo . materials , 1 , 20 ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreBerries . itemID , 3 , new ItemStack ( TRepo . materials , 1 , 21 ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreBerries . itemID , 4 , new ItemStack ( TRepo . materials , 1 , 22 ), 0 . 2f );
//FurnaceRecipes.smelting().addSmelting(TRepo.oreBerries.itemID, 5, new ItemStack(TRepo.materials, 1, 23), 0.2f);
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreGravel . blockID , 0 , new ItemStack ( Item . ingotIron ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreGravel . blockID , 1 , new ItemStack ( Item . ingotGold ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreGravel . blockID , 2 , new ItemStack ( TRepo . materials , 1 , 9 ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreGravel . blockID , 3 , new ItemStack ( TRepo . materials , 1 , 10 ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . oreGravel . blockID , 4 , new ItemStack ( TRepo . materials , 1 , 12 ), 0 . 2f );
FurnaceRecipes . smelting (). addSmelting ( TRepo . speedBlock . blockID , 0 , new ItemStack ( TRepo . speedBlock , 1 , 2 ), 0 . 2f );
2013-11-04 00:33:39 +01:00
}
private void addPartMapping ()
2013-07-26 21:18:53 -07:00
{
/* Tools */
2013-11-29 23:16:32 -05:00
patternOutputs = new Item [] { TRepo . toolRod , TRepo . pickaxeHead , TRepo . shovelHead , TRepo . hatchetHead , TRepo . swordBlade , TRepo . wideGuard , TRepo . handGuard , TRepo . crossbar , TRepo . binding ,
TRepo . frypanHead , TRepo . signHead , TRepo . knifeBlade , TRepo . chiselHead , TRepo . toughRod , TRepo . toughBinding , TRepo . largePlate , TRepo . broadAxeHead , TRepo . scytheBlade , TRepo . excavatorHead ,
TRepo . largeSwordBlade , TRepo . hammerHead , TRepo . fullGuard , null , null , TRepo . arrowhead , null };
2013-07-26 21:18:53 -07:00
2013-11-16 20:36:00 -08:00
int [] nonMetals = { 0 , 1 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 17 };
2013-07-26 21:18:53 -07:00
if ( PHConstruct . craftMetalTools )
{
for ( int mat = 0 ; mat < 18 ; mat ++ )
{
for ( int meta = 0 ; meta < patternOutputs . length ; meta ++ )
{
if ( patternOutputs [ meta ] != null )
2013-11-29 23:16:32 -05:00
TConstructRegistry . addPartMapping ( TRepo . woodPattern . itemID , meta + 1 , mat , new ItemStack ( patternOutputs [ meta ] , 1 , mat ));
2013-07-26 21:18:53 -07:00
}
}
}
else
{
for ( int mat = 0 ; mat < nonMetals . length ; mat ++ )
{
for ( int meta = 0 ; meta < patternOutputs . length ; meta ++ )
{
if ( patternOutputs [ meta ] != null )
2013-11-29 23:16:32 -05:00
TConstructRegistry . addPartMapping ( TRepo . woodPattern . itemID , meta + 1 , nonMetals [ mat ] , new ItemStack ( patternOutputs [ meta ] , 1 , nonMetals [ mat ] ));
2013-07-26 21:18:53 -07:00
}
}
}
2013-11-04 00:33:39 +01:00
}
2013-07-26 21:18:53 -07:00
2013-11-04 00:33:39 +01:00
private void addRecipesForToolBuilder ()
{
2013-07-26 21:18:53 -07:00
ToolBuilder tb = ToolBuilder . instance ;
2013-11-29 23:16:32 -05:00
tb . addNormalToolRecipe ( TRepo . pickaxe , TRepo . pickaxeHead , TRepo . toolRod , TRepo . binding );
tb . addNormalToolRecipe ( TRepo . broadsword , TRepo . swordBlade , TRepo . toolRod , TRepo . wideGuard );
tb . addNormalToolRecipe ( TRepo . hatchet , TRepo . hatchetHead , TRepo . toolRod );
tb . addNormalToolRecipe ( TRepo . shovel , TRepo . shovelHead , TRepo . toolRod );
tb . addNormalToolRecipe ( TRepo . longsword , TRepo . swordBlade , TRepo . toolRod , TRepo . handGuard );
tb . addNormalToolRecipe ( TRepo . rapier , TRepo . swordBlade , TRepo . toolRod , TRepo . crossbar );
tb . addNormalToolRecipe ( TRepo . frypan , TRepo . frypanHead , TRepo . toolRod );
tb . addNormalToolRecipe ( TRepo . battlesign , TRepo . signHead , TRepo . toolRod );
tb . addNormalToolRecipe ( TRepo . mattock , TRepo . hatchetHead , TRepo . toolRod , TRepo . shovelHead );
tb . addNormalToolRecipe ( TRepo . dagger , TRepo . knifeBlade , TRepo . toolRod , TRepo . crossbar );
tb . addNormalToolRecipe ( TRepo . cutlass , TRepo . swordBlade , TRepo . toolRod , TRepo . fullGuard );
tb . addNormalToolRecipe ( TRepo . chisel , TRepo . chiselHead , TRepo . toolRod );
tb . addNormalToolRecipe ( TRepo . scythe , TRepo . scytheBlade , TRepo . toughRod , TRepo . toughBinding , TRepo . toughRod );
tb . addNormalToolRecipe ( TRepo . lumberaxe , TRepo . broadAxeHead , TRepo . toughRod , TRepo . largePlate , TRepo . toughBinding );
tb . addNormalToolRecipe ( TRepo . cleaver , TRepo . largeSwordBlade , TRepo . toughRod , TRepo . largePlate , TRepo . toughRod );
tb . addNormalToolRecipe ( TRepo . excavator , TRepo . excavatorHead , TRepo . toughRod , TRepo . largePlate , TRepo . toughBinding );
tb . addNormalToolRecipe ( TRepo . hammer , TRepo . hammerHead , TRepo . toughRod , TRepo . largePlate , TRepo . largePlate );
tb . addNormalToolRecipe ( TRepo . battleaxe , TRepo . broadAxeHead , TRepo . toughRod , TRepo . broadAxeHead , TRepo . toughBinding );
//tb.addNormalToolRecipe(TRepo.shortbow, TRepo.toolRod, TRepo.bowstring, TRepo.toolRod);
BowRecipe recipe = new BowRecipe ( TRepo . toolRod , TRepo . bowstring , TRepo . toolRod , TRepo . shortbow );
2013-08-01 20:54:56 -07:00
tb . addCustomToolRecipe ( recipe );
2013-11-29 23:16:32 -05:00
tb . addNormalToolRecipe ( TRepo . arrow , TRepo . arrowhead , TRepo . toolRod , TRepo . fletching );
2013-07-26 21:18:53 -07:00
ItemStack diamond = new ItemStack ( Item . diamond );
tb . registerToolMod ( new ModRepair ());
tb . registerToolMod ( new ModDurability ( new ItemStack [] { diamond }, 0 , 500 , 0f , 3 , "Diamond" , "\u00a7bDurability +500" , "\u00a7b" ));
tb . registerToolMod ( new ModDurability ( new ItemStack [] { new ItemStack ( Item . emerald ) }, 1 , 0 , 0 . 5f , 2 , "Emerald" , "\u00a72Durability +50%" , "\u00a72" ));
2013-11-29 23:16:32 -05:00
TRepo . modF = new ModFlux ();
tb . registerToolMod ( TRepo . modF );
2013-11-09 02:15:29 -05:00
2013-07-26 21:18:53 -07:00
ItemStack redstoneItem = new ItemStack ( Item . redstone );
ItemStack redstoneBlock = new ItemStack ( Block . blockRedstone );
tb . registerToolMod ( new ModRedstone ( new ItemStack [] { redstoneItem }, 2 , 1 ));
tb . registerToolMod ( new ModRedstone ( new ItemStack [] { redstoneItem , redstoneItem }, 2 , 2 ));
tb . registerToolMod ( new ModRedstone ( new ItemStack [] { redstoneBlock }, 2 , 9 ));
tb . registerToolMod ( new ModRedstone ( new ItemStack [] { redstoneItem , redstoneBlock }, 2 , 10 ));
tb . registerToolMod ( new ModRedstone ( new ItemStack [] { redstoneBlock , redstoneBlock }, 2 , 18 ));
ItemStack lapisItem = new ItemStack ( Item . dyePowder , 1 , 4 );
ItemStack lapisBlock = new ItemStack ( Block . blockLapis );
2013-11-29 23:16:32 -05:00
TRepo . modL = new ModLapis ( new ItemStack [] { lapisItem }, 10 , 1 );
tb . registerToolMod ( TRepo . modL );
2013-07-26 21:18:53 -07:00
tb . registerToolMod ( new ModLapis ( new ItemStack [] { lapisItem , lapisItem }, 10 , 2 ));
tb . registerToolMod ( new ModLapis ( new ItemStack [] { lapisBlock }, 10 , 9 ));
tb . registerToolMod ( new ModLapis ( new ItemStack [] { lapisItem , lapisBlock }, 10 , 10 ));
tb . registerToolMod ( new ModLapis ( new ItemStack [] { lapisBlock , lapisBlock }, 10 , 18 ));
2013-11-29 23:16:32 -05:00
tb . registerToolMod ( new ModInteger ( new ItemStack [] { new ItemStack ( TRepo . materials , 1 , 6 ) }, 4 , "Moss" , 3 , "\u00a72" , "Auto-Repair" ));
2013-07-26 21:18:53 -07:00
ItemStack blazePowder = new ItemStack ( Item . blazePowder );
tb . registerToolMod ( new ModBlaze ( new ItemStack [] { blazePowder }, 7 , 1 ));
tb . registerToolMod ( new ModBlaze ( new ItemStack [] { blazePowder , blazePowder }, 7 , 2 ));
2013-11-29 23:16:32 -05:00
tb . registerToolMod ( new ModAutoSmelt ( new ItemStack [] { new ItemStack ( TRepo . materials , 1 , 7 ) }, 6 , "Lava" , "\u00a74" , "Auto-Smelt" ));
tb . registerToolMod ( new ModInteger ( new ItemStack [] { new ItemStack ( TRepo . materials , 1 , 8 ) }, 8 , "Necrotic" , 1 , "\u00a78" , "Life Steal" ));
2013-07-26 21:18:53 -07:00
ItemStack quartzItem = new ItemStack ( Item . netherQuartz );
ItemStack quartzBlock = new ItemStack ( Block . blockNetherQuartz , 1 , Short . MAX_VALUE );
tb . registerToolMod ( new ModAttack ( "Quartz" , new ItemStack [] { quartzItem }, 11 , 1 ));
tb . registerToolMod ( new ModAttack ( "Quartz" , new ItemStack [] { quartzItem , quartzItem }, 11 , 2 ));
tb . registerToolMod ( new ModAttack ( "Quartz" , new ItemStack [] { quartzBlock }, 11 , 4 ));
tb . registerToolMod ( new ModAttack ( "Quartz" , new ItemStack [] { quartzItem , quartzBlock }, 11 , 5 ));
tb . registerToolMod ( new ModAttack ( "Quartz" , new ItemStack [] { quartzBlock , quartzBlock }, 11 , 8 ));
tb . registerToolMod ( new ModExtraModifier ( new ItemStack [] { diamond , new ItemStack ( Block . blockGold ) }, "Tier1Free" ));
tb . registerToolMod ( new ModExtraModifier ( new ItemStack [] { new ItemStack ( Item . netherStar ) }, "Tier2Free" ));
2013-11-29 23:16:32 -05:00
ItemStack silkyJewel = new ItemStack ( TRepo . materials , 1 , 26 );
2013-07-26 21:18:53 -07:00
tb . registerToolMod ( new ModButtertouch ( new ItemStack [] { silkyJewel }, 12 ));
ItemStack piston = new ItemStack ( Block . pistonBase );
tb . registerToolMod ( new ModPiston ( new ItemStack [] { piston }, 3 , 1 ));
tb . registerToolMod ( new ModPiston ( new ItemStack [] { piston , piston }, 3 , 2 ));
tb . registerToolMod ( new ModInteger ( new ItemStack [] { new ItemStack ( Block . obsidian ), new ItemStack ( Item . enderPearl ) }, 13 , "Beheading" , 1 , "\u00a7d" , "Beheading" ));
2013-11-29 23:16:32 -05:00
ItemStack holySoil = new ItemStack ( TRepo . craftedSoil , 1 , 4 );
2013-07-26 21:18:53 -07:00
tb . registerToolMod ( new ModSmite ( "Smite" , new ItemStack [] { holySoil }, 14 , 1 ));
tb . registerToolMod ( new ModSmite ( "Smite" , new ItemStack [] { holySoil , holySoil }, 14 , 2 ));
ItemStack spidereyeball = new ItemStack ( Item . fermentedSpiderEye );
tb . registerToolMod ( new ModAntiSpider ( "Anti-Spider" , new ItemStack [] { spidereyeball }, 15 , 1 ));
tb . registerToolMod ( new ModAntiSpider ( "Anti-Spider" , new ItemStack [] { spidereyeball , spidereyeball }, 15 , 2 ));
2013-11-29 23:16:32 -05:00
ItemStack obsidianPlate = new ItemStack ( TRepo . largePlate , 1 , 6 );
2013-07-26 21:18:53 -07:00
tb . registerToolMod ( new ModReinforced ( new ItemStack [] { obsidianPlate }, 16 , 1 ));
TConstructRegistry . registerActiveToolMod ( new TActiveOmniMod ());
2013-11-04 00:33:39 +01:00
}
2013-07-26 21:18:53 -07:00
2013-11-04 00:33:39 +01:00
private void addRecipesForTableCasting ()
{
2013-07-26 21:18:53 -07:00
/* Smeltery */
2013-11-29 23:16:32 -05:00
ItemStack ingotcast = new ItemStack ( TRepo . metalPattern , 1 , 0 );
ItemStack gemcast = new ItemStack ( TRepo . metalPattern , 1 , 26 );
2013-07-26 21:18:53 -07:00
LiquidCasting tableCasting = TConstructRegistry . instance . getTableCasting ();
//Blank
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( new ItemStack ( TRepo . blankPattern , 1 , 1 ), new FluidStack ( TRepo . moltenAlubrassFluid , TConstruct . ingotLiquidValue ), 80 );
tableCasting . addCastingRecipe ( new ItemStack ( TRepo . blankPattern , 1 , 2 ), new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 2 ), 80 );
tableCasting . addCastingRecipe ( gemcast , new FluidStack ( TRepo . moltenAlubrassFluid , TConstruct . ingotLiquidValue ), new ItemStack ( Item . emerald ), 80 );
tableCasting . addCastingRecipe ( gemcast , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 2 ), new ItemStack ( Item . emerald ), 80 );
2013-07-26 21:18:53 -07:00
//Ingots
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( new ItemStack ( TRepo . materials , 1 , 2 ), new FluidStack ( TRepo . moltenStoneFluid , TConstruct . ingotLiquidValue / 4 ), ingotcast , 80 ); //stone
2013-11-25 04:12:29 -08:00
2013-11-24 23:24:56 -08:00
//Misc
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( new ItemStack ( Item . emerald ), new FluidStack ( TRepo . moltenEmeraldFluid , 640 ), gemcast , 80 );
tableCasting . addCastingRecipe ( new ItemStack ( TRepo . materials , 1 , 36 ), new FluidStack ( TRepo . glueFluid , TConstruct . ingotLiquidValue ), null , 50 );
2013-07-26 21:18:53 -07:00
//Buckets
ItemStack bucket = new ItemStack ( Item . bucketEmpty );
2013-11-07 22:23:20 -06:00
2013-11-05 17:07:51 +01:00
for ( int sc = 0 ; sc < 24 ; sc ++ )
2013-10-30 04:08:12 +01:00
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( new ItemStack ( TRepo . buckets , 1 , sc ), new FluidStack ( TRepo . fluids [ sc ] , FluidContainerRegistry . BUCKET_VOLUME ), bucket , true , 10 );
2013-10-30 04:08:12 +01:00
}
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( new ItemStack ( TRepo . buckets , 1 , 26 ), new FluidStack ( TRepo . fluids [ 26 ] , FluidContainerRegistry . BUCKET_VOLUME ), bucket , true , 10 );
2013-07-26 21:18:53 -07:00
2013-11-04 00:33:39 +01:00
// Clear glass pane casting
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( new ItemStack ( TRepo . glassPane ), new FluidStack ( TRepo . moltenGlassFluid , 250 ), null , 80 );
2013-07-26 21:18:53 -07:00
2013-11-04 00:33:39 +01:00
// Metal toolpart casting
2013-11-29 23:16:32 -05:00
liquids = new FluidStack [] { new FluidStack ( TRepo . moltenIronFluid , 1 ), new FluidStack ( TRepo . moltenCopperFluid , 1 ), new FluidStack ( TRepo . moltenCobaltFluid , 1 ),
new FluidStack ( TRepo . moltenArditeFluid , 1 ), new FluidStack ( TRepo . moltenManyullynFluid , 1 ), new FluidStack ( TRepo . moltenBronzeFluid , 1 ), new FluidStack ( TRepo . moltenAlumiteFluid , 1 ),
new FluidStack ( TRepo . moltenObsidianFluid , 1 ), new FluidStack ( TRepo . moltenSteelFluid , 1 ), new FluidStack ( TRepo . pigIronFluid , 1 ) };
2013-11-19 20:57:52 -08:00
int [] liquidDamage = new int [] { 2 , 13 , 10 , 11 , 12 , 14 , 15 , 6 , 16 , 18 }; //ItemStack damage value
2013-11-04 00:33:39 +01:00
int fluidAmount = 0 ;
Fluid fs = null ;
2013-07-26 21:18:53 -07:00
for ( int iter = 0 ; iter < patternOutputs . length ; iter ++ )
{
if ( patternOutputs [ iter ] != null )
{
2013-11-29 23:16:32 -05:00
ItemStack cast = new ItemStack ( TRepo . metalPattern , 1 , iter + 1 );
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( cast , new FluidStack ( TRepo . moltenAlubrassFluid , TConstruct . ingotLiquidValue ), new ItemStack ( patternOutputs [ iter ] , 1 , Short . MAX_VALUE ), false , 50 );
tableCasting . addCastingRecipe ( cast , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 2 ), new ItemStack ( patternOutputs [ iter ] , 1 , Short . MAX_VALUE ), false , 50 );
2013-07-26 21:18:53 -07:00
for ( int iterTwo = 0 ; iterTwo < liquids . length ; iterTwo ++ )
{
2013-11-04 00:33:39 +01:00
fs = liquids [ iterTwo ] . getFluid ();
2013-11-29 23:16:32 -05:00
fluidAmount = (( IPattern ) TRepo . metalPattern ). getPatternCost ( cast ) * TConstruct . ingotLiquidValue / 2 ;
2013-07-26 21:18:53 -07:00
ItemStack metalCast = new ItemStack ( patternOutputs [ iter ] , 1 , liquidDamage [ iterTwo ] );
2013-11-04 00:33:39 +01:00
tableCasting . addCastingRecipe ( metalCast , new FluidStack ( fs , fluidAmount ), cast , 50 );
Smeltery . addMelting ( FluidType . getFluidType ( fs ), metalCast , 0 , fluidAmount );
2013-07-26 21:18:53 -07:00
}
}
}
2013-11-29 23:16:32 -05:00
ItemStack [] ingotShapes = { new ItemStack ( Item . brick ), new ItemStack ( Item . netherrackBrick ), new ItemStack ( TRepo . materials , 1 , 2 ) };
2013-08-01 20:54:56 -07:00
for ( int i = 0 ; i < ingotShapes . length ; i ++ )
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( ingotcast , new FluidStack ( TRepo . moltenAlubrassFluid , TConstruct . ingotLiquidValue ), ingotShapes [ i ] , false , 50 );
tableCasting . addCastingRecipe ( ingotcast , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 2 ), ingotShapes [ i ] , false , 50 );
2013-08-01 20:54:56 -07:00
}
2013-11-29 23:16:32 -05:00
ItemStack fullguardCast = new ItemStack ( TRepo . metalPattern , 1 , 22 );
tableCasting . addCastingRecipe ( fullguardCast , new FluidStack ( TRepo . moltenAlubrassFluid , TConstruct . ingotLiquidValue ), new ItemStack ( TRepo . fullGuard , 1 , Short . MAX_VALUE ), false , 50 );
tableCasting . addCastingRecipe ( fullguardCast , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 2 ), new ItemStack ( TRepo . fullGuard , 1 , Short . MAX_VALUE ), false , 50 );
2013-11-04 00:33:39 +01:00
// Golden Food Stuff
FluidStack goldAmount = null ;
if ( PHConstruct . goldAppleRecipe )
{
2013-11-29 23:16:32 -05:00
goldAmount = new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 8 );
2013-11-04 00:33:39 +01:00
}
else
{
2013-11-29 23:16:32 -05:00
goldAmount = new FluidStack ( TRepo . moltenGoldFluid , TConstruct . nuggetLiquidValue * 8 );
2013-11-04 00:33:39 +01:00
}
tableCasting . addCastingRecipe ( new ItemStack ( Item . appleGold , 1 ), goldAmount , new ItemStack ( Item . appleRed ), true , 50 );
tableCasting . addCastingRecipe ( new ItemStack ( Item . goldenCarrot , 1 ), goldAmount , new ItemStack ( Item . carrot ), true , 50 );
tableCasting . addCastingRecipe ( new ItemStack ( Item . speckledMelon , 1 ), goldAmount , new ItemStack ( Item . melon ), true , 50 );
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( new ItemStack ( TRepo . goldHead ), goldAmount , new ItemStack ( Item . skull , 1 , 3 ), true , 50 );
2013-11-04 00:33:39 +01:00
}
private void addRecipesForBasinCasting ()
{
2013-07-26 21:18:53 -07:00
LiquidCasting basinCasting = TConstructRegistry . getBasinCasting ();
2013-11-04 00:33:39 +01:00
// Block Casting
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( new ItemStack ( Block . blockIron ), new FluidStack ( TRepo . moltenIronFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //Iron
basinCasting . addCastingRecipe ( new ItemStack ( Block . blockGold ), new FluidStack ( TRepo . moltenGoldFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //gold
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 3 ), new FluidStack ( TRepo . moltenCopperFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //copper
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 5 ), new FluidStack ( TRepo . moltenTinFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //tin
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 6 ), new FluidStack ( TRepo . moltenAluminumFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //aluminum
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 0 ), new FluidStack ( TRepo . moltenCobaltFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //cobalt
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 1 ), new FluidStack ( TRepo . moltenArditeFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //ardite
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 4 ), new FluidStack ( TRepo . moltenBronzeFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //bronze
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 7 ), new FluidStack ( TRepo . moltenAlubrassFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //albrass
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 2 ), new FluidStack ( TRepo . moltenManyullynFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //manyullyn
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 8 ), new FluidStack ( TRepo . moltenAlumiteFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //alumite
basinCasting . addCastingRecipe ( new ItemStack ( Block . obsidian ), new FluidStack ( TRepo . moltenObsidianFluid , TConstruct . oreLiquidValue ), null , true , 100 ); // obsidian
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock , 1 , 9 ), new FluidStack ( TRepo . moltenSteelFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //steel
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . clearGlass , 1 , 0 ), new FluidStack ( TRepo . moltenGlassFluid , FluidContainerRegistry . BUCKET_VOLUME ), null , true , 100 ); //glass
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . smeltery , 1 , 4 ), new FluidStack ( TRepo . moltenStoneFluid , TConstruct . ingotLiquidValue ), null , true , 100 ); //seared stone
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . smeltery , 1 , 5 ), new FluidStack ( TRepo . moltenStoneFluid , TConstruct . chunkLiquidValue ), new ItemStack ( Block . cobblestone ), true , 100 );
basinCasting . addCastingRecipe ( new ItemStack ( Block . blockEmerald ), new FluidStack ( TRepo . moltenEmeraldFluid , 640 * 9 ), null , true , 100 ); //emerald
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . speedBlock , 1 , 0 ), new FluidStack ( TRepo . moltenTinFluid , TConstruct . nuggetLiquidValue ), new ItemStack ( Block . gravel ), true , 100 ); //brownstone
basinCasting . addCastingRecipe ( new ItemStack ( Block . whiteStone ), new FluidStack ( TRepo . moltenEnderFluid , TConstruct . chunkLiquidValue ), new ItemStack ( Block . obsidian ), true , 100 ); //endstone
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . metalBlock . blockID , 1 , 10 ), new FluidStack ( TRepo . moltenEnderFluid , 1000 ), null , true , 100 ); //ender
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . glueBlock ), new FluidStack ( TRepo . glueFluid , TConstruct . blockLiquidValue ), null , true , 100 ); //glue
2013-07-26 21:18:53 -07:00
2013-11-05 17:07:51 +01:00
// basinCasting.addCastingRecipe(new ItemStack(slimeGel, 1, 0), new FluidStack(blueSlimeFluid, FluidContainerRegistry.BUCKET_VOLUME), null, true, 100);
2013-07-18 12:58:08 -07:00
2013-11-04 00:33:39 +01:00
//Armor casts
2013-11-23 19:07:27 -08:00
/*FluidRenderProperties frp = new FluidRenderProperties(Applications.BASIN.minHeight, 0.65F, Applications.BASIN);
2013-11-29 23:16:32 -05:00
FluidStack aluFlu = new FluidStack(TRepo.moltenAlubrassFluid, TConstruct.ingotLiquidValue * 10);
FluidStack gloFlu = new FluidStack(TRepo.moltenGoldFluid, TConstruct.ingotLiquidValue * 10);
2013-11-04 00:33:39 +01:00
ItemStack[] armor = { new ItemStack(helmetWood), new ItemStack(chestplateWood), new ItemStack(leggingsWood), new ItemStack(bootsWood) };
for (int sc = 0; sc < armor.length; sc++)
2013-07-26 21:18:53 -07:00
{
2013-11-04 00:33:39 +01:00
basinCasting.addCastingRecipe(new ItemStack(armorPattern, 1, sc), aluFlu, armor[sc], 50, frp);
basinCasting.addCastingRecipe(new ItemStack(armorPattern, 1, sc), gloFlu, armor[sc], 50, frp);
2013-11-23 19:07:27 -08:00
}*/
2013-11-04 00:33:39 +01:00
}
2013-07-26 21:18:53 -07:00
2013-11-04 00:33:39 +01:00
private void addRecipesForSmeltery ()
{
2013-11-17 22:37:34 -06:00
//Alloy Smelting
2013-11-29 23:16:32 -05:00
Smeltery . addAlloyMixing ( new FluidStack ( TRepo . moltenBronzeFluid , TConstruct . ingotLiquidValue * PHConstruct . ingotsBronzeAlloy ), new FluidStack ( TRepo . moltenCopperFluid ,
TConstruct . ingotLiquidValue * 3 ), new FluidStack ( TRepo . moltenTinFluid , TConstruct . ingotLiquidValue )); //Bronze
Smeltery . addAlloyMixing ( new FluidStack ( TRepo . moltenAlubrassFluid , TConstruct . ingotLiquidValue * PHConstruct . ingotsAluminumBrassAlloy ), new FluidStack ( TRepo . moltenAluminumFluid ,
TConstruct . ingotLiquidValue * 3 ), new FluidStack ( TRepo . moltenCopperFluid , TConstruct . ingotLiquidValue * 1 )); //Aluminum Brass
Smeltery . addAlloyMixing ( new FluidStack ( TRepo . moltenAlumiteFluid , TConstruct . ingotLiquidValue * PHConstruct . ingotsAlumiteAlloy ), new FluidStack ( TRepo . moltenAluminumFluid ,
TConstruct . ingotLiquidValue * 5 ), new FluidStack ( TRepo . moltenIronFluid , TConstruct . ingotLiquidValue * 2 ), new FluidStack ( TRepo . moltenObsidianFluid , TConstruct . ingotLiquidValue * 2 )); //Alumite
Smeltery . addAlloyMixing ( new FluidStack ( TRepo . moltenManyullynFluid , TConstruct . ingotLiquidValue * PHConstruct . ingotsManyullynAlloy ), new FluidStack ( TRepo . moltenCobaltFluid ,
TConstruct . ingotLiquidValue ), new FluidStack ( TRepo . moltenArditeFluid , TConstruct . ingotLiquidValue )); //Manyullyn
Smeltery . addAlloyMixing ( new FluidStack ( TRepo . pigIronFluid , TConstruct . ingotLiquidValue * PHConstruct . ingotsPigironAlloy ), new FluidStack ( TRepo . moltenIronFluid , TConstruct . ingotLiquidValue ),
new FluidStack ( TRepo . moltenEmeraldFluid , 640 ), new FluidStack ( TRepo . bloodFluid , 80 )); //Pigiron
2013-07-26 21:18:53 -07:00
2013-11-06 23:43:03 +01:00
// Stone parts
for ( int sc = 0 ; sc < patternOutputs . length ; sc ++ )
{
if ( patternOutputs [ sc ] != null )
{
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( FluidType . Stone , new ItemStack ( patternOutputs [ sc ] , 1 , 1 ), 1 , ( 8 * (( IPattern ) TRepo . woodPattern ). getPatternCost ( new ItemStack ( TRepo . woodPattern , 1 , sc + 1 ))) / 2 );
2013-11-06 23:43:03 +01:00
}
}
// Chunks
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( FluidType . Stone , new ItemStack ( TRepo . toolShard , 1 , 1 ), 0 , 4 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( TRepo . toolShard , 1 , 2 ), 0 , TConstruct . chunkLiquidValue );
Smeltery . addMelting ( FluidType . Obsidian , new ItemStack ( TRepo . toolShard , 1 , 6 ), 0 , TConstruct . chunkLiquidValue );
Smeltery . addMelting ( FluidType . Cobalt , new ItemStack ( TRepo . toolShard , 1 , 10 ), 0 , TConstruct . chunkLiquidValue );
Smeltery . addMelting ( FluidType . Ardite , new ItemStack ( TRepo . toolShard , 1 , 11 ), 0 , TConstruct . chunkLiquidValue );
Smeltery . addMelting ( FluidType . Manyullyn , new ItemStack ( TRepo . toolShard , 1 , 12 ), 0 , TConstruct . chunkLiquidValue );
Smeltery . addMelting ( FluidType . Copper , new ItemStack ( TRepo . toolShard , 1 , 13 ), 0 , TConstruct . chunkLiquidValue );
Smeltery . addMelting ( FluidType . Bronze , new ItemStack ( TRepo . toolShard , 1 , 14 ), 0 , TConstruct . chunkLiquidValue );
Smeltery . addMelting ( FluidType . Alumite , new ItemStack ( TRepo . toolShard , 1 , 15 ), 0 , TConstruct . chunkLiquidValue );
Smeltery . addMelting ( FluidType . Steel , new ItemStack ( TRepo . toolShard , 1 , 16 ), 0 , TConstruct . chunkLiquidValue );
2013-11-06 23:43:03 +01:00
// Items
2013-11-07 22:23:20 -06:00
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( FluidType . AluminumBrass , new ItemStack ( TRepo . blankPattern , 4 , 1 ), - 50 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( TRepo . blankPattern , 4 , 2 ), - 50 , TConstruct . ingotLiquidValue * 2 );
Smeltery . addMelting ( FluidType . Glue , new ItemStack ( TRepo . materials , 1 , 36 ), 0 , TConstruct . ingotLiquidValue );
2013-11-04 00:33:39 +01:00
2013-11-07 23:13:44 -08:00
Smeltery . addMelting ( FluidType . Ender , new ItemStack ( Item . enderPearl , 4 ), 0 , 250 );
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( TRepo . metalBlock , 10 , 50 , new FluidStack ( TRepo . moltenEnderFluid , 1000 ));
2013-11-04 00:33:39 +01:00
Smeltery . addMelting ( FluidType . Water , new ItemStack ( Item . snowball , 1 , 0 ), 0 , 125 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . flintAndSteel , 1 , 0 ), 0 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . compass , 1 , 0 ), 0 , TConstruct . ingotLiquidValue * 4 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . bucketEmpty ), 0 , TConstruct . ingotLiquidValue * 3 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . minecartEmpty ), 0 , TConstruct . ingotLiquidValue * 5 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . minecartCrate ), 0 , TConstruct . ingotLiquidValue * 5 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . minecartPowered ), 0 , TConstruct . ingotLiquidValue * 5 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . minecartHopper ), 50 , TConstruct . ingotLiquidValue * 10 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . doorIron ), 0 , TConstruct . ingotLiquidValue * 6 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . cauldron ), 0 , TConstruct . ingotLiquidValue * 7 );
2013-11-17 20:18:23 -06:00
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . shears ), 0 , TConstruct . ingotLiquidValue * 2 );
2013-11-25 16:22:52 -08:00
Smeltery . addMelting ( FluidType . Emerald , new ItemStack ( Item . emerald ), - 50 , 640 );
2013-11-04 00:33:39 +01:00
2013-11-19 20:57:52 -08:00
//Blocks melt as themselves!
2013-11-07 23:13:44 -08:00
//Ore
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( Block . oreIron , 0 , 600 , new FluidStack ( TRepo . moltenIronFluid , TConstruct . ingotLiquidValue * 2 ));
Smeltery . addMelting ( Block . oreGold , 0 , 400 , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 2 ));
Smeltery . addMelting ( TRepo . oreGravel , 0 , 600 , new FluidStack ( TRepo . moltenIronFluid , TConstruct . ingotLiquidValue * 2 ));
Smeltery . addMelting ( TRepo . oreGravel , 1 , 400 , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 2 ));
2013-11-07 23:13:44 -08:00
2013-11-04 00:33:39 +01:00
//Blocks
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( Block . blockIron , 0 , 600 , new FluidStack ( TRepo . moltenIronFluid , TConstruct . ingotLiquidValue * 9 ));
Smeltery . addMelting ( Block . blockGold , 0 , 400 , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue * 9 ));
Smeltery . addMelting ( Block . obsidian , 0 , 800 , new FluidStack ( TRepo . moltenObsidianFluid , TConstruct . ingotLiquidValue * 2 ));
2013-11-07 23:13:44 -08:00
Smeltery . addMelting ( Block . ice , 0 , 75 , new FluidStack ( FluidRegistry . getFluid ( "water" ), 1000 ));
Smeltery . addMelting ( Block . blockSnow , 0 , 75 , new FluidStack ( FluidRegistry . getFluid ( "water" ), 500 ));
Smeltery . addMelting ( Block . snow , 0 , 75 , new FluidStack ( FluidRegistry . getFluid ( "water" ), 250 ));
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( Block . sand , 0 , 625 , new FluidStack ( TRepo . moltenGlassFluid , FluidContainerRegistry . BUCKET_VOLUME ));
Smeltery . addMelting ( Block . glass , 0 , 625 , new FluidStack ( TRepo . moltenGlassFluid , FluidContainerRegistry . BUCKET_VOLUME ));
Smeltery . addMelting ( Block . thinGlass , 0 , 625 , new FluidStack ( TRepo . moltenGlassFluid , 250 ));
Smeltery . addMelting ( Block . stone , 0 , 800 , new FluidStack ( TRepo . moltenStoneFluid , TConstruct . ingotLiquidValue / 18 ));
Smeltery . addMelting ( Block . cobblestone , 0 , 800 , new FluidStack ( TRepo . moltenStoneFluid , TConstruct . ingotLiquidValue / 18 ));
Smeltery . addMelting ( Block . blockEmerald , 0 , 800 , new FluidStack ( TRepo . moltenEmeraldFluid , 640 * 9 ));
Smeltery . addMelting ( TRepo . glueBlock , 0 , 250 , new FluidStack ( TRepo . glueFluid , TConstruct . blockLiquidValue ));
Smeltery . addMelting ( TRepo . craftedSoil , 1 , 600 , new FluidStack ( TRepo . moltenStoneFluid , TConstruct . ingotLiquidValue / 4 ));
Smeltery . addMelting ( TRepo . clearGlass , 0 , 500 , new FluidStack ( TRepo . moltenGlassFluid , 1000 ));
Smeltery . addMelting ( TRepo . glassPane , 0 , 350 , new FluidStack ( TRepo . moltenGlassFluid , 250 ));
2013-11-07 23:13:44 -08:00
2013-11-04 00:33:39 +01:00
for ( int i = 0 ; i < 16 ; i ++ )
{
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( TRepo . stainedGlassClear , i , 500 , new FluidStack ( TRepo . moltenGlassFluid , 1000 ));
Smeltery . addMelting ( TRepo . stainedGlassClearPane , i , 350 , new FluidStack ( TRepo . moltenGlassFluid , 250 ));
2013-11-04 00:33:39 +01:00
}
2013-11-07 23:13:44 -08:00
//Bricks
2013-11-29 23:16:32 -05:00
Smeltery . addMelting ( TRepo . multiBrick , 4 , 600 , new FluidStack ( TRepo . moltenIronFluid , TConstruct . ingotLiquidValue ));
Smeltery . addMelting ( TRepo . multiBrickFancy , 4 , 600 , new FluidStack ( TRepo . moltenIronFluid , TConstruct . ingotLiquidValue ));
Smeltery . addMelting ( TRepo . multiBrick , 5 , 400 , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue ));
Smeltery . addMelting ( TRepo . multiBrickFancy , 5 , 400 , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . ingotLiquidValue ));
Smeltery . addMelting ( TRepo . multiBrick , 0 , 800 , new FluidStack ( TRepo . moltenObsidianFluid , TConstruct . ingotLiquidValue * 2 ));
Smeltery . addMelting ( TRepo . multiBrickFancy , 0 , 800 , new FluidStack ( TRepo . moltenObsidianFluid , TConstruct . ingotLiquidValue * 2 ));
2013-11-07 23:13:44 -08:00
//Vanilla blocks
2013-11-04 00:33:39 +01:00
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . fenceIron ), 0 , TConstruct . ingotLiquidValue * 6 / 16 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . pressurePlateIron ), 0 , TConstruct . oreLiquidValue );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Block . pressurePlateGold , 4 ), 0 , TConstruct . oreLiquidValue );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . rail ), 0 , TConstruct . ingotLiquidValue * 6 / 16 );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Block . railPowered ), 0 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . railDetector ), 0 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . railActivator ), 0 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Obsidian , new ItemStack ( Block . enchantmentTable ), 0 , TConstruct . ingotLiquidValue * 4 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . cauldron ), 0 , TConstruct . ingotLiquidValue * 7 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . anvil , 1 , 0 ), 200 , TConstruct . ingotLiquidValue * 31 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . anvil , 1 , 1 ), 200 , TConstruct . ingotLiquidValue * 31 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . anvil , 1 , 2 ), 200 , TConstruct . ingotLiquidValue * 31 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Block . hopperBlock ), 0 , TConstruct . ingotLiquidValue * 5 );
//Vanilla Armor
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . helmetIron , 1 , 0 ), 50 , TConstruct . ingotLiquidValue * 5 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . plateIron , 1 , 0 ), 50 , TConstruct . ingotLiquidValue * 8 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . legsIron , 1 , 0 ), 50 , TConstruct . ingotLiquidValue * 7 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . bootsIron , 1 , 0 ), 50 , TConstruct . ingotLiquidValue * 4 );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . helmetGold , 1 , 0 ), 50 , TConstruct . ingotLiquidValue * 5 );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . plateGold , 1 , 0 ), 50 , TConstruct . ingotLiquidValue * 8 );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . legsGold , 1 , 0 ), 50 , TConstruct . ingotLiquidValue * 7 );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . bootsGold , 1 , 0 ), 50 , TConstruct . ingotLiquidValue * 4 );
Smeltery . addMelting ( FluidType . Steel , new ItemStack ( Item . helmetChain , 1 , 0 ), 25 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Steel , new ItemStack ( Item . plateChain , 1 , 0 ), 50 , TConstruct . oreLiquidValue );
Smeltery . addMelting ( FluidType . Steel , new ItemStack ( Item . legsChain , 1 , 0 ), 50 , TConstruct . oreLiquidValue );
Smeltery . addMelting ( FluidType . Steel , new ItemStack ( Item . bootsChain , 1 , 0 ), 25 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . horseArmorIron , 1 ), 100 , TConstruct . ingotLiquidValue * 8 );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . horseArmorGold , 1 ), 100 , TConstruct . ingotLiquidValue * 8 );
2013-07-26 21:18:53 -07:00
//Vanilla tools
2013-11-04 00:33:39 +01:00
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . hoeIron , 1 , 0 ), 0 , TConstruct . oreLiquidValue );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . swordIron , 1 , 0 ), 0 , TConstruct . oreLiquidValue );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . shovelIron , 1 , 0 ), 0 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . pickaxeIron , 1 , 0 ), 0 , TConstruct . ingotLiquidValue * 3 );
Smeltery . addMelting ( FluidType . Iron , new ItemStack ( Item . axeIron , 1 , 0 ), 0 , TConstruct . ingotLiquidValue * 3 );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . hoeGold , 1 , 0 ), 0 , TConstruct . oreLiquidValue );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . swordGold , 1 , 0 ), 0 , TConstruct . oreLiquidValue );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . shovelGold , 1 , 0 ), 0 , TConstruct . ingotLiquidValue );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . pickaxeGold , 1 , 0 ), 0 , TConstruct . ingotLiquidValue * 3 );
Smeltery . addMelting ( FluidType . Gold , new ItemStack ( Item . axeGold , 1 , 0 ), 0 , TConstruct . ingotLiquidValue * 3 );
}
2013-07-26 21:18:53 -07:00
2013-11-04 00:33:39 +01:00
private void addRecipesForDryingRack ()
{
//Drying rack
2013-11-29 23:16:32 -05:00
DryingRackRecipes . addDryingRecipe ( Item . beefRaw , 20 * 60 * 5 , new ItemStack ( TRepo . jerky , 1 , 0 ));
DryingRackRecipes . addDryingRecipe ( Item . chickenRaw , 20 * 60 * 5 , new ItemStack ( TRepo . jerky , 1 , 1 ));
DryingRackRecipes . addDryingRecipe ( Item . porkRaw , 20 * 60 * 5 , new ItemStack ( TRepo . jerky , 1 , 2 ));
//DryingRackRecipes.addDryingRecipe(Item.muttonRaw, 20 * 60 * 5, new ItemStack(TRepo.jerky, 1, 3));
DryingRackRecipes . addDryingRecipe ( Item . fishRaw , 20 * 60 * 5 , new ItemStack ( TRepo . jerky , 1 , 4 ));
DryingRackRecipes . addDryingRecipe ( Item . rottenFlesh , 20 * 60 * 5 , new ItemStack ( TRepo . jerky , 1 , 5 ));
//DryingRackRecipes.addDryingRecipe(new ItemStack(TRepo.jerky, 1, 5), 20 * 60 * 10, Item.leather);
2013-11-04 00:33:39 +01:00
}
private void addRecipesForChisel ()
{
2013-07-26 21:18:53 -07:00
/* Detailing */
Detailing chiseling = TConstructRegistry . getChiselDetailing ();
2013-11-29 23:16:32 -05:00
chiseling . addDetailing ( Block . stone , 0 , Block . stoneBrick , 0 , TRepo . chisel );
chiseling . addDetailing ( TRepo . speedBlock , 0 , TRepo . speedBlock , 1 , TRepo . chisel );
chiseling . addDetailing ( TRepo . speedBlock , 2 , TRepo . speedBlock , 3 , TRepo . chisel );
chiseling . addDetailing ( TRepo . speedBlock , 3 , TRepo . speedBlock , 4 , TRepo . chisel );
chiseling . addDetailing ( TRepo . speedBlock , 4 , TRepo . speedBlock , 5 , TRepo . chisel );
chiseling . addDetailing ( TRepo . speedBlock , 5 , TRepo . speedBlock , 6 , TRepo . chisel );
chiseling . addDetailing ( Block . obsidian , 0 , TRepo . multiBrick , 0 , TRepo . chisel );
chiseling . addDetailing ( Block . sandStone , 0 , Block . sandStone , 2 , TRepo . chisel );
chiseling . addDetailing ( Block . sandStone , 2 , Block . sandStone , 1 , TRepo . chisel );
chiseling . addDetailing ( Block . sandStone , 1 , TRepo . multiBrick , 1 , TRepo . chisel );
//chiseling.addDetailing(Block.netherrack, 0, TRepo.multiBrick, 2, TRepo.chisel);
//chiseling.addDetailing(Block.stone_refined, 0, TRepo.multiBrick, 3, TRepo.chisel);
chiseling . addDetailing ( Item . ingotIron , 0 , TRepo . multiBrick , 4 , TRepo . chisel );
chiseling . addDetailing ( Item . ingotGold , 0 , TRepo . multiBrick , 5 , TRepo . chisel );
chiseling . addDetailing ( Item . dyePowder , 4 , TRepo . multiBrick , 6 , TRepo . chisel );
chiseling . addDetailing ( Item . diamond , 0 , TRepo . multiBrick , 7 , TRepo . chisel );
chiseling . addDetailing ( Item . redstone , 0 , TRepo . multiBrick , 8 , TRepo . chisel );
chiseling . addDetailing ( Item . bone , 0 , TRepo . multiBrick , 9 , TRepo . chisel );
chiseling . addDetailing ( Item . slimeBall , 0 , TRepo . multiBrick , 10 , TRepo . chisel );
chiseling . addDetailing ( TRepo . strangeFood , 0 , TRepo . multiBrick , 11 , TRepo . chisel );
chiseling . addDetailing ( Block . whiteStone , 0 , TRepo . multiBrick , 12 , TRepo . chisel );
chiseling . addDetailing ( TRepo . materials , 18 , TRepo . multiBrick , 13 , TRepo . chisel );
2013-07-26 21:18:53 -07:00
2013-10-30 03:43:45 +01:00
// adding multiBrick / multiBrickFanxy meta 0-13 to list
for ( int sc = 0 ; sc < 14 ; sc ++ )
{
2013-11-29 23:16:32 -05:00
chiseling . addDetailing ( TRepo . multiBrick , sc , TRepo . multiBrickFancy , sc , TRepo . chisel );
2013-10-30 03:43:45 +01:00
}
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
chiseling . addDetailing ( Block . stoneBrick , 0 , TRepo . multiBrickFancy , 15 , TRepo . chisel );
chiseling . addDetailing ( TRepo . multiBrickFancy , 15 , TRepo . multiBrickFancy , 14 , TRepo . chisel );
chiseling . addDetailing ( TRepo . multiBrickFancy , 14 , Block . stoneBrick , 3 , TRepo . chisel );
/*chiseling.addDetailing(TRepo.multiBrick, 14, TRepo.multiBrickFancy, 14, TRepo.chisel);
chiseling.addDetailing(TRepo.multiBrick, 15, TRepo.multiBrickFancy, 15, TRepo.chisel);*/
chiseling . addDetailing ( TRepo . smeltery , 4 , TRepo . smeltery , 6 , TRepo . chisel );
chiseling . addDetailing ( TRepo . smeltery , 6 , TRepo . smeltery , 11 , TRepo . chisel );
chiseling . addDetailing ( TRepo . smeltery , 11 , TRepo . smeltery , 2 , TRepo . chisel );
chiseling . addDetailing ( TRepo . smeltery , 2 , TRepo . smeltery , 8 , TRepo . chisel );
chiseling . addDetailing ( TRepo . smeltery , 8 , TRepo . smeltery , 9 , TRepo . chisel );
chiseling . addDetailing ( TRepo . smeltery , 9 , TRepo . smeltery , 10 , TRepo . chisel );
2013-07-26 21:18:53 -07:00
}
2013-10-06 09:53:48 -07:00
void setupToolTabs ()
2013-07-26 21:18:53 -07:00
{
2013-11-29 23:16:32 -05:00
TConstructRegistry . materialTab . init ( new ItemStack ( TRepo . titleIcon , 1 , 255 ));
TConstructRegistry . blockTab . init ( new ItemStack ( TRepo . toolStationWood ));
ItemStack tool = new ItemStack ( TRepo . longsword , 1 , 0 );
2013-07-26 21:18:53 -07:00
NBTTagCompound compound = new NBTTagCompound ();
compound . setCompoundTag ( "InfiTool" , new NBTTagCompound ());
compound . getCompoundTag ( "InfiTool" ). setInteger ( "RenderHead" , 2 );
compound . getCompoundTag ( "InfiTool" ). setInteger ( "RenderHandle" , 0 );
compound . getCompoundTag ( "InfiTool" ). setInteger ( "RenderAccessory" , 10 );
tool . setTagCompound ( compound );
//TConstruct.
TConstructRegistry . toolTab . init ( tool );
}
2013-10-06 09:53:48 -07:00
public void addLoot ()
2013-07-26 21:18:53 -07:00
{
//Item, min, max, weight
2013-11-29 23:16:32 -05:00
ChestGenHooks . getInfo ( ChestGenHooks . DUNGEON_CHEST ). addItem ( new WeightedRandomChestContent ( new ItemStack ( TRepo . heartCanister , 1 , 1 ), 1 , 1 , 5 ));
ChestGenHooks . getInfo ( ChestGenHooks . PYRAMID_DESERT_CHEST ). addItem ( new WeightedRandomChestContent ( new ItemStack ( TRepo . heartCanister , 1 , 1 ), 1 , 1 , 10 ));
ChestGenHooks . getInfo ( ChestGenHooks . PYRAMID_JUNGLE_CHEST ). addItem ( new WeightedRandomChestContent ( new ItemStack ( TRepo . heartCanister , 1 , 1 ), 1 , 1 , 10 ));
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
TRepo . tinkerHouseChest = new ChestGenHooks ( "TinkerHouse" , new WeightedRandomChestContent [ 0 ] , 3 , 27 );
TRepo . tinkerHouseChest . addItem ( new WeightedRandomChestContent ( new ItemStack ( TRepo . heartCanister , 1 , 1 ), 1 , 1 , 1 ));
2013-07-26 21:18:53 -07:00
int [] validTypes = { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 8 , 9 , 13 , 14 , 17 };
2013-11-29 23:16:32 -05:00
Item [] partTypes = { TRepo . pickaxeHead , TRepo . shovelHead , TRepo . hatchetHead , TRepo . binding , TRepo . swordBlade , TRepo . wideGuard , TRepo . handGuard , TRepo . crossbar , TRepo . knifeBlade ,
TRepo . frypanHead , TRepo . signHead , TRepo . chiselHead };
2013-07-26 21:18:53 -07:00
for ( int partIter = 0 ; partIter < partTypes . length ; partIter ++ )
{
for ( int typeIter = 0 ; typeIter < validTypes . length ; typeIter ++ )
{
2013-11-29 23:16:32 -05:00
TRepo . tinkerHouseChest . addItem ( new WeightedRandomChestContent ( new ItemStack ( partTypes [ partIter ] , 1 , validTypes [ typeIter ] ), 1 , 1 , 15 ));
2013-07-26 21:18:53 -07:00
}
}
2013-11-29 23:16:32 -05:00
TRepo . tinkerHousePatterns = new ChestGenHooks ( "TinkerPatterns" , new WeightedRandomChestContent [ 0 ] , 5 , 30 );
2013-07-26 21:18:53 -07:00
for ( int i = 0 ; i < 13 ; i ++ )
{
2013-11-29 23:16:32 -05:00
TRepo . tinkerHousePatterns . addItem ( new WeightedRandomChestContent ( new ItemStack ( TRepo . woodPattern , 1 , i + 1 ), 1 , 3 , 20 ));
2013-07-26 21:18:53 -07:00
}
2013-11-29 23:16:32 -05:00
TRepo . tinkerHousePatterns . addItem ( new WeightedRandomChestContent ( new ItemStack ( TRepo . woodPattern , 1 , 22 ), 1 , 3 , 40 ));
2013-07-26 21:18:53 -07:00
}
public static String [] liquidNames ;
2013-10-06 09:53:48 -07:00
public void oreRegistry ()
2013-07-26 21:18:53 -07:00
{
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( "oreCobalt" , new ItemStack ( TRepo . oreSlag , 1 , 1 ));
OreDictionary . registerOre ( "oreArdite" , new ItemStack ( TRepo . oreSlag , 1 , 2 ));
OreDictionary . registerOre ( "oreCopper" , new ItemStack ( TRepo . oreSlag , 1 , 3 ));
OreDictionary . registerOre ( "oreTin" , new ItemStack ( TRepo . oreSlag , 1 , 4 ));
OreDictionary . registerOre ( "oreAluminum" , new ItemStack ( TRepo . oreSlag , 1 , 5 ));
OreDictionary . registerOre ( "oreAluminium" , new ItemStack ( TRepo . oreSlag , 1 , 5 ));
OreDictionary . registerOre ( "oreIron" , new ItemStack ( TRepo . oreGravel , 1 , 0 ));
OreDictionary . registerOre ( "oreGold" , new ItemStack ( TRepo . oreGravel , 1 , 1 ));
OreDictionary . registerOre ( "oreCobalt" , new ItemStack ( TRepo . oreGravel , 1 , 5 ));
OreDictionary . registerOre ( "oreCopper" , new ItemStack ( TRepo . oreGravel , 1 , 2 ));
OreDictionary . registerOre ( "oreTin" , new ItemStack ( TRepo . oreGravel , 1 , 3 ));
OreDictionary . registerOre ( "oreAluminum" , new ItemStack ( TRepo . oreGravel , 1 , 4 ));
OreDictionary . registerOre ( "oreAluminium" , new ItemStack ( TRepo . oreGravel , 1 , 4 ));
OreDictionary . registerOre ( "ingotCobalt" , new ItemStack ( TRepo . materials , 1 , 3 ));
OreDictionary . registerOre ( "ingotArdite" , new ItemStack ( TRepo . materials , 1 , 4 ));
OreDictionary . registerOre ( "ingotManyullyn" , new ItemStack ( TRepo . materials , 1 , 5 ));
OreDictionary . registerOre ( "ingotCopper" , new ItemStack ( TRepo . materials , 1 , 9 ));
OreDictionary . registerOre ( "ingotTin" , new ItemStack ( TRepo . materials , 1 , 10 ));
OreDictionary . registerOre ( "ingotAluminum" , new ItemStack ( TRepo . materials , 1 , 11 ));
OreDictionary . registerOre ( "ingotAluminium" , new ItemStack ( TRepo . materials , 1 , 11 ));
OreDictionary . registerOre ( "ingotBronze" , new ItemStack ( TRepo . materials , 1 , 13 ));
OreDictionary . registerOre ( "ingotAluminumBrass" , new ItemStack ( TRepo . materials , 1 , 14 ));
OreDictionary . registerOre ( "ingotAluminiumBrass" , new ItemStack ( TRepo . materials , 1 , 14 ));
OreDictionary . registerOre ( "ingotAlumite" , new ItemStack ( TRepo . materials , 1 , 15 ));
OreDictionary . registerOre ( "ingotSteel" , new ItemStack ( TRepo . materials , 1 , 16 ));
2013-11-04 00:33:39 +01:00
ensureOreIsRegistered ( "ingotIron" , new ItemStack ( Item . ingotIron ));
ensureOreIsRegistered ( "ingotGold" , new ItemStack ( Item . ingotGold ));
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( "ingotObsidian" , new ItemStack ( TRepo . materials , 1 , 18 ));
OreDictionary . registerOre ( "ingotPigIron" , new ItemStack ( TRepo . materials , 1 , 34 ));
OreDictionary . registerOre ( "itemRawRubber" , new ItemStack ( TRepo . materials , 1 , 36 ));
OreDictionary . registerOre ( "blockCobalt" , new ItemStack ( TRepo . metalBlock , 1 , 0 ));
OreDictionary . registerOre ( "blockArdite" , new ItemStack ( TRepo . metalBlock , 1 , 1 ));
OreDictionary . registerOre ( "blockManyullyn" , new ItemStack ( TRepo . metalBlock , 1 , 2 ));
OreDictionary . registerOre ( "blockCopper" , new ItemStack ( TRepo . metalBlock , 1 , 3 ));
OreDictionary . registerOre ( "blockBronze" , new ItemStack ( TRepo . metalBlock , 1 , 4 ));
OreDictionary . registerOre ( "blockTin" , new ItemStack ( TRepo . metalBlock , 1 , 5 ));
OreDictionary . registerOre ( "blockAluminum" , new ItemStack ( TRepo . metalBlock , 1 , 6 ));
OreDictionary . registerOre ( "blockAluminium" , new ItemStack ( TRepo . metalBlock , 1 , 6 ));
OreDictionary . registerOre ( "blockAluminumBrass" , new ItemStack ( TRepo . metalBlock , 1 , 7 ));
OreDictionary . registerOre ( "blockAluminiumBrass" , new ItemStack ( TRepo . metalBlock , 1 , 7 ));
OreDictionary . registerOre ( "blockAlumite" , new ItemStack ( TRepo . metalBlock , 1 , 8 ));
OreDictionary . registerOre ( "blockSteel" , new ItemStack ( TRepo . metalBlock , 1 , 9 ));
2013-11-04 00:33:39 +01:00
ensureOreIsRegistered ( "blockIron" , new ItemStack ( Block . blockIron ));
ensureOreIsRegistered ( "blockGold" , new ItemStack ( Block . blockGold ));
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( "nuggetIron" , new ItemStack ( TRepo . materials , 1 , 19 ));
OreDictionary . registerOre ( "nuggetIron" , new ItemStack ( TRepo . oreBerries , 1 , 0 ));
OreDictionary . registerOre ( "nuggetCopper" , new ItemStack ( TRepo . materials , 1 , 20 ));
OreDictionary . registerOre ( "nuggetCopper" , new ItemStack ( TRepo . oreBerries , 1 , 2 ));
OreDictionary . registerOre ( "nuggetTin" , new ItemStack ( TRepo . materials , 1 , 21 ));
OreDictionary . registerOre ( "nuggetTin" , new ItemStack ( TRepo . oreBerries , 1 , 3 ));
OreDictionary . registerOre ( "nuggetAluminum" , new ItemStack ( TRepo . materials , 1 , 22 ));
OreDictionary . registerOre ( "nuggetAluminum" , new ItemStack ( TRepo . oreBerries , 1 , 4 ));
OreDictionary . registerOre ( "nuggetAluminium" , new ItemStack ( TRepo . materials , 1 , 22 ));
OreDictionary . registerOre ( "nuggetAluminium" , new ItemStack ( TRepo . oreBerries , 1 , 4 ));
OreDictionary . registerOre ( "nuggetAluminumBrass" , new ItemStack ( TRepo . materials , 1 , 24 ));
OreDictionary . registerOre ( "nuggetAluminiumBrass" , new ItemStack ( TRepo . materials , 1 , 24 ));
OreDictionary . registerOre ( "nuggetObsidian" , new ItemStack ( TRepo . materials , 1 , 27 ));
OreDictionary . registerOre ( "nuggetCobalt" , new ItemStack ( TRepo . materials , 1 , 28 ));
OreDictionary . registerOre ( "nuggetArdite" , new ItemStack ( TRepo . materials , 1 , 29 ));
OreDictionary . registerOre ( "nuggetManyullyn" , new ItemStack ( TRepo . materials , 1 , 30 ));
OreDictionary . registerOre ( "nuggetBronze" , new ItemStack ( TRepo . materials , 1 , 31 ));
OreDictionary . registerOre ( "nuggetAlumite" , new ItemStack ( TRepo . materials , 1 , 32 ));
OreDictionary . registerOre ( "nuggetSteel" , new ItemStack ( TRepo . materials , 1 , 33 ));
OreDictionary . registerOre ( "nuggetGold" , new ItemStack ( TRepo . oreBerries , 1 , 1 ));
2013-11-04 00:33:39 +01:00
ensureOreIsRegistered ( "nuggetGold" , new ItemStack ( Item . goldNugget ));
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( "nuggetPigIron" , new ItemStack ( TRepo . materials , 1 , 35 ));
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( "slabCloth" , new ItemStack ( TRepo . woolSlab1 , 1 , Short . MAX_VALUE ));
OreDictionary . registerOre ( "slabCloth" , new ItemStack ( TRepo . woolSlab2 , 1 , Short . MAX_VALUE ));
2013-10-29 20:30:51 +01:00
2013-11-04 00:33:39 +01:00
ensureOreIsRegistered ( "stoneMossy" , new ItemStack ( Block . stoneBrick , 1 , 1 ));
ensureOreIsRegistered ( "stoneMossy" , new ItemStack ( Block . cobblestoneMossy ));
2013-11-07 23:13:44 -08:00
2013-11-25 16:56:07 -08:00
OreDictionary . registerOre ( "crafterWood" , new ItemStack ( Block . workbench , 1 ));
OreDictionary . registerOre ( "craftingTableWood" , new ItemStack ( Block . workbench , 1 ));
2013-11-04 19:52:01 +01:00
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( "torchStone" , new ItemStack ( TRepo . stoneTorch ));
2013-11-21 22:34:47 -08:00
2013-08-02 02:12:48 -07:00
String [] matNames = { "wood" , "stone" , "iron" , "flint" , "cactus" , "bone" , "obsidian" , "netherrack" , "slime" , "paper" , "cobalt" , "ardite" , "manyullyn" , "copper" , "bronze" , "alumite" , "steel" ,
"blueslime" };
2013-08-22 17:25:14 -07:00
for ( int i = 0 ; i < matNames . length ; i ++ )
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( matNames [ i ] + "Rod" , new ItemStack ( TRepo . toolRod , 1 , i ));
OreDictionary . registerOre ( "thaumiumRod" , new ItemStack ( TRepo . toolRod , 1 , 31 ));
2013-08-31 05:13:31 -07:00
2013-07-26 21:18:53 -07:00
String [] glassTypes = { "glassBlack" , "glassRed" , "glassGreen" , "glassBrown" , "glassBlue" , "glassPurple" , "glassCyan" , "glassLightGray" , "glassGray" , "glassPink" , "glassLime" , "glassYellow" ,
"glassLightBlue" , "glassMagenta" , "glassOrange" , "glassWhite" };
for ( int i = 0 ; i < 16 ; i ++ )
{
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( glassTypes [ 15 - i ] , new ItemStack ( TRepo . stainedGlassClear , 1 , i ));
2013-07-26 21:18:53 -07:00
}
2013-11-29 23:16:32 -05:00
BlockDispenser . dispenseBehaviorRegistry . putObject ( TRepo . titleIcon , new TDispenserBehaviorSpawnEgg ());
2013-07-26 21:18:53 -07:00
2013-11-29 23:16:32 -05:00
BlockDispenser . dispenseBehaviorRegistry . putObject ( TRepo . arrow , new TDispenserBehaviorArrow ());
2013-09-27 18:25:58 +02:00
2013-07-26 21:18:53 -07:00
//Vanilla stuff
OreDictionary . registerOre ( "slimeball" , new ItemStack ( Item . slimeBall ));
2013-11-29 23:16:32 -05:00
OreDictionary . registerOre ( "slimeball" , new ItemStack ( TRepo . strangeFood , 1 , 0 ));
OreDictionary . registerOre ( "slimeball" , new ItemStack ( TRepo . materials , 1 , 36 ));
OreDictionary . registerOre ( "glass" , new ItemStack ( TRepo . clearGlass ));
2013-10-30 04:16:54 +01:00
OreDictionary . registerOre ( "glass" , new ItemStack ( Block . glass ));
2013-07-26 21:18:53 -07:00
RecipeRemover . removeShapedRecipe ( new ItemStack ( Block . pistonStickyBase ));
RecipeRemover . removeShapedRecipe ( new ItemStack ( Item . magmaCream ));
2013-10-28 17:57:32 +01:00
RecipeRemover . removeShapedRecipe ( new ItemStack ( Item . leash ));
2013-07-26 21:18:53 -07:00
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( Block . pistonStickyBase ), "slimeball" , Block . pistonBase ));
GameRegistry . addRecipe ( new ShapelessOreRecipe ( new ItemStack ( Item . magmaCream ), "slimeball" , Item . blazePowder ));
2013-10-28 17:57:32 +01:00
GameRegistry . addRecipe ( new ShapedOreRecipe ( new ItemStack ( Item . leash , 2 ), "ss " , "sS " , " s" , 's' , Item . silk , 'S' , "slimeball" ));
2013-07-26 21:18:53 -07:00
}
2013-11-04 00:33:39 +01:00
private void ensureOreIsRegistered ( String oreName , ItemStack is )
{
int oreId = OreDictionary . getOreID ( is );
if ( oreId == - 1 )
{
OreDictionary . registerOre ( oreName , is );
}
}
2013-07-26 21:18:53 -07:00
public static boolean thaumcraftAvailable ;
private static boolean initRecipes ;
2013-10-06 09:53:48 -07:00
public static void modRecipes ()
2013-07-26 21:18:53 -07:00
{
if ( ! initRecipes )
{
initRecipes = true ;
if ( PHConstruct . removeVanillaToolRecipes )
{
2013-08-08 00:47:08 -07:00
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . pickaxeWood ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . axeWood ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . shovelWood ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . hoeWood ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . swordWood ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . pickaxeStone ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . axeStone ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . shovelStone ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . hoeStone ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . swordStone ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . pickaxeIron ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . axeIron ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . shovelIron ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . hoeIron ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . swordIron ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . pickaxeDiamond ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . axeDiamond ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . shovelDiamond ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . hoeDiamond ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . swordDiamond ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . pickaxeGold ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . axeGold ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . shovelGold ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . hoeGold ));
RecipeRemover . removeAnyRecipe ( new ItemStack ( Item . swordGold ));
2013-07-26 21:18:53 -07:00
}
}
}
2013-10-06 09:53:48 -07:00
public static void addShapedRecipeFirst ( List recipeList , ItemStack itemstack , Object ... objArray )
2013-07-26 21:18:53 -07:00
{
String var3 = "" ;
int var4 = 0 ;
int var5 = 0 ;
int var6 = 0 ;
if ( objArray [ var4 ] instanceof String [] )
{
2013-10-28 20:31:18 +01:00
String [] var7 = (( String [] ) objArray [ var4 ++] );
2013-07-26 21:18:53 -07:00
for ( int var8 = 0 ; var8 < var7 . length ; ++ var8 )
{
String var9 = var7 [ var8 ] ;
++ var6 ;
var5 = var9 . length ();
var3 = var3 + var9 ;
}
}
else
{
while ( objArray [ var4 ] instanceof String )
{
String var11 = ( String ) objArray [ var4 ++] ;
++ var6 ;
var5 = var11 . length ();
var3 = var3 + var11 ;
}
}
HashMap var12 ;
for ( var12 = new HashMap (); var4 < objArray . length ; var4 += 2 )
{
Character var13 = ( Character ) objArray [ var4 ] ;
ItemStack var14 = null ;
if ( objArray [ var4 + 1 ] instanceof Item )
{
var14 = new ItemStack (( Item ) objArray [ var4 + 1 ] );
}
else if ( objArray [ var4 + 1 ] instanceof Block )
{
var14 = new ItemStack (( Block ) objArray [ var4 + 1 ] , 1 , Short . MAX_VALUE );
}
else if ( objArray [ var4 + 1 ] instanceof ItemStack )
{
var14 = ( ItemStack ) objArray [ var4 + 1 ] ;
}
var12 . put ( var13 , var14 );
}
ItemStack [] var15 = new ItemStack [ var5 * var6 ] ;
for ( int var16 = 0 ; var16 < var5 * var6 ; ++ var16 )
{
char var10 = var3 . charAt ( var16 );
if ( var12 . containsKey ( Character . valueOf ( var10 )))
{
var15 [ var16 ] = (( ItemStack ) var12 . get ( Character . valueOf ( var10 ))). copy ();
}
else
{
var15 [ var16 ] = null ;
}
}
ShapedRecipes var17 = new ShapedRecipes ( var5 , var6 , var15 , itemstack );
recipeList . add ( 0 , var17 );
}
2013-10-06 09:53:48 -07:00
public void modIntegration ()
2013-07-26 21:18:53 -07:00
{
2013-11-29 23:16:32 -05:00
ItemStack ironpick = ToolBuilder . instance . buildTool ( new ItemStack ( TRepo . pickaxeHead , 1 , 6 ), new ItemStack ( TRepo . toolRod , 1 , 2 ), new ItemStack ( TRepo . binding , 1 , 6 ), "" );
2013-11-09 02:15:29 -05:00
/*TE3 Flux*/
2013-11-17 03:13:26 -05:00
ItemStack batHardened = GameRegistry . findItemStack ( "ThermalExpansion" , "capacitorHardened" , 1 );
2013-11-09 02:15:29 -05:00
if ( batHardened != null )
{
2013-11-29 23:16:32 -05:00
TRepo . modF . batteries . add ( batHardened );
2013-11-09 02:15:29 -05:00
}
2013-11-10 13:57:35 -08:00
ItemStack basicCell = GameRegistry . findItemStack ( "ThermalExpansion" , "cellBasic" , 1 );
2013-11-09 02:15:29 -05:00
if ( basicCell != null )
{
2013-11-29 23:16:32 -05:00
TRepo . modF . batteries . add ( basicCell );
2013-11-09 02:15:29 -05:00
}
2013-11-29 23:16:32 -05:00
if ( batHardened != null )
2013-11-26 05:26:25 -05:00
TConstructClientRegistry . registerManualModifier ( "fluxmod" , ironpick . copy (), ( ItemStack ) batHardened );
2013-11-29 23:16:32 -05:00
if ( basicCell != null )
2013-11-26 05:26:25 -05:00
TConstructClientRegistry . registerManualModifier ( "fluxmod2" , ironpick . copy (), ( ItemStack ) basicCell );
2013-07-26 21:18:53 -07:00
/* Thaumcraft */
2013-10-06 23:53:35 -04:00
Object obj = getStaticItem ( "itemResource" , "thaumcraft.common.config.ConfigItems" );
2013-07-26 21:18:53 -07:00
if ( obj != null )
{
2013-10-12 23:46:35 +01:00
TConstruct . logger . info ( "Thaumcraft detected. Adding thaumium tools." );
2013-07-26 21:18:53 -07:00
thaumcraftAvailable = true ;
TConstructClientRegistry . addMaterialRenderMapping ( 31 , "tinker" , "thaumium" , true );
TConstructRegistry . addToolMaterial ( 31 , "Thaumium" , 3 , 400 , 700 , 2 , 1 . 3F , 0 , 0f , "\u00A75" , "Thaumic" );
2013-11-29 23:16:32 -05:00
PatternBuilder . instance . registerFullMaterial ( new ItemStack (( Item ) obj , 1 , 2 ), 2 , "Thaumium" , new ItemStack ( TRepo . toolShard , 1 , 31 ), new ItemStack ( TRepo . toolRod , 1 , 31 ), 31 );
2013-07-26 21:18:53 -07:00
for ( int meta = 0 ; meta < patternOutputs . length ; meta ++ )
{
if ( patternOutputs [ meta ] != null )
2013-11-29 23:16:32 -05:00
TConstructRegistry . addPartMapping ( TRepo . woodPattern . itemID , meta + 1 , 31 , new ItemStack ( patternOutputs [ meta ] , 1 , 31 ));
2013-07-26 21:18:53 -07:00
}
2013-11-29 23:16:32 -05:00
TConstructRegistry . addBowstringMaterial ( 1 , 2 , new ItemStack (( Item ) obj , 1 , 7 ), new ItemStack ( TRepo . bowstring , 1 , 1 ), 1F , 1F , 0 . 9f );
2013-07-26 21:18:53 -07:00
TConstructRegistry . addBowMaterial ( 31 , 576 , 40 , 1 . 2f );
TConstructRegistry . addArrowMaterial ( 31 , 1 . 8F , 0 . 5F , 100F );
}
else
{
2013-10-12 23:46:35 +01:00
TConstruct . logger . warning ( "Thaumcraft not detected." );
2013-07-26 21:18:53 -07:00
}
2013-07-18 12:58:08 -07:00
if ( Loader . isModLoaded ( "Natura" ))
{
try
{
Object plantItem = getStaticItem ( "plantItem" , "mods.natura.common.NContent" );
2013-11-29 23:16:32 -05:00
TConstructRegistry . addBowstringMaterial ( 2 , 2 , new ItemStack (( Item ) plantItem , 1 , 7 ), new ItemStack ( TRepo . bowstring , 1 , 2 ), 1 . 2F , 0 . 8F , 1 . 3f );
2013-07-18 12:58:08 -07:00
}
catch ( Exception e )
{
} //No need to handle
2013-08-27 01:09:03 +10:00
}
2013-08-07 19:06:26 -07:00
2013-11-29 23:16:32 -05:00
ItemStack ingotcast = new ItemStack ( TRepo . metalPattern , 1 , 0 );
2013-08-01 20:54:56 -07:00
LiquidCasting tableCasting = TConstructRegistry . instance . getTableCasting ();
LiquidCasting basinCasting = TConstructRegistry . instance . getBasinCasting ();
2013-11-09 02:15:29 -05:00
/* Thermal Expansion 3 Metals */
2013-08-01 20:54:56 -07:00
ArrayList < ItemStack > ores = OreDictionary . getOres ( "ingotNickel" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenNickelFluid , TConstruct . ingotLiquidValue ), ingotcast , 80 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "ingotLead" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenLeadFluid , TConstruct . ingotLiquidValue ), ingotcast , 80 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "ingotSilver" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenSilverFluid , TConstruct . ingotLiquidValue ), ingotcast , 80 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "ingotPlatinum" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenShinyFluid , TConstruct . ingotLiquidValue ), ingotcast , 80 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "ingotInvar" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenInvarFluid , TConstruct . ingotLiquidValue ), ingotcast , 80 );
Smeltery . addAlloyMixing ( new FluidStack ( TRepo . moltenInvarFluid , 24 ), new FluidStack ( TRepo . moltenIronFluid , 16 ), new FluidStack ( TRepo . moltenNickelFluid , 8 )); //Invar
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "ingotElectrum" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenElectrumFluid , TConstruct . ingotLiquidValue ), ingotcast , 80 );
Smeltery . addAlloyMixing ( new FluidStack ( TRepo . moltenElectrumFluid , 16 ), new FluidStack ( TRepo . moltenGoldFluid , 8 ), new FluidStack ( TRepo . moltenSilverFluid , 8 )); //Electrum
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "blockNickel" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenNickelFluid , TConstruct . blockLiquidValue ), null , 100 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "blockLead" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenLeadFluid , TConstruct . blockLiquidValue ), null , 100 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "blockSilver" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenSilverFluid , TConstruct . blockLiquidValue ), null , 100 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "blockPlatinum" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenShinyFluid , TConstruct . blockLiquidValue ), null , 100 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "blockInvar" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenInvarFluid , TConstruct . blockLiquidValue ), null , 100 );
2013-08-01 20:54:56 -07:00
}
ores = OreDictionary . getOres ( "blockElectrum" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( ores . get ( 0 ), new FluidStack ( TRepo . moltenElectrumFluid , TConstruct . blockLiquidValue ), null , 100 );
2013-08-01 20:54:56 -07:00
}
2013-11-10 13:57:35 -08:00
2013-11-09 09:42:38 -08:00
/* Extra Utilities */
ores = OreDictionary . getOres ( "compressedGravel1x" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . speedBlock , 9 ), new FluidStack ( TRepo . moltenElectrumFluid , TConstruct . blockLiquidValue ), ores . get ( 0 ), 100 );
2013-11-09 09:42:38 -08:00
}
ores = OreDictionary . getOres ( "compressedGravel2x" ); //Higher won't save properly
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
basinCasting . addCastingRecipe ( new ItemStack ( TRepo . speedBlock , 81 ), new FluidStack ( TRepo . moltenElectrumFluid , TConstruct . blockLiquidValue * 9 ), ores . get ( 0 ), 100 );
2013-11-09 09:42:38 -08:00
}
2013-11-25 04:12:29 -08:00
2013-11-24 23:24:56 -08:00
/* Rubber */
ores = OreDictionary . getOres ( "itemRubber" );
if ( ores . size () > 0 )
{
2013-11-29 23:16:32 -05:00
FurnaceRecipes . smelting (). addSmelting ( TRepo . materials . itemID , 36 , ores . get ( 0 ), 0 . 2f );
2013-11-24 23:24:56 -08:00
}
2013-11-29 23:16:32 -05:00
//new ItemStack(TRepo.materials, 1, 36)
2013-07-26 21:18:53 -07:00
}
2013-10-06 09:53:48 -07:00
public static Object getStaticItem ( String name , String classPackage )
2013-07-26 21:18:53 -07:00
{
try
{
Class clazz = Class . forName ( classPackage );
Field field = clazz . getDeclaredField ( name );
Object ret = field . get ( null );
if ( ret != null && ( ret instanceof ItemStack || ret instanceof Item ))
return ret ;
return null ;
}
catch ( Exception e )
{
2013-10-12 23:46:35 +01:00
TConstruct . logger . warning ( "Could not find " + name );
2013-07-26 21:18:53 -07:00
return null ;
}
}
@Override
2013-10-06 09:53:48 -07:00
public int getBurnTime ( ItemStack fuel )
2013-07-26 21:18:53 -07:00
{
2013-11-29 23:16:32 -05:00
if ( fuel . itemID == TRepo . materials . itemID && fuel . getItemDamage () == 7 )
2013-07-26 21:18:53 -07:00
return 26400 ;
return 0 ;
}
2013-11-04 00:33:39 +01:00
public void addOreDictionarySmelteryRecipes ()
{
2013-11-05 04:27:00 -08:00
List < FluidType > exceptions = Arrays . asList ( new FluidType [] { FluidType . Water , FluidType . Stone , FluidType . Ender , FluidType . Glass , FluidType . Slime });
2013-11-04 00:33:39 +01:00
for ( FluidType ft : FluidType . values ())
{
if ( exceptions . contains ( ft ))
continue ;
// Nuggets
Smeltery . addDictionaryMelting ( "nugget" + ft . toString (), ft , - 100 , TConstruct . nuggetLiquidValue );
2013-11-19 20:57:52 -08:00
2013-11-04 00:33:39 +01:00
// Ingots, Dust
registerIngotCasting ( ft );
Smeltery . addDictionaryMelting ( "ingot" + ft . toString (), ft , - 50 , TConstruct . ingotLiquidValue );
Smeltery . addDictionaryMelting ( "dust" + ft . toString (), ft , - 75 , TConstruct . ingotLiquidValue );
2013-11-19 20:57:52 -08:00
2013-11-04 00:33:39 +01:00
// Factorization support
Smeltery . addDictionaryMelting ( "crystalline" + ft . toString (), ft , - 50 , TConstruct . ingotLiquidValue );
// Ores
2013-11-19 20:57:52 -08:00
Smeltery . addDictionaryMelting ( "ore" + ft . toString (), ft , 0 , TConstruct . ingotLiquidValue * PHConstruct . ingotsPerOre );
2013-11-04 00:33:39 +01:00
// NetherOres support
2013-11-19 20:57:52 -08:00
Smeltery . addDictionaryMelting ( "oreNether" + ft . toString (), ft , 75 , TConstruct . ingotLiquidValue * PHConstruct . ingotsPerOre * 2 );
2013-11-04 00:33:39 +01:00
// Blocks
Smeltery . addDictionaryMelting ( "block" + ft . toString (), ft , 100 , TConstruct . blockLiquidValue );
2013-11-19 20:57:52 -08:00
2013-11-05 17:07:51 +01:00
if ( ft . isToolpart )
{
registerPatternMaterial ( "ingot" + ft . toString (), 2 , ft . toString ());
registerPatternMaterial ( "block" + ft . toString (), 18 , ft . toString ());
}
2013-11-04 00:33:39 +01:00
}
2013-11-10 13:57:35 -08:00
2013-11-09 09:42:38 -08:00
//Compressed materials
for ( int i = 1 ; i <= 8 ; i ++ )
{
2013-11-10 13:57:35 -08:00
Smeltery . addDictionaryMelting ( "compressedCobblestone" + i + "x" , FluidType . Stone , 0 , TConstruct . ingotLiquidValue / 18 * ( 9 ^ i ));
2013-11-09 09:42:38 -08:00
}
2013-11-10 13:57:35 -08:00
Smeltery . addDictionaryMelting ( "compressedSand1x" , FluidType . Glass , 175 , FluidContainerRegistry . BUCKET_VOLUME * 9 );
2013-11-04 00:33:39 +01:00
registerPatternMaterial ( "plankWood" , 2 , "Wood" );
registerPatternMaterial ( "stickWood" , 1 , "Wood" );
registerPatternMaterial ( "slabWood" , 1 , "Wood" );
2013-11-09 09:42:38 -08:00
registerPatternMaterial ( "compressedCobblestone1x" , 18 , "Stone" );
2013-11-04 00:33:39 +01:00
}
private void registerPatternMaterial ( String oreName , int value , String materialName )
{
for ( ItemStack ore : OreDictionary . getOres ( oreName ))
{
PatternBuilder . instance . registerMaterial ( ore , value , materialName );
}
}
private void registerIngotCasting ( FluidType ft )
{
2013-11-29 23:16:32 -05:00
ItemStack pattern = new ItemStack ( TRepo . metalPattern , 1 , 0 );
2013-11-04 00:33:39 +01:00
LiquidCasting tableCasting = TConstructRegistry . instance . getTableCasting ();
for ( ItemStack ore : OreDictionary . getOres ( "ingot" + ft . toString ()))
{
2013-11-29 23:16:32 -05:00
tableCasting . addCastingRecipe ( pattern , new FluidStack ( TRepo . moltenAlubrassFluid , TConstruct . ingotLiquidValue ), new ItemStack ( ore . itemID , 1 , ore . getItemDamage ()), false , 50 );
tableCasting . addCastingRecipe ( pattern , new FluidStack ( TRepo . moltenGoldFluid , TConstruct . oreLiquidValue ), new ItemStack ( ore . itemID , 1 , ore . getItemDamage ()), false , 50 );
2013-11-04 00:33:39 +01:00
tableCasting . addCastingRecipe ( new ItemStack ( ore . itemID , 1 , ore . getItemDamage ()), new FluidStack ( ft . fluid , TConstruct . ingotLiquidValue ), pattern , 80 );
}
}
2013-11-19 20:57:52 -08:00
public void addAchievements ()
{
HashMap < String , Achievement > achievements = TAchievements . achievements ;
2013-11-29 23:16:32 -05:00
achievements . put ( "tconstruct.beginner" , new Achievement ( 2741 , "tconstruct.beginner" , 0 , 0 , TRepo . manualBook , null ). setIndependent (). registerAchievement ());
achievements . put ( "tconstruct.pattern" , new Achievement ( 2742 , "tconstruct.pattern" , 2 , 1 , TRepo . blankPattern , achievements . get ( "tconstruct.beginner" )). registerAchievement ());
achievements . put ( "tconstruct.tinkerer" ,
new Achievement ( 2743 , "tconstruct.tinkerer" , 2 , 2 , new ItemStack ( TRepo . titleIcon , 1 , 4096 ), achievements . get ( "tconstruct.pattern" )). registerAchievement ());
2013-11-19 20:57:52 -08:00
achievements . put ( "tconstruct.preparedFight" ,
2013-11-29 23:16:32 -05:00
new Achievement ( 2744 , "tconstruct.preparedFight" , 1 , 3 , new ItemStack ( TRepo . titleIcon , 1 , 4097 ), achievements . get ( "tconstruct.tinkerer" )). registerAchievement ());
achievements . put ( "tconstruct.proTinkerer" , new Achievement ( 2745 , "tconstruct.proTinkerer" , 4 , 4 , new ItemStack ( TRepo . titleIcon , 1 , 4098 ), achievements . get ( "tconstruct.tinkerer" )). setSpecial ()
2013-11-19 20:57:52 -08:00
. registerAchievement ());
2013-11-29 23:16:32 -05:00
achievements . put ( "tconstruct.smelteryMaker" , new Achievement ( 2746 , "tconstruct.smelteryMaker" , - 2 , - 1 , TRepo . smeltery , achievements . get ( "tconstruct.beginner" )). registerAchievement ());
2013-11-19 20:57:52 -08:00
achievements . put ( "tconstruct.enemySlayer" ,
2013-11-29 23:16:32 -05:00
new Achievement ( 2747 , "tconstruct.enemySlayer" , 0 , 5 , new ItemStack ( TRepo . titleIcon , 1 , 4099 ), achievements . get ( "tconstruct.preparedFight" )). registerAchievement ());
achievements . put ( "tconstruct.dualConvenience" , new Achievement ( 2748 , "tconstruct.dualConvenience" , 0 , 7 , new ItemStack ( TRepo . titleIcon , 1 , 4100 ), achievements . get ( "tconstruct.enemySlayer" ))
2013-11-19 20:57:52 -08:00
. setSpecial (). registerAchievement ());
2013-11-17 19:59:56 +11:00
}
2013-09-10 22:52:28 -04:00
}