package WayofTime.alchemicalWizardry.common; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.EnumArmorMaterial; import net.minecraft.item.EnumToolMaterial; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.potion.Potion; import net.minecraft.util.WeightedRandomChestContent; import net.minecraftforge.common.ChestGenHooks; import net.minecraftforge.common.Configuration; import net.minecraftforge.common.EnumHelper; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.oredict.OreDictionary; import thaumcraft.api.ItemApi; import WayofTime.alchemicalWizardry.TestingBlock; import WayofTime.alchemicalWizardry.common.alchemy.AlchemicalPotionCreationHandler; import WayofTime.alchemicalWizardry.common.alchemy.AlchemyRecipeRegistry; import WayofTime.alchemicalWizardry.common.block.ArmourForge; import WayofTime.alchemicalWizardry.common.block.BlockAltar; import WayofTime.alchemicalWizardry.common.block.BlockBloodLightSource; import WayofTime.alchemicalWizardry.common.block.BlockHomHeart; import WayofTime.alchemicalWizardry.common.block.BlockMasterStone; import WayofTime.alchemicalWizardry.common.block.BlockPedestal; import WayofTime.alchemicalWizardry.common.block.BlockPlinth; import WayofTime.alchemicalWizardry.common.block.BlockSocket; import WayofTime.alchemicalWizardry.common.block.BlockTeleposer; import WayofTime.alchemicalWizardry.common.block.BlockWritingTable; import WayofTime.alchemicalWizardry.common.block.BloodRune; import WayofTime.alchemicalWizardry.common.block.BloodStoneBrick; import WayofTime.alchemicalWizardry.common.block.EfficiencyRune; import WayofTime.alchemicalWizardry.common.block.EmptySocket; import WayofTime.alchemicalWizardry.common.block.ImperfectRitualStone; import WayofTime.alchemicalWizardry.common.block.LargeBloodStoneBrick; import WayofTime.alchemicalWizardry.common.block.LifeEssenceBlock; import WayofTime.alchemicalWizardry.common.block.RitualStone; import WayofTime.alchemicalWizardry.common.block.RuneOfSacrifice; import WayofTime.alchemicalWizardry.common.block.RuneOfSelfSacrifice; import WayofTime.alchemicalWizardry.common.block.SpectralBlock; import WayofTime.alchemicalWizardry.common.block.SpeedRune; import WayofTime.alchemicalWizardry.common.bloodAltarUpgrade.UpgradedAltars; import WayofTime.alchemicalWizardry.common.entity.mob.EntityBileDemon; import WayofTime.alchemicalWizardry.common.entity.mob.EntityBoulderFist; import WayofTime.alchemicalWizardry.common.entity.mob.EntityEarthElemental; import WayofTime.alchemicalWizardry.common.entity.mob.EntityFallenAngel; import WayofTime.alchemicalWizardry.common.entity.mob.EntityFireElemental; import WayofTime.alchemicalWizardry.common.entity.mob.EntityHolyElemental; import WayofTime.alchemicalWizardry.common.entity.mob.EntityIceDemon; import WayofTime.alchemicalWizardry.common.entity.mob.EntityLowerGuardian; import WayofTime.alchemicalWizardry.common.entity.mob.EntityShade; import WayofTime.alchemicalWizardry.common.entity.mob.EntityShadeElemental; import WayofTime.alchemicalWizardry.common.entity.mob.EntitySmallEarthGolem; import WayofTime.alchemicalWizardry.common.entity.mob.EntityWaterElemental; import WayofTime.alchemicalWizardry.common.entity.mob.EntityWingedFireDemon; import WayofTime.alchemicalWizardry.common.items.AWBaseItems; import WayofTime.alchemicalWizardry.common.items.ActivationCrystal; import WayofTime.alchemicalWizardry.common.items.AirScribeTool; import WayofTime.alchemicalWizardry.common.items.ApprenticeBloodOrb; import WayofTime.alchemicalWizardry.common.items.ArchmageBloodOrb; import WayofTime.alchemicalWizardry.common.items.ArmourInhibitor; import WayofTime.alchemicalWizardry.common.items.BlankSpell; import WayofTime.alchemicalWizardry.common.items.BloodShard; import WayofTime.alchemicalWizardry.common.items.BoundArmour; import WayofTime.alchemicalWizardry.common.items.BoundAxe; import WayofTime.alchemicalWizardry.common.items.BoundPickaxe; import WayofTime.alchemicalWizardry.common.items.BoundShovel; import WayofTime.alchemicalWizardry.common.items.CheatyItem; import WayofTime.alchemicalWizardry.common.items.DaggerOfSacrifice; import WayofTime.alchemicalWizardry.common.items.DemonPlacer; import WayofTime.alchemicalWizardry.common.items.DemonicTelepositionFocus; import WayofTime.alchemicalWizardry.common.items.DuskScribeTool; import WayofTime.alchemicalWizardry.common.items.EarthScribeTool; import WayofTime.alchemicalWizardry.common.items.EnergyBattery; import WayofTime.alchemicalWizardry.common.items.EnergyBazooka; import WayofTime.alchemicalWizardry.common.items.EnergyBlast; import WayofTime.alchemicalWizardry.common.items.EnergySword; import WayofTime.alchemicalWizardry.common.items.FireScribeTool; import WayofTime.alchemicalWizardry.common.items.ItemBloodRuneBlock; import WayofTime.alchemicalWizardry.common.items.ItemDiabloKey; import WayofTime.alchemicalWizardry.common.items.ItemRitualDiviner; import WayofTime.alchemicalWizardry.common.items.ItemSanguineArmour; import WayofTime.alchemicalWizardry.common.items.LavaCrystal; import WayofTime.alchemicalWizardry.common.items.LifeBucket; import WayofTime.alchemicalWizardry.common.items.MagicianBloodOrb; import WayofTime.alchemicalWizardry.common.items.MasterBloodOrb; import WayofTime.alchemicalWizardry.common.items.ReinforcedTelepositionFocus; import WayofTime.alchemicalWizardry.common.items.SacrificialDagger; import WayofTime.alchemicalWizardry.common.items.TelepositionFocus; import WayofTime.alchemicalWizardry.common.items.WaterScribeTool; import WayofTime.alchemicalWizardry.common.items.potion.AlchemyFlask; import WayofTime.alchemicalWizardry.common.items.potion.AlchemyReagent; import WayofTime.alchemicalWizardry.common.items.potion.AverageLengtheningCatalyst; import WayofTime.alchemicalWizardry.common.items.potion.AveragePowerCatalyst; import WayofTime.alchemicalWizardry.common.items.potion.EnhancedFillingAgent; import WayofTime.alchemicalWizardry.common.items.potion.EnhancedTelepositionFocus; import WayofTime.alchemicalWizardry.common.items.potion.GreaterLengtheningCatalyst; import WayofTime.alchemicalWizardry.common.items.potion.GreaterPowerCatalyst; import WayofTime.alchemicalWizardry.common.items.potion.MundaneLengtheningCatalyst; import WayofTime.alchemicalWizardry.common.items.potion.MundanePowerCatalyst; import WayofTime.alchemicalWizardry.common.items.potion.StandardBindingAgent; import WayofTime.alchemicalWizardry.common.items.potion.StandardFillingAgent; import WayofTime.alchemicalWizardry.common.items.potion.WeakBindingAgent; import WayofTime.alchemicalWizardry.common.items.potion.WeakFillingAgent; import WayofTime.alchemicalWizardry.common.items.sigil.AirSigil; import WayofTime.alchemicalWizardry.common.items.sigil.DivinationSigil; import WayofTime.alchemicalWizardry.common.items.sigil.ItemBloodLightSigil; import WayofTime.alchemicalWizardry.common.items.sigil.LavaSigil; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfElementalAffinity; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfGrowth; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfHaste; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfHolding; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfMagnetism; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfTheBridge; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfTheFastMiner; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfWind; import WayofTime.alchemicalWizardry.common.items.sigil.VoidSigil; import WayofTime.alchemicalWizardry.common.items.sigil.WaterSigil; import WayofTime.alchemicalWizardry.common.rituals.Rituals; import WayofTime.alchemicalWizardry.common.spell.simple.HomSpellRegistry; import WayofTime.alchemicalWizardry.common.spell.simple.SpellEarthBender; import WayofTime.alchemicalWizardry.common.spell.simple.SpellExplosions; import WayofTime.alchemicalWizardry.common.spell.simple.SpellFireBurst; import WayofTime.alchemicalWizardry.common.spell.simple.SpellFrozenWater; import WayofTime.alchemicalWizardry.common.spell.simple.SpellHolyBlast; import WayofTime.alchemicalWizardry.common.spell.simple.SpellLightningBolt; import WayofTime.alchemicalWizardry.common.spell.simple.SpellTeleport; import WayofTime.alchemicalWizardry.common.spell.simple.SpellWateryGrave; import WayofTime.alchemicalWizardry.common.spell.simple.SpellWindGust; import WayofTime.alchemicalWizardry.common.summoning.SummoningHelper; import WayofTime.alchemicalWizardry.common.summoning.SummoningRegistry; import WayofTime.alchemicalWizardry.common.summoning.meteor.MeteorParadigm; import WayofTime.alchemicalWizardry.common.summoning.meteor.MeteorRegistry; import WayofTime.alchemicalWizardry.common.tileEntity.TEAltar; import WayofTime.alchemicalWizardry.common.tileEntity.TEConduit; import WayofTime.alchemicalWizardry.common.tileEntity.TEHomHeart; import WayofTime.alchemicalWizardry.common.tileEntity.TEMasterStone; import WayofTime.alchemicalWizardry.common.tileEntity.TEPedestal; import WayofTime.alchemicalWizardry.common.tileEntity.TEPlinth; import WayofTime.alchemicalWizardry.common.tileEntity.TESocket; import WayofTime.alchemicalWizardry.common.tileEntity.TETeleposer; import WayofTime.alchemicalWizardry.common.tileEntity.TEWritingTable; import WayofTime.alchemicalWizardry.common.tileEntity.gui.GuiHandler; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; import cpw.mods.fml.common.registry.TickRegistry; import cpw.mods.fml.relauncher.Side; @Mod(modid = "AWWayofTime", name = "AlchemicalWizardry", version = "v0.7.2") @NetworkMod(clientSideRequired = true, serverSideRequired = false, channels = {"BloodAltar", "particle", "SetLifeEssence", "GetLifeEssence", "Ritual", "GetAltarEssence", "TESocket", "TEWritingTable", "CustomParticle", "SetPlayerVel", "SetPlayerPos", "TEPedestal", "TEPlinth", "TETeleposer", "InfiniteLPPath", "TEOrientor"}, packetHandler = PacketHandler.class) public class AlchemicalWizardry { public static boolean doMeteorsDestroyBlocks = true; public static String[] diamondMeteorArray; public static int diamondMeteorRadius; public static String[] stoneMeteorArray; public static int stoneMeteorRadius; public static String[] ironBlockMeteorArray; public static int ironBlockMeteorRadius; public static String[] netherStarMeteorArray; public static int netherStarMeteorRadius; public static Potion customPotionDrowning; public static Potion customPotionBoost; public static Potion customPotionProjProt; public static Potion customPotionInhibit; public static Potion customPotionFlight; public static Potion customPotionReciprocation; public static int customPotionDrowningID; public static int customPotionBoostID; public static int customPotionProjProtID; public static int customPotionInhibitID; public static int customPotionFlightID; public static int customPotionReciprocationID; public static boolean isThaumcraftLoaded; public static CreativeTabs tabBloodMagic = new CreativeTabs("tabBloodMagic") { public ItemStack getIconItemStack() { return new ItemStack(AlchemicalWizardry.weakBloodOrb, 1, 0); } }; public static EnumToolMaterial bloodBoundToolMaterial = EnumHelper.addToolMaterial("BoundBlood", 4, 1000, 12.0f, 8.0f, 50); public static EnumArmorMaterial sanguineArmourArmourMaterial = EnumHelper.addArmorMaterial("SanguineArmour", 1000, new int[] {3, 6, 5, 2}, 30); //Dungeon loot chances public int standardBindingAgentDungeonChance; public int mundanePowerCatalystDungeonChance; public int averagePowerCatalystDungeonChance; public int greaterPowerCatalystDungeonChance; public int mundaneLengtheningCatalystDungeonChance; public int averageLengtheningCatalystDungeonChance; public int greaterLengtheningCatalystDungeonChance; //Mob IDs public static int entityFallenAngelID = 20; public static int entityLowerGuardianID = 21; public static int entityBileDemonID = 22; public static int entityWingedFireDemonID = 23; public static int entitySmallEarthGolemID = 24; public static int entityIceDemonID = 25; public static int entityBoulderFistID = 26; public static int entityShadeID = 27; public static int entityAirElementalID = 28; public static int entityWaterElementalID = 29; public static int entityEarthElementalID = 30; public static int entityFireElementalID = 31; public static int entityShadeElementalID = 32; public static int entityHolyElementalID = 33; public static Item orbOfTesting; public static Item weakBloodOrb; public static Item apprenticeBloodOrb; public static Item magicianBloodOrb; public static Item energyBlaster; public static Item energySword; public static Item lavaCrystal; public static Item waterSigil; public static Item lavaSigil; public static Item voidSigil; //public static Item glassShard = new GlassShard(17009).setUnlocalizedName("glassShard"); //public static Item bloodiedShard = new BloodiedShard(17010).setUnlocalizedName("bloodiedShard"); public static Item blankSlate; public static Item reinforcedSlate; public static Item sacrificialDagger; public static Item daggerOfSacrifice; public static Item airSigil; public static Item sigilOfTheFastMiner; public static Item sigilOfElementalAffinity; public static Item sigilOfHaste; public static Item sigilOfHolding; public static Item divinationSigil; // public static Item elementalInkWater; // public static Item elementalInkFire; // public static Item elementalInkEarth; // public static Item elementalInkAir; public static Item waterScribeTool; public static Item fireScribeTool; public static Item earthScribeTool; public static Item airScribeTool; public static Item activationCrystal; public static Item boundPickaxe; public static Item boundAxe; public static Item boundShovel; public static Item boundHelmet; public static Item boundPlate; public static Item boundLeggings; public static Item boundBoots; public static Item weakBloodShard; public static Item growthSigil; //public static Item fireSpell; public static Item blankSpell; public static Item masterBloodOrb; public static Item alchemyFlask; public static Item standardBindingAgent; public static Item mundanePowerCatalyst; public static Item averagePowerCatalyst; public static Item greaterPowerCatalyst; public static Item mundaneLengtheningCatalyst; public static Item averageLengtheningCatalyst; public static Item greaterLengtheningCatalyst; public static Item incendium; public static Item magicales; public static Item sanctus; public static Item aether; public static Item simpleCatalyst; public static Item crepitous; public static Item crystallos; public static Item terrae; public static Item aquasalus; public static Item tennebrae; public static Item demonBloodShard; public static Item archmageBloodOrb; public static Item sigilOfWind; public static Item telepositionFocus; public static Item enhancedTelepositionFocus; public static Item reinforcedTelepositionFocus; public static Item demonicTelepositionFocus; public static Item imbuedSlate; public static Item demonicSlate; public static Item duskScribeTool; public static Item sigilOfTheBridge; public static Item armourInhibitor; public static Item creativeFiller; public static Item demonPlacer; public static Item itemBloodRuneBlock; public static Item weakFillingAgent; public static Item standardFillingAgent; public static Item enhancedFillingAgent; public static Item weakBindingAgent; public static Item itemRitualDiviner; public static Item sanguineHelmet; public static Item focusBloodBlast; public static Item focusGravityWell; public static Item sigilOfMagnetism; public static Item itemKeyOfDiablo; public static Item energyBazooka; public static Item itemBloodLightSigil; public static Block testingBlock; public static Block bloodStoneBrick; public static Block largeBloodStoneBrick; // public static Block lifeEssenceStill; // public static Block lifeEssenceFlowing; public static BlockAltar blockAltar; public static BloodRune bloodRune; public static SpeedRune speedRune; public static EfficiencyRune efficiencyRune; public static RuneOfSacrifice runeOfSacrifice; public static RuneOfSelfSacrifice runeOfSelfSacrifice; public static Block blockMasterStone; public static Block ritualStone; public static Block imperfectRitualStone; public static Block bloodSocket; public static Block emptySocket; public static Block armourForge; public static Block blockWritingTable; public static Block blockHomHeart; public static Block blockPedestal; public static Block blockPlinth; public static Block blockLifeEssence; public static Block blockTeleposer; public static Block spectralBlock; public static Block blockConduit; public static Block blockBloodLight; public static Item bucketLife; public static Fluid lifeEssenceFluid; public static int weakBloodOrbItemID; public static int energyBlasterItemID; public static int energySwordItemID; public static int lavaCrystalItemID; public static int waterSigilItemID; public static int lavaSigilItemID; public static int voidSigilItemID; public static int sigilOfTheFastMinerItemID; public static int sigilOfElementalAffinityItemID; public static int sigilOfHasteItemID; public static int blankSlateItemID; public static int reinforcedSlateItemID; public static int sacrificialDaggerItemID; public static int daggerOfSacrificeItemID; public static int bucketLifeItemID; public static int apprenticeBloodOrbItemID; public static int magicianBloodOrbItemID; public static int airSigilItemID; public static int sigilOfHoldingItemID; public static int divinationSigilItemID; public static int elementalInkWaterItemID; public static int elementalInkFireItemID; public static int elementalInkEarthItemID; public static int elementalInkAirItemID; public static int waterScribeToolItemID; public static int fireScribeToolItemID; public static int earthScribeToolItemID; public static int airScribeToolItemID; public static int weakActivationCrystalItemID; public static int boundPickaxeItemID; public static int boundAxeItemID; public static int boundShovelItemID; public static int boundHelmetItemID; public static int boundPlateItemID; public static int boundLeggingsItemID; public static int boundBootsItemID; public static int weakBloodShardItemID; public static int growthSigilItemID; //public static int fireSpellItemID; public static int blankSpellItemID; public static int masterBloodOrbItemID; public static int alchemyFlaskItemID; public static int standardBindingAgentItemID; public static int mundanePowerCatalystItemID; public static int averagePowerCatalystItemID; public static int greaterPowerCatalystItemID; public static int mundaneLengtheningCatalystItemID; public static int averageLengtheningCatalystItemID; public static int greaterLengtheningCatalystItemID; public static int incendiumItemID; public static int magicalesItemID; public static int sanctusItemID; public static int aetherItemID; public static int simpleCatalystItemID; public static int crepitousItemID; public static int crystallosItemID; public static int terraeItemID; public static int aquasalusItemID; public static int tennebraeItemID; public static int demonBloodShardItemID; public static int archmageBloodOrbItemID; public static int sigilOfWindItemID; public static int telepositionFocusItemID; public static int enhancedTelepositionFocusItemID; public static int reinforcedTelepositionFocusItemID; public static int demonicTelepositionFocusItemID; public static int imbuedSlateItemID; public static int demonicSlateItemID; public static int duskScribeToolItemID; public static int sigilOfTheBridgeItemID; public static int armourInhibitorItemID; public static int creativeFillerItemID; public static int demonPlacerItemID; public static int itemBloodRuneBlockItemID; public static int weakFillingAgentItemID; public static int standardFillingAgentItemID; public static int enhancedFillingAgentItemID; public static int weakBindingAgentItemID; public static int itemRitualDivinerItemID; public static int sanguineHelmetItemID; public static int focusBloodBlastItemID; public static int focusGravityWellItemID; public static int sigilOfMagnetismItemID; public static int itemKeyOfDiabloItemID; public static int energyBazookaItemID; public static int itemBloodLightSigilItemID; public static int testingBlockBlockID; public static int lifeEssenceFlowingBlockID; public static int lifeEssenceStillBlockID; public static int blockAltarBlockID; public static int bloodRuneBlockID; public static int speedRuneBlockID; public static int runeOfSacrificeBlockID; public static int runeOfSelfSacrificeBlockID; public static int efficiencyRuneBlockID; public static int lifeEssenceFluidID; public static int ritualStoneBlockID; public static int blockMasterStoneBlockID; public static int imperfectRitualStoneBlockID; public static int bloodSocketBlockID; public static int armourForgeBlockID; public static int emptySocketBlockID; public static int largeBloodStoneBrickBlockID; public static int bloodStoneBrickBlockID; public static int blockWritingTableBlockID; public static int blockHomHeartBlockID; public static int blockPedestalBlockID; public static int blockPlinthBlockID; public static int blockTeleposerBlockID; public static int spectralBlockBlockID; public static int blockConduitBlockID; public static int blockBloodLightBlockID; public static void registerRenderInformation() {}; public static void registerRenderThings() {}; // The instance of your mod that Forge uses. @Instance("AWWayofTime") public static AlchemicalWizardry instance; // Says where the client and server 'proxy' code is loaded. @SidedProxy(clientSide = "WayofTime.alchemicalWizardry.client.ClientProxy", serverSide = "WayofTime.alchemicalWizardry.common.CommonProxy") public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { MinecraftForge.EVENT_BUS.register(new LifeBucketHandler()); Configuration config = new Configuration(event.getSuggestedConfigurationFile()); config.load(); testingBlockBlockID = config.getBlock("TestingBlock", 1400).getInt(); lifeEssenceFlowingBlockID = config.getBlock("LifeEssenceFlowing", 1401).getInt(); lifeEssenceStillBlockID = config.getBlock("LifeEssenceStill", 1402).getInt(); blockAltarBlockID = config.getBlock("BloodAltar", 1403).getInt(); bloodRuneBlockID = config.getBlock("BloodRune", 1404).getInt(); speedRuneBlockID = config.getBlock("SpeedRune", 1405).getInt(); efficiencyRuneBlockID = config.getBlock("EfficiencyRune", 1406).getInt(); lifeEssenceFluidID = config.getBlock("LifeEssenceFluid", 1407).getInt(); runeOfSacrificeBlockID = config.getBlock("RuneOfSacrifice", 1408).getInt(); runeOfSelfSacrificeBlockID = config.getBlock("RuneOfSelfSacrifice", 1409).getInt(); ritualStoneBlockID = config.getBlock("RitualStone", 1410).getInt(); blockMasterStoneBlockID = config.getBlock("MasterStone", 1411).getInt(); imperfectRitualStoneBlockID = config.getBlock("ImperfectRitualStone", 1412).getInt(); emptySocketBlockID = config.getBlock("EmptySocket", 1413).getInt(); bloodSocketBlockID = config.getBlock("BloodSocket", 1414).getInt(); armourForgeBlockID = config.getBlock("ArmourForge", 1415).getInt(); largeBloodStoneBrickBlockID = config.getBlock("LargeBloodStoneBrick", 1416).getInt(); bloodStoneBrickBlockID = config.getBlock("BloodStoneBrick", 1417).getInt(); blockWritingTableBlockID = config.getBlock("BlockWritingTable", 1418).getInt(); blockHomHeartBlockID = config.getBlock("BlockHomHeart", 1419).getInt(); blockPedestalBlockID = config.getBlock("BlockPedestal", 1420).getInt(); blockPlinthBlockID = config.getBlock("BlockPlinth", 1421).getInt(); blockTeleposerBlockID = config.getBlock("BlockTeleposer", 1422).getInt(); spectralBlockBlockID = config.getBlock("SpectralBlock", 1423).getInt(); blockBloodLightBlockID = config.getBlock("BloodLight", 1424).getInt(); //blockConduitBlockID = config.getBlock("BlockConduit", 1424).getInt(); //Items weakBloodOrbItemID = config.getItem("WeakBloodOrb", 17000).getInt(); energyBlasterItemID = config.getItem("EnergyBlaster", 17001).getInt(); energySwordItemID = config.getItem("EnergySword", 17002).getInt(); lavaCrystalItemID = config.getItem("LavaCrystal", 17003).getInt(); waterSigilItemID = config.getItem("WaterSigil", 17004).getInt(); lavaSigilItemID = config.getItem("LavaSigil", 17005).getInt(); voidSigilItemID = config.getItem("VoidSigil", 17006).getInt(); blankSlateItemID = config.getItem("BlankSlate", 17007).getInt(); reinforcedSlateItemID = config.getItem("ReinforcedSlate", 17008).getInt(); sacrificialDaggerItemID = config.getItem("SacrificialDagger", 17009).getInt(); bucketLifeItemID = config.getItem("BucketLife", 17010).getInt(); apprenticeBloodOrbItemID = config.getItem("ApprenticeBloodOrb", 17011).getInt(); daggerOfSacrificeItemID = config.getItem("DaggerOfSacrifice", 17012).getInt(); airSigilItemID = config.getItem("AirSigil", 17013).getInt(); sigilOfTheFastMinerItemID = config.getItem("SigilOfTheFastMiner", 17014).getInt(); // elementalInkWaterItemID = config.getItem("ElementalInkWater", 17015).getInt(); // elementalInkFireItemID = config.getItem("ElementalInkFire", 17016).getInt(); // elementalInkEarthItemID = config.getItem("ElementalInkEarth", 17017).getInt(); // elementalInkAirItemID = config.getItem("ElementalInkAir", 17018).getInt(); duskScribeToolItemID = config.getItem("DuskScribeTool", 17015).getInt(); demonPlacerItemID = config.getItem("DemonPlacer", 17016).getInt(); itemBloodRuneBlockItemID = config.getItem("ItemBloodRuneBlock", 17017).getInt(); armourInhibitorItemID = config.getItem("ArmourInhibitor", 17018).getInt(); divinationSigilItemID = config.getItem("DivinationSigin", 17019).getInt(); waterScribeToolItemID = config.getItem("WaterScribeTool", 17020).getInt(); fireScribeToolItemID = config.getItem("FireScribeTool", 17021).getInt(); earthScribeToolItemID = config.getItem("EarthScribeTool", 17022).getInt(); airScribeToolItemID = config.getItem("AirScribeTool", 17023).getInt(); weakActivationCrystalItemID = config.getItem("WeakActivationCrystal", 17024).getInt(); magicianBloodOrbItemID = config.getItem("MagicianBloodOrb", 17025).getInt(); sigilOfElementalAffinityItemID = config.getItem("SigilOfElementalAffinity", 17026).getInt(); sigilOfHasteItemID = config.getItem("SigilOfHaste", 17027).getInt(); sigilOfHoldingItemID = config.getItem("SigilOfHolding", 17028).getInt(); boundPickaxeItemID = config.getItem("BoundPickaxe", 17029).getInt(); boundAxeItemID = config.getItem("BoundAxe", 17030).getInt(); boundShovelItemID = config.getItem("BoundShovel", 17031).getInt(); boundHelmetItemID = config.getItem("BoundHelmet", 17032).getInt(); boundPlateItemID = config.getItem("BoundPlate", 17033).getInt(); boundLeggingsItemID = config.getItem("BoundLeggings", 17034).getInt(); boundBootsItemID = config.getItem("BoundBoots", 17035).getInt(); weakBloodShardItemID = config.getItem("WeakBloodShard", 17036).getInt(); growthSigilItemID = config.getItem("SigilOfGrowth", 17037).getInt(); masterBloodOrbItemID = config.getItem("MasterBloodOrb", 17038).getInt(); blankSpellItemID = config.getItem("BlankSpell", 17039).getInt(); alchemyFlaskItemID = config.getItem("AlchemyFlask", 17040).getInt(); standardBindingAgentItemID = config.getItem("StandardBindingAgent", 17041).getInt(); mundanePowerCatalystItemID = config.getItem("MundanePowerCatalyst", 17042).getInt(); averagePowerCatalystItemID = config.getItem("AveragePowerCatalyst", 17043).getInt(); greaterPowerCatalystItemID = config.getItem("GreaterPowerCatalyst", 17044).getInt(); mundaneLengtheningCatalystItemID = config.getItem("MundaneLengtheningCatalyst", 17045).getInt(); averageLengtheningCatalystItemID = config.getItem("AverageLengtheningCatalyst", 17046).getInt(); greaterLengtheningCatalystItemID = config.getItem("GreaterLengtheningCatalyst", 17047).getInt(); demonBloodShardItemID = config.getItem("DemonBloodShard", 17048).getInt(); archmageBloodOrbItemID = config.getItem("ArchmageBloodOrb", 17049).getInt(); sigilOfWindItemID = config.getItem("SigilOfWind", 17050).getInt(); telepositionFocusItemID = config.getItem("TelepositionFocusItemID", 17051).getInt(); enhancedTelepositionFocusItemID = config.getItem("EnhancedTelepositionFocus", 17052).getInt(); reinforcedTelepositionFocusItemID = config.getItem("ReinforcedTelepositionFocus", 17053).getInt(); demonicTelepositionFocusItemID = config.getItem("DemonicTelepositionFocus", 17054).getInt(); imbuedSlateItemID = config.getItem("ImbuedSlate", 17055).getInt(); demonicSlateItemID = config.getItem("DemonicSlate", 17056).getInt(); sigilOfTheBridgeItemID = config.getItem("SigilOfTheBridge", 17057).getInt(); creativeFillerItemID = config.getItem("CreativeFiller", 17058).getInt(); itemRitualDivinerItemID = config.getItem("ItemRitualDiviner", 17059).getInt(); itemKeyOfDiabloItemID = config.getItem("ItemKeyOfDiablo", 17081).getInt(); energyBazookaItemID = config.getItem("EnergyBazooka", 17082).getInt(); itemBloodLightSigilItemID = config.getItem("BloodLightSigil", 17083).getInt(); simpleCatalystItemID = config.getItem("SimpleCatalyst", 17060).getInt(); incendiumItemID = config.getItem("Incendium", 17061).getInt(); magicalesItemID = config.getItem("Magicales", 17062).getInt(); sanctusItemID = config.getItem("Sanctus", 17063).getInt(); aetherItemID = config.getItem("Aether", 17064).getInt(); crepitousItemID = config.getItem("Crepitous", 17065).getInt(); crystallosItemID = config.getItem("Crystallos", 17066).getInt(); terraeItemID = config.getItem("Terrae", 17067).getInt(); aquasalusItemID = config.getItem("Aquasalus", 17068).getInt(); tennebraeItemID = config.getItem("Tennebrae", 17069).getInt(); weakBindingAgentItemID = config.getItem("WeakBindingAgent", 17070).getInt(); weakFillingAgentItemID = config.getItem("WeakFillingAgent", 17072).getInt(); standardFillingAgentItemID = config.getItem("StandardFillingAgent", 17073).getInt(); enhancedFillingAgentItemID = config.getItem("EnhancedFillingAgent", 17074).getInt(); sanguineHelmetItemID = config.getItem("SanguineHelmet", 17075).getInt(); focusBloodBlastItemID = config.getItem("FocusBloodBlast", 17076).getInt(); focusGravityWellItemID = config.getItem("FocusGravityWell", 17077).getInt(); sigilOfMagnetismItemID = config.getItem("SigilOfMagnetism", 17080).getInt(); //Custom config stuff goes here this.standardBindingAgentDungeonChance = config.get("Dungeon Loot Chances", "standardBindingAgent", 30).getInt(); this.mundanePowerCatalystDungeonChance = config.get("Dungeon Loot Chances", "mundanePowerCatalyst", 20).getInt(); this.averagePowerCatalystDungeonChance = config.get("Dungeon Loot Chances", "averagePowerCatalyst", 10).getInt(); this.greaterPowerCatalystDungeonChance = config.get("Dungeon Loot Chances", "greaterPowerCatalyst", 05).getInt(); this.mundaneLengtheningCatalystDungeonChance = config.get("Dungeon Loot Chances", "mundaneLengtheningCatalyst", 20).getInt(); this.averageLengtheningCatalystDungeonChance = config.get("Dungeon Loot Chances", "averageLengtheningCatalyst", 10).getInt(); this.greaterLengtheningCatalystDungeonChance = config.get("Dungeon Loot Chances", "greaterLengtheningCatalyst", 05).getInt(); customPotionDrowningID = config.get("Potion ID", "Drowning", 100).getInt(); customPotionBoostID = config.get("Potion ID", "Boost", 101).getInt(); customPotionProjProtID = config.get("Potion ID", "ProjProt", 102).getInt(); customPotionInhibitID = config.get("Potion ID", "Inhibit", 103).getInt(); customPotionFlightID = config.get("Potion ID", "Flight", 104).getInt(); customPotionReciprocationID = config.get("Potion ID", "Reciprocation", 105).getInt(); //TODO MeteorParadigm.maxChance = config.get("meteor", "maxChance", 1000).getInt(); this.doMeteorsDestroyBlocks = config.get("meteor", "doMeteorsDestroyBlocks", true).getBoolean(true); this.diamondMeteorArray = config.get("meteor", "diamondMeteor", new String[] {"oreDiamond", "100", "oreEmerald", "75", "oreCinnabar", "200", "oreAmber", "200"}).getStringList(); this.diamondMeteorRadius = config.get("meteor", "diamondMeteorRadius", 5).getInt(); this.stoneMeteorArray = config.get("meteor", "stoneBlockMeteor", new String[] {"oreCoal", "150", "oreApatite", "50", "oreIron", "50"}).getStringList(); this.stoneMeteorRadius = config.get("meteor", "stoneMeteorRadius", 16).getInt(); this.ironBlockMeteorArray = config.get("meteor", "ironBlockMeteor", new String[] {"oreIron", "400", "oreGold", "30", "oreCopper", "200", "oreTin", "140", "oreSilver", "70", "oreLead", "80", "oreLapis", "60", "oreRedstone", "100"}).getStringList(); this.ironBlockMeteorRadius = config.get("meteor", "ironBlockMeteorRadius", 7).getInt(); this.netherStarMeteorArray = config.get("meteor", "netherStarMeteor", new String[] {"oreDiamond", "150", "oreEmerald", "100", "oreQuartz", "250", "oreSunstone", "5", "oreMoonstone", "50", "oreIridium", "5", "oreCertusQuartz", "150"}).getStringList(); this.netherStarMeteorRadius = config.get("meteor", "netherStarMeteorRadius", 3).getInt(); config.save(); Potion[] potionTypes = null; for (Field f : Potion.class.getDeclaredFields()) { f.setAccessible(true); try { if (f.getName().equals("potionTypes") || f.getName().equals("field_76425_a")) { Field modfield = Field.class.getDeclaredField("modifiers"); modfield.setAccessible(true); modfield.setInt(f, f.getModifiers() & ~Modifier.FINAL); potionTypes = (Potion[])f.get(null); final Potion[] newPotionTypes = new Potion[256]; System.arraycopy(potionTypes, 0, newPotionTypes, 0, potionTypes.length); f.set(null, newPotionTypes); } } catch (Exception e) { System.err.println("Severe error, please report this to the mod author:"); System.err.println(e); } } MinecraftForge.EVENT_BUS.register(new AlchemicalWizardryEventHooks()); } @EventHandler public void load(FMLInitializationEvent event) { int craftingConstant = OreDictionary.WILDCARD_VALUE; TickRegistry.registerTickHandler(new AlchemicalWizardryTickHandler(), Side.SERVER); //orbOfTesting = new OrbOfTesting(17000); weakBloodOrb = new EnergyBattery(weakBloodOrbItemID, 5000).setUnlocalizedName("weakBloodOrb"); apprenticeBloodOrb = new ApprenticeBloodOrb(apprenticeBloodOrbItemID, 25000).setUnlocalizedName("apprenticeBloodOrb"); magicianBloodOrb = new MagicianBloodOrb(magicianBloodOrbItemID, 150000).setUnlocalizedName("magicianBloodOrb"); masterBloodOrb = new MasterBloodOrb(masterBloodOrbItemID, 1000000).setUnlocalizedName("masterBloodOrb"); archmageBloodOrb = new ArchmageBloodOrb(archmageBloodOrbItemID, 10000000).setUnlocalizedName("archmageBloodOrb"); energyBlaster = new EnergyBlast(energyBlasterItemID).setUnlocalizedName("energyBlast"); energySword = new EnergySword(energySwordItemID).setUnlocalizedName("energySword"); lavaCrystal = new LavaCrystal(lavaCrystalItemID).setUnlocalizedName("lavaCrystal"); waterSigil = new WaterSigil(waterSigilItemID).setUnlocalizedName("waterSigil"); lavaSigil = new LavaSigil(lavaSigilItemID).setUnlocalizedName("lavaSigil"); voidSigil = new VoidSigil(voidSigilItemID).setUnlocalizedName("voidSigil"); //public final static Item glassShard = new GlassShard(17009).setUnlocalizedName("glassShard"); //public final static Item bloodiedShard = new BloodiedShard(17010).setUnlocalizedName("bloodiedShard"); blankSlate = new AWBaseItems(blankSlateItemID).setUnlocalizedName("blankSlate"); reinforcedSlate = new AWBaseItems(reinforcedSlateItemID).setUnlocalizedName("reinforcedSlate"); sacrificialDagger = new SacrificialDagger(sacrificialDaggerItemID).setUnlocalizedName("sacrificialDagger"); daggerOfSacrifice = new DaggerOfSacrifice(daggerOfSacrificeItemID).setUnlocalizedName("daggerOfSacrifice"); airSigil = new AirSigil(airSigilItemID).setUnlocalizedName("airSigil"); sigilOfTheFastMiner = new SigilOfTheFastMiner(sigilOfTheFastMinerItemID).setUnlocalizedName("sigilOfTheFastMiner"); sigilOfElementalAffinity = new SigilOfElementalAffinity(sigilOfElementalAffinityItemID).setUnlocalizedName("sigilOfElementalAffinity"); sigilOfHaste = new SigilOfHaste(sigilOfHasteItemID).setUnlocalizedName("sigilOfHaste"); sigilOfHolding = new SigilOfHolding(sigilOfHoldingItemID).setUnlocalizedName("sigilOfHolding"); divinationSigil = new DivinationSigil(divinationSigilItemID).setUnlocalizedName("divinationSigil"); // elementalInkWater = new WaterInk(elementalInkWaterItemID).setUnlocalizedName("waterInk"); // elementalInkFire = new FireInk(elementalInkFireItemID).setUnlocalizedName("fireInk"); // elementalInkEarth = new EarthInk(elementalInkEarthItemID).setUnlocalizedName("earthInk"); // elementalInkAir = new AirInk(elementalInkAirItemID).setUnlocalizedName("airInk"); waterScribeTool = new WaterScribeTool(waterScribeToolItemID).setUnlocalizedName("waterScribeTool"); fireScribeTool = new FireScribeTool(fireScribeToolItemID).setUnlocalizedName("fireScribeTool"); earthScribeTool = new EarthScribeTool(earthScribeToolItemID).setUnlocalizedName("earthScribeTool"); airScribeTool = new AirScribeTool(airScribeToolItemID).setUnlocalizedName("airScribeTool"); activationCrystal = new ActivationCrystal(weakActivationCrystalItemID); boundPickaxe = new BoundPickaxe(boundPickaxeItemID).setUnlocalizedName("boundPickaxe"); boundAxe = new BoundAxe(boundAxeItemID).setUnlocalizedName("boundAxe"); boundShovel = new BoundShovel(boundShovelItemID).setUnlocalizedName("boundShovel"); boundHelmet = new BoundArmour(boundHelmetItemID, 0).setUnlocalizedName("boundHelmet"); boundPlate = new BoundArmour(boundPlateItemID, 1).setUnlocalizedName("boundPlate"); boundLeggings = new BoundArmour(boundLeggingsItemID, 2).setUnlocalizedName("boundLeggings"); boundBoots = new BoundArmour(boundBootsItemID, 3).setUnlocalizedName("boundBoots"); weakBloodShard = new BloodShard(weakBloodShardItemID).setUnlocalizedName("weakBloodShard"); growthSigil = new SigilOfGrowth(growthSigilItemID).setUnlocalizedName("growthSigil"); //fireSpell = new SpellFireBurst(fireSpellItemID).setUnlocalizedName("fireSpell"); blankSpell = new BlankSpell(blankSpellItemID).setUnlocalizedName("blankSpell"); alchemyFlask = new AlchemyFlask(alchemyFlaskItemID).setUnlocalizedName("alchemyFlask"); standardBindingAgent = new StandardBindingAgent(standardBindingAgentItemID).setUnlocalizedName("standardBindingAgent"); mundanePowerCatalyst = new MundanePowerCatalyst(mundanePowerCatalystItemID).setUnlocalizedName("mundanePowerCatalyst"); averagePowerCatalyst = new AveragePowerCatalyst(averagePowerCatalystItemID).setUnlocalizedName("averagePowerCatalyst"); greaterPowerCatalyst = new GreaterPowerCatalyst(greaterPowerCatalystItemID).setUnlocalizedName("greaterPowerCatalyst"); mundaneLengtheningCatalyst = new MundaneLengtheningCatalyst(mundaneLengtheningCatalystItemID).setUnlocalizedName("mundaneLengtheningCatalyst"); averageLengtheningCatalyst = new AverageLengtheningCatalyst(averageLengtheningCatalystItemID).setUnlocalizedName("averageLengtheningCatalyst"); greaterLengtheningCatalyst = new GreaterLengtheningCatalyst(greaterLengtheningCatalystItemID).setUnlocalizedName("greaterLengtheningCatalyst"); incendium = new AlchemyReagent(incendiumItemID).setUnlocalizedName("incendium"); magicales = new AlchemyReagent(magicalesItemID).setUnlocalizedName("magicales"); sanctus = new AlchemyReagent(sanctusItemID).setUnlocalizedName("sanctus"); aether = new AlchemyReagent(aetherItemID).setUnlocalizedName("aether"); simpleCatalyst = new AlchemyReagent(simpleCatalystItemID).setUnlocalizedName("simpleCatalyst"); crepitous = new AlchemyReagent(crepitousItemID).setUnlocalizedName("crepitous"); crystallos = new AlchemyReagent(crystallosItemID).setUnlocalizedName("crystallos"); terrae = new AlchemyReagent(terraeItemID).setUnlocalizedName("terrae"); aquasalus = new AlchemyReagent(aquasalusItemID).setUnlocalizedName("aquasalus"); tennebrae = new AlchemyReagent(tennebraeItemID).setUnlocalizedName("tennebrae"); demonBloodShard = new BloodShard(demonBloodShardItemID).setUnlocalizedName("demonBloodShard"); sigilOfWind = new SigilOfWind(sigilOfWindItemID).setUnlocalizedName("sigilOfWind"); telepositionFocus = new TelepositionFocus(telepositionFocusItemID, 1).setUnlocalizedName("telepositionFocus"); enhancedTelepositionFocus = new EnhancedTelepositionFocus(enhancedTelepositionFocusItemID).setUnlocalizedName("enhancedTelepositionFocus"); reinforcedTelepositionFocus = new ReinforcedTelepositionFocus(reinforcedTelepositionFocusItemID).setUnlocalizedName("reinforcedTelepositionFocus"); demonicTelepositionFocus = new DemonicTelepositionFocus(demonicTelepositionFocusItemID).setUnlocalizedName("demonicTelepositionFocus"); imbuedSlate = new AWBaseItems(imbuedSlateItemID).setUnlocalizedName("imbuedSlate"); demonicSlate = new AWBaseItems(demonicSlateItemID).setUnlocalizedName("demonicSlate"); duskScribeTool = new DuskScribeTool(duskScribeToolItemID).setUnlocalizedName("duskScribeTool"); sigilOfTheBridge = new SigilOfTheBridge(sigilOfTheBridgeItemID).setUnlocalizedName("sigilOfTheBridge"); armourInhibitor = new ArmourInhibitor(armourInhibitorItemID).setUnlocalizedName("armourInhibitor"); creativeFiller = new CheatyItem(creativeFillerItemID).setUnlocalizedName("cheatyItem"); demonPlacer = new DemonPlacer(demonPlacerItemID).setUnlocalizedName("demonPlacer"); weakFillingAgent = new WeakFillingAgent(weakFillingAgentItemID).setUnlocalizedName("weakFillingAgent"); standardFillingAgent = new StandardFillingAgent(standardFillingAgentItemID).setUnlocalizedName("standardFillingAgent"); enhancedFillingAgent = new EnhancedFillingAgent(enhancedFillingAgentItemID).setUnlocalizedName("enhancedFillingAgent"); weakBindingAgent = new WeakBindingAgent(weakBindingAgentItemID).setUnlocalizedName("weakBindingAgent"); itemRitualDiviner = new ItemRitualDiviner(itemRitualDivinerItemID).setUnlocalizedName("ritualDiviner"); sigilOfMagnetism = new SigilOfMagnetism(sigilOfMagnetismItemID).setUnlocalizedName("sigilOfMagnetism"); itemKeyOfDiablo = new ItemDiabloKey(itemKeyOfDiabloItemID).setUnlocalizedName("itemDiabloKey"); energyBazooka = new EnergyBazooka(energyBazookaItemID).setUnlocalizedName("energyBazooka"); itemBloodLightSigil = new ItemBloodLightSigil(itemBloodLightSigilItemID).setUnlocalizedName("bloodLightSigil"); //blocks testingBlock = new TestingBlock(testingBlockBlockID, Material.ground).setHardness(2.0F).setStepSound(Block.soundStoneFootstep).setCreativeTab(CreativeTabs.tabBlock).setLightValue(1.0F); // lifeEssenceStill = new LifeEssenceStill(lifeEssenceStillBlockID); // lifeEssenceFlowing = new LifeEssenceFlowing(lifeEssenceFlowingBlockID); blockAltar = new BlockAltar(blockAltarBlockID); bloodRune = new BloodRune(bloodRuneBlockID); speedRune = new SpeedRune(speedRuneBlockID); efficiencyRune = new EfficiencyRune(efficiencyRuneBlockID); runeOfSacrifice = new RuneOfSacrifice(runeOfSacrificeBlockID); runeOfSelfSacrifice = new RuneOfSelfSacrifice(runeOfSelfSacrificeBlockID); lifeEssenceFluid = new LifeEssence("Life Essence"); blockTeleposer = new BlockTeleposer(blockTeleposerBlockID); spectralBlock = new SpectralBlock(spectralBlockBlockID); ritualStone = new RitualStone(ritualStoneBlockID); blockMasterStone = new BlockMasterStone(blockMasterStoneBlockID); imperfectRitualStone = new ImperfectRitualStone(imperfectRitualStoneBlockID); bloodSocket = new BlockSocket(bloodSocketBlockID); armourForge = new ArmourForge(armourForgeBlockID); emptySocket = new EmptySocket(emptySocketBlockID); largeBloodStoneBrick = new LargeBloodStoneBrick(largeBloodStoneBrickBlockID); bloodStoneBrick = new BloodStoneBrick(bloodStoneBrickBlockID); blockWritingTable = new BlockWritingTable(blockWritingTableBlockID); blockHomHeart = new BlockHomHeart(blockHomHeartBlockID); blockPedestal = new BlockPedestal(blockPedestalBlockID); blockPlinth = new BlockPlinth(blockPlinthBlockID); blockBloodLight = new BlockBloodLightSource(blockBloodLightBlockID); //blockConduit = new BlockConduit(blockConduitBlockID); proxy.registerRenderers(); proxy.registerEntities(); //ItemStacks used for crafting go here ItemStack lavaBucketStack = new ItemStack(Item.bucketLava); ItemStack cobblestoneStack = new ItemStack(Block.cobblestone); ItemStack glassStack = new ItemStack(Block.glass, 1, craftingConstant); ItemStack ironStack = new ItemStack(Item.ingotIron); ItemStack diamondStack = new ItemStack(Item.diamond, 1, craftingConstant); ItemStack woolStack = new ItemStack(Block.cloth); ItemStack goldNuggetStack = new ItemStack(Item.goldNugget); ItemStack stoneStack = new ItemStack(Block.stone, 1, craftingConstant); ItemStack redstoneStack = new ItemStack(Item.redstone); ItemStack glowstoneBlockStack = new ItemStack(Block.glowStone); ItemStack ironBlockStack = new ItemStack(Block.blockIron); ItemStack waterBucketStack = new ItemStack(Item.bucketWater); ItemStack emptyBucketStack = new ItemStack(Item.bucketEmpty); ItemStack magmaCreamStack = new ItemStack(Item.magmaCream); ItemStack stringStack = new ItemStack(Item.silk); ItemStack obsidianStack = new ItemStack(Block.obsidian); ItemStack diamondSwordStack = new ItemStack(Item.swordDiamond); ItemStack goldIngotStack = new ItemStack(Item.ingotGold); ItemStack cauldronStack = new ItemStack(Block.cauldron); ItemStack furnaceStack = new ItemStack(Block.furnaceIdle); ItemStack sugarStack = new ItemStack(Item.sugar); ItemStack featherStack = new ItemStack(Item.feather); ItemStack ghastTearStack = new ItemStack(Item.ghastTear); ItemStack ironPickaxeStack = new ItemStack(Item.pickaxeIron); ItemStack ironAxeStack = new ItemStack(Item.axeIron); ItemStack ironShovelStack = new ItemStack(Item.shovelIron); ItemStack glowstoneDustStack = new ItemStack(Item.glowstone); ItemStack saplingStack = new ItemStack(Block.sapling); ItemStack reedStack = new ItemStack(Item.reed); ItemStack blankSlateStack = new ItemStack(blankSlate, 1, craftingConstant); //ItemStack glassShardStack = new ItemStack(glassShard); ItemStack weakBloodOrbStackCrafted = new ItemStack(weakBloodOrb); //ItemStack bloodiedShardStack = new ItemStack(bloodiedShard); ItemStack reinforcedSlateStack = new ItemStack(reinforcedSlate, 1, craftingConstant); ItemStack weakBloodOrbStack = new ItemStack(weakBloodOrb, 1, craftingConstant); ItemStack imbuedSlateStack = new ItemStack(this.imbuedSlate, 1, craftingConstant); ItemStack demonSlateStack = new ItemStack(this.demonicSlate, 1, craftingConstant); ItemStack apprenticeBloodOrbStack = new ItemStack(apprenticeBloodOrb, 1, craftingConstant); ItemStack magicianBloodOrbStack = new ItemStack(magicianBloodOrb, 1, craftingConstant); ItemStack waterSigilStackCrafted = new ItemStack(waterSigil); ItemStack lavaSigilStackCrafted = new ItemStack(lavaSigil); ItemStack voidSigilStackCrafted = new ItemStack(voidSigil); ItemStack airSigilStack = new ItemStack(airSigil); ItemStack lavaCrystalStackCrafted = new ItemStack(lavaCrystal); ItemStack lavaCrystalStack = new ItemStack(lavaCrystal); ItemStack energySwordStack = new ItemStack(energySword); ItemStack energyBlasterStack = new ItemStack(energyBlaster); ItemStack sacrificialDaggerStack = new ItemStack(sacrificialDagger); ItemStack bloodAltarStack = new ItemStack(blockAltar); ItemStack bloodRuneCraftedStack = new ItemStack(bloodRune, 1); ItemStack bloodRuneStack = new ItemStack(bloodRune); ItemStack speedRuneStack = new ItemStack(speedRune); ItemStack efficiencyRuneStack = new ItemStack(efficiencyRune); ItemStack runeOfSacrificeStack = new ItemStack(runeOfSacrifice); ItemStack runeOfSelfSacrificeStack = new ItemStack(runeOfSelfSacrifice); ItemStack miningSigilStackCrafted = new ItemStack(sigilOfTheFastMiner); ItemStack divinationSigilStackCrafted = new ItemStack(divinationSigil); // ItemStack elementalInkWaterStack = new ItemStack(elementalInkWater); // ItemStack elementalInkFireStack = new ItemStack(elementalInkFire); // ItemStack elementalInkEarthStack = new ItemStack(elementalInkEarth); // ItemStack elementalInkAirStack = new ItemStack(elementalInkAir); ItemStack waterScribeToolStack = new ItemStack(waterScribeTool); ItemStack fireScribeToolStack = new ItemStack(fireScribeTool); ItemStack earthScribeToolStack = new ItemStack(earthScribeTool); ItemStack airScribeToolStack = new ItemStack(airScribeTool); ItemStack ritualStoneStackCrafted = new ItemStack(ritualStone, 4); ItemStack ritualStoneStack = new ItemStack(ritualStone); ItemStack masterRitualStoneStack = new ItemStack(blockMasterStone); ItemStack imperfectRitualStoneStack = new ItemStack(imperfectRitualStone); ItemStack sigilOfElementalAffinityStackCrafted = new ItemStack(sigilOfElementalAffinity); ItemStack lavaSigilStack = new ItemStack(lavaSigil); ItemStack waterSigilStack = new ItemStack(waterSigil); ItemStack sigilOfHoldingStack = new ItemStack(sigilOfHolding); ItemStack weakBloodShardStack = new ItemStack(weakBloodShard); ItemStack emptySocketStack = new ItemStack(emptySocket); ItemStack bloodSocketStack = new ItemStack(bloodSocket); ItemStack armourForgeStack = new ItemStack(armourForge); ItemStack largeBloodStoneBrickStackCrafted = new ItemStack(largeBloodStoneBrick, 32); ItemStack largeBloodStoneBrickStack = new ItemStack(largeBloodStoneBrick); ItemStack bloodStoneBrickStackCrafted = new ItemStack(bloodStoneBrick, 4); ItemStack growthSigilStack = new ItemStack(growthSigil); ItemStack blockHomHeartStack = new ItemStack(blockHomHeart); ItemStack redWoolStack = new ItemStack(Block.cloth, 1, 14); ItemStack zombieHead = new ItemStack(Item.skull, 1, 2); ItemStack simpleCatalystStack = new ItemStack(simpleCatalyst); ItemStack duskRitualDivinerStack = new ItemStack(this.itemRitualDiviner); ((ItemRitualDiviner)duskRitualDivinerStack.getItem()).setMaxRuneDisplacement(duskRitualDivinerStack, 1); //weakBloodOrbStackCrafted.setItemDamage(weakBloodOrbStackCrafted.getMaxDamage()); waterSigilStackCrafted.setItemDamage(waterSigilStackCrafted.getMaxDamage()); lavaSigilStackCrafted.setItemDamage(lavaSigilStackCrafted.getMaxDamage()); voidSigilStackCrafted.setItemDamage(voidSigilStackCrafted.getMaxDamage()); lavaCrystalStackCrafted.setItemDamage(lavaCrystalStackCrafted.getMaxDamage()); miningSigilStackCrafted.setItemDamage(miningSigilStackCrafted.getMaxDamage()); sigilOfElementalAffinityStackCrafted.setItemDamage(sigilOfElementalAffinityStackCrafted.getMaxDamage()); ItemStack archmageBloodOrbStack = new ItemStack(AlchemicalWizardry.archmageBloodOrb); ItemStack sanctusStack = new ItemStack(this.sanctus); ItemStack aetherStack = new ItemStack(this.aether); ItemStack terraeStack = new ItemStack(this.terrae); ItemStack incendiumStack = new ItemStack(this.incendium); ItemStack tennebraeStack = new ItemStack(this.tennebrae); ItemStack aquasalusStack = new ItemStack(this.aquasalus); ItemStack crystallosStack = new ItemStack(this.crystallos); ItemStack crepitousStack = new ItemStack(this.crepitous); ItemStack magicalesStack = new ItemStack(this.magicales); //All crafting goes here // GameRegistry.addRecipe(orbOfTestingStack, "x x", " ", "x x", 'x', cobblestoneStack); //GameRegistry.addRecipe(glassShardStack, " x", "y ", 'x', ironStack, 'y', glassStack); //GameRegistry.addRecipe(weakBloodOrbStackCrafted, "xxx", "xdx", "www", 'x', bloodiedShardStack, 'd', diamondStack, 'w', woolStack); GameRegistry.addRecipe(sacrificialDaggerStack, "ggg", " dg", "i g", 'g', glassStack, 'd', goldIngotStack, 'i', ironStack); //GameRegistry.addRecipe(blankSlateStack, "sgs", "gig", "sgs", 's', stoneStack, 'g', goldNuggetStack, 'i', ironStack); //GameRegistry.addRecipe(reinforcedSlateStack, "rir", "ibi", "gig", 'r', redstoneStack, 'i', ironStack, 'b', blankSlateStack, 'g', glowstoneBlockStack); GameRegistry.addRecipe(lavaCrystalStackCrafted, "glg", "lbl", "odo", 'g', glassStack, 'l', lavaBucketStack, 'b', weakBloodOrbStack, 'd', diamondStack, 'o', obsidianStack); GameRegistry.addRecipe(waterSigilStackCrafted, "www", "wbw", "wow", 'w', waterBucketStack, 'b', blankSlateStack, 'o', weakBloodOrbStack); GameRegistry.addRecipe(lavaSigilStackCrafted, "lml", "lbl", "lcl", 'l', lavaBucketStack, 'b', blankSlateStack, 'm', magmaCreamStack, 'c', lavaCrystalStack); GameRegistry.addRecipe(voidSigilStackCrafted, "ese", "ere", "eoe", 'e', emptyBucketStack, 'r', reinforcedSlateStack, 'o', apprenticeBloodOrbStack, 's', stringStack); GameRegistry.addRecipe(bloodAltarStack, "s s", "scs", "gdg", 's', stoneStack, 'c', furnaceStack, 'd', diamondStack, 'g', goldIngotStack); //GameRegistry.addRecipe(energySwordStack, " o ", " o ", " s ", 'o', weakBloodOrbStack, 's', diamondSwordStack); //GameRegistry.addRecipe(energyBlasterStack, "oi ", "gdi", " rd", 'o', weakBloodOrbStack, 'i', ironStack, 'd', diamondStack, 'r', reinforcedSlateStack, 'g', goldIngotStack); GameRegistry.addRecipe(bloodRuneCraftedStack, "sss", "ror", "sss", 's', stoneStack, 'o', weakBloodOrbStack, 'r', blankSlateStack); GameRegistry.addRecipe(speedRuneStack, "sbs", "uru", "sbs", 'u', sugarStack, 's', stoneStack, 'r', bloodRuneStack, 'b', blankSlateStack); //GameRegistry.addRecipe(efficiencyRuneStack, "sbs", "rur", "sbs", 'r', redstoneStack, 's', stoneStack, 'u', bloodRuneStack,'b',blankSlateStack); GameRegistry.addRecipe(new ItemStack(this.bloodRune, 1, 1), "sbs", "bob", "srs", 's', stoneStack, 'o', magicianBloodOrbStack, 'b', emptyBucketStack, 'r', new ItemStack(this.imbuedSlate)); GameRegistry.addRecipe(new ItemStack(this.bloodRune, 1, 2), "sbs", "bob", "srs", 's', stoneStack, 'o', magicianBloodOrbStack, 'b', waterBucketStack, 'r', new ItemStack(this.imbuedSlate)); GameRegistry.addRecipe(new ItemStack(this.bloodRune, 1, 3), "sws", "ror", "sws", 's', stoneStack, 'o', new ItemStack(this.masterBloodOrb), 'w', weakBloodOrbStack, 'r', new ItemStack(this.demonicSlate)); GameRegistry.addRecipe(airSigilStack, "fgf", "fsf", "fof", 'f', featherStack, 'g', ghastTearStack, 's', reinforcedSlateStack, 'o', apprenticeBloodOrbStack); GameRegistry.addRecipe(miningSigilStackCrafted, "sps", "hra", "sos", 'o', apprenticeBloodOrbStack, 's', stoneStack, 'p', ironPickaxeStack, 'h', ironShovelStack, 'a', ironAxeStack, 'r', reinforcedSlateStack); GameRegistry.addRecipe(runeOfSacrificeStack, "srs", "gog", "srs", 's', stoneStack, 'g', goldIngotStack, 'o', apprenticeBloodOrbStack, 'r', reinforcedSlateStack); GameRegistry.addRecipe(runeOfSelfSacrificeStack, "srs", "gog", "srs", 's', stoneStack, 'g', glowstoneDustStack, 'o', apprenticeBloodOrbStack, 'r', reinforcedSlateStack); GameRegistry.addRecipe(divinationSigilStackCrafted, "ggg", "gsg", "gog", 'g', glassStack, 's', blankSlateStack, 'o', weakBloodOrbStack); // GameRegistry.addRecipe(waterScribeToolStack, "f", "i", 'f', featherStack, 'i', elementalInkWaterStack); // GameRegistry.addRecipe(fireScribeToolStack, "f", "i", 'f', featherStack, 'i', elementalInkFireStack); // GameRegistry.addRecipe(earthScribeToolStack, "f", "i", 'f', featherStack, 'i', elementalInkEarthStack); // GameRegistry.addRecipe(airScribeToolStack, "f", "i", 'f', featherStack, 'i', elementalInkAirStack); GameRegistry.addRecipe(ritualStoneStackCrafted, "srs", "ror", "srs", 's', obsidianStack, 'o', apprenticeBloodOrbStack, 'r', reinforcedSlateStack); GameRegistry.addRecipe(masterRitualStoneStack, "brb", "ror", "brb", 'b', obsidianStack, 'o', magicianBloodOrbStack, 'r', ritualStoneStack); GameRegistry.addRecipe(imperfectRitualStoneStack, "bsb", "sos", "bsb", 's', stoneStack, 'b', obsidianStack, 'o', weakBloodOrbStack); GameRegistry.addRecipe(sigilOfElementalAffinityStackCrafted, "oao", "wsl", "oro", 'o', obsidianStack, 'a', airSigilStack, 'w', waterSigilStack, 'l', lavaSigilStack, 'r', magicianBloodOrbStack, 's', imbuedSlateStack); GameRegistry.addRecipe(sigilOfHoldingStack, "asa", "srs", "aoa", 'a', blankSlateStack, 's', stoneStack, 'r', imbuedSlateStack, 'o', magicianBloodOrbStack); GameRegistry.addRecipe(emptySocketStack, "bgb", "gdg", "bgb", 'b', weakBloodShardStack, 'g', glassStack, 'd', diamondStack); GameRegistry.addRecipe(armourForgeStack, "sfs", "fof", "sfs", 'f', bloodSocketStack, 's', stoneStack, 'o', magicianBloodOrbStack); GameRegistry.addShapelessRecipe(largeBloodStoneBrickStackCrafted, weakBloodShardStack, stoneStack); GameRegistry.addRecipe(bloodStoneBrickStackCrafted, "bb", "bb", 'b', largeBloodStoneBrickStack); GameRegistry.addRecipe(growthSigilStack, "srs", "rer", "sos", 's', saplingStack, 'r', reedStack, 'o', apprenticeBloodOrbStack, 'e', reinforcedSlateStack); GameRegistry.addRecipe(blockHomHeartStack, "www", "srs", "sos", 'w', redWoolStack, 's', stoneStack, 'r', bloodRuneStack, 'o', apprenticeBloodOrbStack); GameRegistry.addShapelessRecipe(new ItemStack(Item.skull, 1, 2), new ItemStack(Item.skull, 1, 1), new ItemStack(Item.rottenFlesh), new ItemStack(Item.ingotIron), new ItemStack(Item.leather)); GameRegistry.addShapelessRecipe(new ItemStack(Item.skull, 1, 0), new ItemStack(Item.skull, 1, 1), new ItemStack(Item.bow, 1, 0), new ItemStack(Item.arrow, 1, 0), new ItemStack(Item.bone)); GameRegistry.addShapelessRecipe(new ItemStack(Item.skull, 1, 4), new ItemStack(Item.skull, 1, 1), new ItemStack(Item.gunpowder), new ItemStack(Block.dirt), new ItemStack(Block.sand)); GameRegistry.addRecipe(new ItemStack(this.blockWritingTable), " s ", "ror", 's', new ItemStack(Item.brewingStand), 'r', obsidianStack, 'o', weakBloodOrbStack); GameRegistry.addRecipe(new ItemStack(this.blockPedestal), "ooo", " c ", "ooo", 'o', obsidianStack, 'c', weakBloodShardStack); GameRegistry.addRecipe(new ItemStack(this.blockPlinth), "iii", " p ", "iii", 'i', ironBlockStack, 'p', new ItemStack(this.blockPedestal)); GameRegistry.addShapelessRecipe(new ItemStack(this.alchemyFlask, 1, 0), new ItemStack(this.alchemyFlask, 1, craftingConstant), new ItemStack(Item.netherStalkSeeds), redstoneStack, glowstoneDustStack); GameRegistry.addRecipe(new ItemStack(this.sigilOfHaste), "csc", "sts", "ror", 'c', new ItemStack(Item.cookie), 's', new ItemStack(Item.sugar), 't', demonicSlate, 'r', obsidianStack, 'o', new ItemStack(this.masterBloodOrb)); GameRegistry.addRecipe(new ItemStack(this.sigilOfWind), "faf", "grg", "fof", 'f', featherStack, 'g', ghastTearStack, 'a', new ItemStack(this.airSigil), 'o', new ItemStack(this.masterBloodOrb), 'r', demonicSlate); GameRegistry.addShapelessRecipe(new ItemStack(this.weakBloodShard, 5, 0), new ItemStack(this.masterBloodOrb), new ItemStack(this.weakBloodShard), imbuedSlateStack); GameRegistry.addRecipe(new ItemStack(this.blockTeleposer), "ggg", "efe", "ggg", 'g', goldIngotStack, 'f', new ItemStack(this.telepositionFocus), 'e', new ItemStack(Item.enderPearl)); GameRegistry.addShapelessRecipe(new ItemStack(this.reinforcedTelepositionFocus), new ItemStack(this.enhancedTelepositionFocus), new ItemStack(this.weakBloodShard)); GameRegistry.addShapelessRecipe(new ItemStack(this.demonicTelepositionFocus), new ItemStack(this.reinforcedTelepositionFocus), new ItemStack(this.demonBloodShard)); GameRegistry.addRecipe(new ItemStack(this.sigilOfTheBridge), "nnn", "nsn", "ror", 'n', stoneStack, 'r', new ItemStack(Block.slowSand), 's', imbuedSlateStack, 'o', magicianBloodOrbStack); GameRegistry.addRecipe(new ItemStack(this.armourInhibitor), " gg", "gsg", "gg ", 'g', goldIngotStack, 's', new ItemStack(this.weakBloodShard)); GameRegistry.addRecipe(new ItemStack(this.itemRitualDiviner), "d1d", "2e3", "d4d", '1', new ItemStack(this.airScribeTool), '2', new ItemStack(this.waterScribeTool), '3', new ItemStack(this.fireScribeTool), '4', new ItemStack(this.earthScribeTool), 'd', diamondStack, 'e', new ItemStack(Item.emerald)); GameRegistry.addRecipe(duskRitualDivinerStack, " d ", "srs", " d ", 'd', new ItemStack(this.duskScribeTool), 's', new ItemStack(this.demonicSlate), 'r', new ItemStack(this.itemRitualDiviner)); GameRegistry.addRecipe(new ItemStack(AlchemicalWizardry.sigilOfMagnetism), "bgb", "gsg", "bob", 'b', new ItemStack(Block.blockIron), 'g', goldIngotStack, 's', new ItemStack(this.imbuedSlate), 'o', magicianBloodOrbStack); GameRegistry.addRecipe(new ItemStack(AlchemicalWizardry.energyBazooka), "Ocd", "cb ", "d w", 'O', archmageBloodOrbStack, 'c', crepitousStack, 'b', new ItemStack(AlchemicalWizardry.energyBlaster), 'd', diamondStack, 'w', new ItemStack(AlchemicalWizardry.weakBloodShard)); GameRegistry.addRecipe(new ItemStack(AlchemicalWizardry.itemBloodLightSigil), "btb", "sss", "bob", 'o', magicianBloodOrbStack, 'b', glowstoneBlockStack, 't', new ItemStack(Block.torchWood), 's', imbuedSlateStack); GameRegistry.addRecipe(new ItemStack(AlchemicalWizardry.itemKeyOfDiablo), " gw", "gdg", "wg ", 'w', weakBloodShardStack, 'g', goldIngotStack, 'd', diamondStack); customPotionDrowning = (new PotionDrowning(customPotionDrowningID, true, 0)).setIconIndex(0, 0).setPotionName("Drowning"); customPotionBoost = (new PotionBoost(customPotionBoostID, false, 0)).setIconIndex(0, 0).setPotionName("Boost"); customPotionProjProt = (new PotionProjectileProtect(customPotionProjProtID, false, 0)).setIconIndex(0, 0).setPotionName("Whirlwind"); customPotionInhibit = (new PotionInhibit(customPotionInhibitID, false, 0)).setIconIndex(0, 0).setPotionName("Inhibit"); customPotionFlight = (new PotionFlight(customPotionFlightID, false, 0)).setIconIndex(0, 0).setPotionName("Flight"); customPotionReciprocation = (new PotionReciprocation(customPotionReciprocationID, false, 0xFFFFFF)).setIconIndex(0, 0).setPotionName("Reciprocation"); //All items registered go here //LanguageRegistry.addName(orbOfTesting, "Orb of Testing"); LanguageRegistry.addName(weakBloodOrb, "Weak Blood Orb"); LanguageRegistry.addName(apprenticeBloodOrb, "Apprentice Blood Orb"); LanguageRegistry.addName(magicianBloodOrb, "Magician's Blood Orb"); LanguageRegistry.addName(archmageBloodOrb, "Archmage's Blood Orb"); LanguageRegistry.addName(energyBlaster, "Energy Blaster"); LanguageRegistry.addName(energySword, "Bound Blade"); LanguageRegistry.addName(lavaCrystal, "Lava Crystal"); LanguageRegistry.addName(waterSigil, "Water Sigil"); LanguageRegistry.addName(lavaSigil, "Lava Sigil"); LanguageRegistry.addName(voidSigil, "Void Sigil"); //LanguageRegistry.addName(glassShard, "Glass Shard"); //LanguageRegistry.addName(bloodiedShard, "Bloodied Shard"); LanguageRegistry.addName(blankSlate, "Blank Slate"); LanguageRegistry.addName(reinforcedSlate, "Reinforced Slate"); LanguageRegistry.addName(sacrificialDagger, "Sacrificial Knife"); LanguageRegistry.addName(daggerOfSacrifice, "Dagger of Sacrifice"); LanguageRegistry.addName(airSigil, "Air Sigil"); LanguageRegistry.addName(sigilOfTheFastMiner, "Sigil of the Fast Miner"); LanguageRegistry.addName(sigilOfElementalAffinity, "Sigil of Elemental Affinity"); LanguageRegistry.addName(sigilOfHaste, "Sigil of Haste"); LanguageRegistry.addName(sigilOfHolding, "Sigil of Holding"); LanguageRegistry.addName(growthSigil, "Sigil of the Green Grove"); // LanguageRegistry.addName(elementalInkWater, "Elemental Ink: Water"); // LanguageRegistry.addName(elementalInkFire, "Elemental Ink: Fire"); // LanguageRegistry.addName(elementalInkEarth, "Elemental Ink: Earth"); // LanguageRegistry.addName(elementalInkAir, "Elemental Ink: Air"); LanguageRegistry.addName(divinationSigil, "Divination Sigil"); LanguageRegistry.addName(new ItemStack(activationCrystal, 1, 0), "Weak Activation Crystal"); LanguageRegistry.addName(new ItemStack(activationCrystal, 1, 1), "Awakened Activation Crystal"); LanguageRegistry.addName(waterScribeTool, "Elemental Inscription Tool: Water"); LanguageRegistry.addName(fireScribeTool, "Elemental Inscription Tool: Fire"); LanguageRegistry.addName(earthScribeTool, "Elemental Inscription Tool: Earth"); LanguageRegistry.addName(airScribeTool, "Elemental Inscription Tool: Air"); LanguageRegistry.addName(boundPickaxe, "Bound Pickaxe"); LanguageRegistry.addName(boundAxe, "Bound Axe"); LanguageRegistry.addName(boundShovel, "Bound Shovel"); LanguageRegistry.addName(boundHelmet, "Bound Helmet"); LanguageRegistry.addName(boundPlate, "Bound Chestplate"); LanguageRegistry.addName(boundLeggings, "Bound Leggings"); LanguageRegistry.addName(boundBoots, "Bound Boots"); LanguageRegistry.addName(weakBloodShard, "Weak Blood Shard"); LanguageRegistry.addName(blankSpell, "Unbound Crystal"); LanguageRegistry.addName(masterBloodOrb, "Master Blood Orb"); LanguageRegistry.addName(alchemyFlask, "Potion Flask"); LanguageRegistry.addName(mundanePowerCatalyst, "Mundane Power Catalyst"); LanguageRegistry.addName(averagePowerCatalyst, "Average Power Catalyst"); LanguageRegistry.addName(greaterPowerCatalyst, "Greater Power Catalyst"); LanguageRegistry.addName(mundaneLengtheningCatalyst, "Mundane Lengthening Catalyst"); LanguageRegistry.addName(averageLengtheningCatalyst, "Average Lengthening Catalyst"); LanguageRegistry.addName(greaterLengtheningCatalyst, "Greater Lengthening Catalyst"); LanguageRegistry.addName(standardBindingAgent, "Standard Binding Agent"); LanguageRegistry.addName(incendium, "Incendium"); LanguageRegistry.addName(magicales, "Magicales"); LanguageRegistry.addName(sanctus, "Sanctus"); LanguageRegistry.addName(aether, "Aether"); LanguageRegistry.addName(simpleCatalyst, "Simple Catalyst"); LanguageRegistry.addName(crepitous, "Crepitous"); LanguageRegistry.addName(crystallos, "Crystallos"); LanguageRegistry.addName(terrae, "Terrae"); LanguageRegistry.addName(aquasalus, "Aquasalus"); LanguageRegistry.addName(tennebrae, "Tennebrae"); LanguageRegistry.addName(sigilOfWind, "Sigil of the Whirlwind"); LanguageRegistry.addName(telepositionFocus, "Teleposition Focus"); LanguageRegistry.addName(enhancedTelepositionFocus, "Enhanced Teleposition Focus"); LanguageRegistry.addName(reinforcedTelepositionFocus, "Reinforced Teleposition Focus"); LanguageRegistry.addName(demonicTelepositionFocus, "Demonic Teleposition Focus"); LanguageRegistry.addName(imbuedSlate, "Imbued Slate"); LanguageRegistry.addName(demonicSlate, "Demonic Slate"); LanguageRegistry.addName(duskScribeTool, "Elemental Inscription Tool: Dusk"); LanguageRegistry.addName(sigilOfTheBridge, "Sigil of the Phantom Bridge"); LanguageRegistry.addName(armourInhibitor, "Armour Inhibitor"); LanguageRegistry.addName(creativeFiller, "Orb of Testing"); LanguageRegistry.addName(weakFillingAgent, "Weak Filling Agent"); LanguageRegistry.addName(standardFillingAgent, "Standard Filling Agent"); LanguageRegistry.addName(enhancedFillingAgent, "Enhanced Filling Agent"); LanguageRegistry.addName(weakBindingAgent, "Weak Binding Agent"); LanguageRegistry.addName(itemRitualDiviner, "Ritual Diviner"); LanguageRegistry.addName(sigilOfMagnetism, "Sigil of Magnetism"); LanguageRegistry.addName(itemKeyOfDiablo, "Key of Binding"); LanguageRegistry.addName(energyBazooka, "Energy Bazooka"); LanguageRegistry.addName(itemBloodLightSigil, "Sigil of the Blood Lamp"); LanguageRegistry.addName(demonBloodShard, "Demon Blood Shard"); //FluidStack lifeEssenceFluidStack = new FluidStack(lifeEssenceFluid, 1); //LiquidStack lifeEssence = new LiquidStack(lifeEssenceFlowing, 1); //LiquidDictionary.getOrCreateLiquid("Life Essence", lifeEssence); FluidRegistry.registerFluid(lifeEssenceFluid); blockLifeEssence = new LifeEssenceBlock(lifeEssenceFluidID); blockLifeEssence.setUnlocalizedName("lifeEssenceBlock"); bucketLife = (new LifeBucket(bucketLifeItemID, blockLifeEssence.blockID)).setUnlocalizedName("bucketLife").setContainerItem(Item.bucketEmpty).setCreativeTab(CreativeTabs.tabMisc); FluidContainerRegistry.registerFluidContainer(lifeEssenceFluid, new ItemStack(bucketLife), FluidContainerRegistry.EMPTY_BUCKET); //lifeEssenceFluid.setUnlocalizedName("lifeEssence"); //LiquidContainerRegistry.registerLiquid(new LiquidContainerData(LiquidDictionary.getLiquid("Life Essence", LiquidContainerRegistry.BUCKET_VOLUME), new ItemStack(AlchemicalWizardry.bucketLife), new ItemStack(Item.bucketEmpty))); //GameRegistry.registerBlock(testingBlock, "testingBlock"); //LanguageRegistry.addName(testingBlock, "Testing Block"); //MinecraftForge.setBlockHarvestLevel(testingBlock, "pickaxe", 0); GameRegistry.registerBlock(blockAltar, "bloodAltar"); LanguageRegistry.addName(blockAltar, "Blood Altar"); GameRegistry.registerBlock(blockLifeEssence, "lifeEssence"); LanguageRegistry.addName(blockLifeEssence, "Life Essence"); MinecraftForge.setBlockHarvestLevel(blockAltar, "pickaxe", 1); //Register Tile Entity GameRegistry.registerTileEntity(TEAltar.class, "containerAltar"); GameRegistry.registerTileEntity(TEMasterStone.class, "containerMasterStone"); GameRegistry.registerTileEntity(TESocket.class, "containerSocket"); GameRegistry.registerTileEntity(TEWritingTable.class, "containerWritingTable"); GameRegistry.registerTileEntity(TEHomHeart.class, "containerHomHeart"); GameRegistry.registerTileEntity(TEPedestal.class, "containerPedestal"); GameRegistry.registerTileEntity(TEPlinth.class, "containerPlinth"); GameRegistry.registerTileEntity(TETeleposer.class, "containerTeleposer"); GameRegistry.registerTileEntity(TEConduit.class, "containerConduit"); // GameRegistry.registerBlock(bloodRune, ItemBloodRuneBlock.class, "AlchemicalWizardry" + (bloodRune.getUnlocalizedName().substring(5))); LanguageRegistry.addName(new ItemStack(bloodRune, 1, 0), "Blood Rune"); LanguageRegistry.addName(new ItemStack(bloodRune, 1, 1), "Rune of Augmented Capacity"); LanguageRegistry.addName(new ItemStack(bloodRune, 1, 2), "Rune of Dislocation"); LanguageRegistry.addName(new ItemStack(bloodRune, 1, 3), "Rune of the Orb"); GameRegistry.registerBlock(speedRune, "speedRune"); LanguageRegistry.addName(speedRune, "Speed Rune"); GameRegistry.registerBlock(efficiencyRune, "efficiencyRune"); LanguageRegistry.addName(efficiencyRune, "Efficiency Rune"); GameRegistry.registerBlock(runeOfSacrifice, "runeOfSacrifice"); LanguageRegistry.addName(runeOfSacrifice, "Rune of Sacrifice"); GameRegistry.registerBlock(runeOfSelfSacrifice, "runeOfSelfSacrifice"); LanguageRegistry.addName(runeOfSelfSacrifice, "Rune of Self-sacrifice"); // GameRegistry.registerBlock(lifeEssenceStill, "lifeEssenceStill"); // GameRegistry.registerBlock(lifeEssenceFlowing, "lifeEssenceFlowing"); //LanguageRegistry.addName(lifeEssenceStill, "Life Essence"); LanguageRegistry.addName(bucketLife, "Bucket of Life"); GameRegistry.registerBlock(ritualStone, "ritualStone"); GameRegistry.registerBlock(blockMasterStone, "masterStone"); GameRegistry.registerBlock(bloodSocket, "bloodSocket"); LanguageRegistry.addName(blockMasterStone, "Master Ritual Stone"); GameRegistry.registerBlock(imperfectRitualStone, "imperfectRitualStone"); LanguageRegistry.addName(imperfectRitualStone, "Imperfect Ritual Stone"); LanguageRegistry.addName(ritualStone, "Ritual Stone"); LanguageRegistry.addName(armourForge, "Soul Armour Forge"); LanguageRegistry.addName(emptySocket, "Empty Socket"); LanguageRegistry.addName(bloodSocket, "Filled Socket"); LanguageRegistry.addName(bloodStoneBrick, "Bloodstone Brick"); LanguageRegistry.addName(largeBloodStoneBrick, "Large Bloodstone Brick"); LanguageRegistry.addName(blockHomHeart, "Spell Table"); LanguageRegistry.addName(blockPedestal, "Arcane Pedestal"); LanguageRegistry.addName(blockPlinth, "Arcane Plinth"); LanguageRegistry.addName(blockWritingTable, "Alchemic Chemistry Set"); LanguageRegistry.addName(blockTeleposer, "Teleposer"); LanguageRegistry.addName(spectralBlock, "Spectral Block"); LanguageRegistry.addName(blockBloodLight, "Blood Light"); GameRegistry.registerBlock(armourForge, "armourForge"); GameRegistry.registerBlock(emptySocket, "emptySocket"); GameRegistry.registerBlock(bloodStoneBrick, "bloodStoneBrick"); GameRegistry.registerBlock(largeBloodStoneBrick, "largeBloodStoneBrick"); GameRegistry.registerBlock(blockWritingTable, "blockWritingTable"); GameRegistry.registerBlock(blockHomHeart, "blockHomHeart"); GameRegistry.registerBlock(blockPedestal, "blockPedestal"); GameRegistry.registerBlock(blockPlinth, "blockPlinth"); GameRegistry.registerBlock(blockTeleposer, "blockTeleposer"); GameRegistry.registerBlock(spectralBlock, "spectralBlock"); GameRegistry.registerBlock(blockBloodLight, "bloodLight"); //GameRegistry.registerBlock(blockConduit,"blockConduit"); MinecraftForge.setBlockHarvestLevel(bloodRune, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(speedRune, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(efficiencyRune, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(runeOfSacrifice, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(runeOfSelfSacrifice, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(ritualStone, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(bloodSocket, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(ritualStone, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(imperfectRitualStone, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(blockMasterStone, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(emptySocket, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(bloodStoneBrick, "pickaxe", 0); MinecraftForge.setBlockHarvestLevel(largeBloodStoneBrick, "pickaxe", 0); MinecraftForge.setBlockHarvestLevel(blockWritingTable, "pickaxe", 1); MinecraftForge.setBlockHarvestLevel(blockHomHeart, "pickaxe", 1); MinecraftForge.setBlockHarvestLevel(blockPedestal, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(blockPlinth, "pickaxe", 2); MinecraftForge.setBlockHarvestLevel(blockTeleposer, "pickaxe", 2); //Fuel handler GameRegistry.registerFuelHandler(new AlchemicalWizardryFuelHandler()); //EntityRegistry.registerModEntity(EnergyBlastProjectile.class, "BlasterProj", 0, this, 128, 5, true); proxy.registerEntityTrackers(); //Gui registration // NetworkRegistry.instance().registerGuiHandler(this, new GuiHandlerAltar()); Rituals.loadRituals(); UpgradedAltars.loadAltars(); SigilOfHolding.initiateSigilOfHolding(); ArmourForge.initializeRecipes(); TEPlinth.initialize(); AlchemicalPotionCreationHandler.initializePotions(); MinecraftForge.setToolClass(boundPickaxe, "pickaxe", 5); MinecraftForge.setToolClass(boundAxe, "axe", 5); MinecraftForge.setToolClass(boundShovel, "shovel", 5); MinecraftForge.EVENT_BUS.register(new ModLivingDropsEvent()); proxy.InitRendering(); NetworkRegistry.instance().registerGuiHandler(this, new GuiHandler()); // ItemStack[] comp = new ItemStack[5]; // for(int i=0;i<5;i++) // { // comp[i] = redstoneStack; // } // AlchemyRecipeRegistry.registerRecipe(glowstoneDustStack, 2, comp, 2); //TODO NEW RECIPES! AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.weakBindingAgent), 10, new ItemStack[] {simpleCatalystStack, simpleCatalystStack, new ItemStack(Item.clay)}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.standardBindingAgent), 15, new ItemStack[] {new ItemStack(this.weakBindingAgent), sanctusStack, new ItemStack(this.crystallos)}, 3); AlchemyRecipeRegistry.registerRecipe(simpleCatalystStack, 2, new ItemStack[] {sugarStack, redstoneStack, redstoneStack, glowstoneDustStack, new ItemStack(Item.gunpowder)}, 1); AlchemyRecipeRegistry.registerRecipe(new ItemStack(AlchemicalWizardry.incendium), 5, new ItemStack[] {lavaBucketStack, new ItemStack(Item.blazePowder), new ItemStack(Item.blazePowder), new ItemStack(Block.netherrack), simpleCatalystStack}, 1); AlchemyRecipeRegistry.registerRecipe(new ItemStack(AlchemicalWizardry.aether), 5, new ItemStack[] {featherStack, featherStack, glowstoneDustStack, ghastTearStack, simpleCatalystStack}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.sanctus), 5, new ItemStack[] {glowstoneDustStack, new ItemStack(Item.goldNugget), glowstoneDustStack, glassStack, simpleCatalystStack}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.crepitous), 5, new ItemStack[] {new ItemStack(Item.gunpowder), new ItemStack(Item.gunpowder), cobblestoneStack, cobblestoneStack, simpleCatalystStack}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.crystallos), 5, new ItemStack[] {new ItemStack(Block.ice), new ItemStack(Block.ice), new ItemStack(Block.blockSnow), new ItemStack(Block.blockSnow), simpleCatalystStack}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.terrae), 5, new ItemStack[] {new ItemStack(Block.dirt), new ItemStack(Block.sand), obsidianStack, obsidianStack, simpleCatalystStack}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.aquasalus), 5, new ItemStack[] {simpleCatalystStack, new ItemStack(Item.dyePowder, 1, 0), new ItemStack(Item.potion, 1, 0), new ItemStack(Item.potion, 1, 0), new ItemStack(Item.potion, 1, 0)}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.tennebrae), 5, new ItemStack[] {simpleCatalystStack, new ItemStack(Item.coal), new ItemStack(Item.coal), new ItemStack(Block.obsidian), new ItemStack(Item.clay)}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.magicales), 5, new ItemStack[] {redstoneStack, simpleCatalystStack, new ItemStack(Item.gunpowder), new ItemStack(Item.glowstone), new ItemStack(Item.glowstone)}, 2); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.mundanePowerCatalyst), 10, new ItemStack[] {glowstoneDustStack, glowstoneDustStack, glowstoneDustStack, new ItemStack(this.weakBindingAgent), simpleCatalystStack}, 3); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.mundaneLengtheningCatalyst), 15, new ItemStack[] {redstoneStack, redstoneStack, redstoneStack, new ItemStack(this.weakBindingAgent), simpleCatalystStack}, 3); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.averagePowerCatalyst), 20, new ItemStack[] {new ItemStack(this.mundanePowerCatalyst), new ItemStack(this.mundanePowerCatalyst), new ItemStack(this.standardBindingAgent)}, 4); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.averageLengtheningCatalyst), 20, new ItemStack[] {new ItemStack(this.mundaneLengtheningCatalyst), new ItemStack(this.mundaneLengtheningCatalyst), new ItemStack(this.standardBindingAgent)}, 4); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.greaterPowerCatalyst), 30, new ItemStack[] {new ItemStack(this.averagePowerCatalyst), new ItemStack(this.averagePowerCatalyst), new ItemStack(this.incendium)}, 4); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.greaterLengtheningCatalyst), 30, new ItemStack[] {new ItemStack(this.averageLengtheningCatalyst), new ItemStack(this.averageLengtheningCatalyst), new ItemStack(this.aquasalus)}, 4); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.weakFillingAgent), 5, new ItemStack[] {simpleCatalystStack, new ItemStack(Item.netherStalkSeeds), redstoneStack, glowstoneDustStack}, 3); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.standardFillingAgent), 10, new ItemStack[] {new ItemStack(this.weakFillingAgent), new ItemStack(this.terrae)}, 3); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.enhancedFillingAgent), 25, new ItemStack[] {new ItemStack(this.standardFillingAgent), new ItemStack(aquasalus), new ItemStack(this.magicales)}, 4); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.activationCrystal, 1, 1), 100, new ItemStack[] {new ItemStack(this.activationCrystal, 1, 0), new ItemStack(this.demonBloodShard), incendiumStack, aquasalusStack, aetherStack}, 4); AlchemyRecipeRegistry.registerRecipe(new ItemStack(this.activationCrystal, 1, 1), 100, new ItemStack[] {new ItemStack(this.activationCrystal, 1, 0), new ItemStack(Item.netherStar), incendiumStack, aquasalusStack, aetherStack}, 4); HomSpellRegistry.registerBasicSpell(new ItemStack(Item.flintAndSteel), new SpellFireBurst()); HomSpellRegistry.registerBasicSpell(new ItemStack(Block.ice), new SpellFrozenWater()); HomSpellRegistry.registerBasicSpell(new ItemStack(Block.tnt), new SpellExplosions()); HomSpellRegistry.registerBasicSpell(new ItemStack(AlchemicalWizardry.apprenticeBloodOrb), new SpellHolyBlast()); HomSpellRegistry.registerBasicSpell(new ItemStack(Item.ghastTear), new SpellWindGust()); HomSpellRegistry.registerBasicSpell(new ItemStack(Item.glowstone), new SpellLightningBolt()); HomSpellRegistry.registerBasicSpell(new ItemStack(Item.bucketWater), new SpellWateryGrave()); HomSpellRegistry.registerBasicSpell(new ItemStack(Block.obsidian), new SpellEarthBender()); HomSpellRegistry.registerBasicSpell(new ItemStack(Item.enderPearl), new SpellTeleport()); SummoningRegistry.registerSummon(new SummoningHelper(this.entityFallenAngelID), new ItemStack[] {sanctusStack, sanctusStack, sanctusStack, aetherStack, tennebraeStack, terraeStack}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityLowerGuardianID), new ItemStack[] {cobblestoneStack, cobblestoneStack, terraeStack, tennebraeStack, new ItemStack(Item.ingotIron), new ItemStack(Item.goldNugget)}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityBileDemonID), new ItemStack[] {new ItemStack(Item.poisonousPotato), tennebraeStack, terraeStack, new ItemStack(Item.porkRaw), new ItemStack(Item.egg), new ItemStack(Item.beefRaw)}, new ItemStack[] {crepitousStack, crepitousStack, terraeStack, ironBlockStack, ironBlockStack, diamondStack}, new ItemStack[] {}, 0, 5); SummoningRegistry.registerSummon(new SummoningHelper(this.entityWingedFireDemonID), new ItemStack[] {aetherStack, incendiumStack, incendiumStack, incendiumStack, tennebraeStack, new ItemStack(Block.netherrack)}, new ItemStack[] {diamondStack, new ItemStack(Block.blockGold), magicalesStack, magicalesStack, new ItemStack(Item.fireballCharge), new ItemStack(Block.coalBlock)}, new ItemStack[] {}, 0, 5); SummoningRegistry.registerSummon(new SummoningHelper(this.entitySmallEarthGolemID), new ItemStack[] {new ItemStack(Item.clay), terraeStack, terraeStack}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityIceDemonID), new ItemStack[] {crystallosStack, crystallosStack, aquasalusStack, crystallosStack, sanctusStack, terraeStack}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityBoulderFistID), new ItemStack[] {terraeStack, sanctusStack, tennebraeStack, new ItemStack(Item.bone), new ItemStack(Item.beefCooked), new ItemStack(Item.beefCooked)}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityShadeID), new ItemStack[] {tennebraeStack, tennebraeStack, tennebraeStack, aetherStack, glassStack, new ItemStack(Item.glassBottle)}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityAirElementalID), new ItemStack[] {aetherStack, aetherStack, aetherStack, aetherStack, aetherStack, aetherStack}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityWaterElementalID), new ItemStack[] {aquasalusStack, aquasalusStack, aquasalusStack, aquasalusStack, aquasalusStack, aquasalusStack}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityEarthElementalID), new ItemStack[] {terraeStack, terraeStack, terraeStack, terraeStack, terraeStack, terraeStack}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityFireElementalID), new ItemStack[] {incendiumStack, incendiumStack, incendiumStack, incendiumStack, incendiumStack, incendiumStack}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); //TODO SummoningRegistry.registerSummon(new SummoningHelper(this.entityShadeElementalID), new ItemStack[]{tennebraeStack,tennebraeStack,tennebraeStack,tennebraeStack,tennebraeStack,tennebraeStack}, new ItemStack[]{}, new ItemStack[]{}, 0, 4); SummoningRegistry.registerSummon(new SummoningHelper(this.entityHolyElementalID), new ItemStack[] {sanctusStack, sanctusStack, sanctusStack, sanctusStack, sanctusStack, sanctusStack}, new ItemStack[] {}, new ItemStack[] {}, 0, 4); //Custom mobs EntityRegistry.registerModEntity(EntityFallenAngel.class, "FallenAngel", this.entityFallenAngelID, this, 80, 3, true); EntityRegistry.registerModEntity(EntityLowerGuardian.class, "LowerGuardian", this.entityLowerGuardianID, this, 80, 3, true); EntityRegistry.registerModEntity(EntityBileDemon.class, "BileDemon", this.entityBileDemonID, this, 80, 3, true); EntityRegistry.registerModEntity(EntityWingedFireDemon.class, "WingedFireDemon", this.entityWingedFireDemonID, this, 80, 3, true); EntityRegistry.registerModEntity(EntitySmallEarthGolem.class, "SmallEarthGolem", this.entitySmallEarthGolemID, this, 80, 3, true); EntityRegistry.registerModEntity(EntityIceDemon.class, "IceDemon", this.entityIceDemonID, this, 80, 3, true); EntityRegistry.registerModEntity(EntityBoulderFist.class, "BoulderFist", this.entityBoulderFistID, this, 80, 3, true); EntityRegistry.registerModEntity(EntityShade.class, "Shade", this.entityShadeID, this, 80, 3, true); EntityRegistry.registerModEntity(EntityAirElemental.class, "AirElemental", this.entityAirElementalID, this, 120, 3, true); EntityRegistry.registerModEntity(EntityWaterElemental.class, "WaterElemental", this.entityWaterElementalID, this, 120, 3, true); EntityRegistry.registerModEntity(EntityEarthElemental.class, "EarthElemental", this.entityEarthElementalID, this, 120, 3, true); EntityRegistry.registerModEntity(EntityFireElemental.class, "FireElemental", this.entityFireElementalID, this, 120, 3, true); EntityRegistry.registerModEntity(EntityShadeElemental.class, "ShadeElemental", this.entityShadeElementalID, this, 120, 3, true); EntityRegistry.registerModEntity(EntityHolyElemental.class, "HolyElemental", this.entityHolyElementalID, this, 120, 3, true); //EntityRegistry.addSpawn(EntityFallenAngel.class, 5, 1, 5, EnumCreatureType.creature, BiomeGenBase.biomeList); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.FallenAngel.name", "en_US", "Fallen Angel"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.LowerGuardian.name", "en_US", "Lower Stone Guardian"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.BileDemon.name", "en_US", "Bile Demon"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.WingedFireDemon.name", "en_US", "Winged Fire Demon"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.SmallEarthGolem.name", "en_US", "Small Earth Golem"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.IceDemon.name", "en_US", "Ice Demon"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.BoulderFist.name", "en_US", "Boulder Fist"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.Shade.name", "en_US", "Shade"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.AirElemental.name", "en_US", "Air Elemental"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.WaterElemental.name", "en_US", "Water Elemental"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.EarthElemental.name", "en_US", "Earth Elemental"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.FireElemental.name", "en_US", "Fire Elemental"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.ShadeElemental.name", "en_US", "Shade Elemental"); LanguageRegistry.instance().addStringLocalization("entity.AlchemicalWizardry.HolyElemental.name", "en_US", "Holy Elemental"); LanguageRegistry.instance().addStringLocalization("itemGroup.tabBloodMagic", "en_US", "Blood Magic"); ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(this.standardBindingAgent), 1, 3, this.standardBindingAgentDungeonChance)); ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(this.mundanePowerCatalyst), 1, 1, this.mundanePowerCatalystDungeonChance)); ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(this.mundaneLengtheningCatalyst), 1, 1, this.mundaneLengtheningCatalystDungeonChance)); ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(this.averagePowerCatalyst), 1, 1, this.averagePowerCatalystDungeonChance)); ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(this.averageLengtheningCatalyst), 1, 1, this.averageLengtheningCatalystDungeonChance)); ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(this.greaterPowerCatalyst), 1, 1, this.greaterPowerCatalystDungeonChance)); ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(this.greaterLengtheningCatalyst), 1, 1, this.greaterLengtheningCatalystDungeonChance)); //Ore Dictionary Registration OreDictionary.registerOre("oreCoal", Block.oreCoal); MeteorRegistry.registerMeteorParadigm(diamondStack, diamondMeteorArray, diamondMeteorRadius); MeteorRegistry.registerMeteorParadigm(stoneStack, this.stoneMeteorArray, this.stoneMeteorRadius); MeteorRegistry.registerMeteorParadigm(ironBlockStack, this.ironBlockMeteorArray, this.ironBlockMeteorRadius); MeteorRegistry.registerMeteorParadigm(new ItemStack(Item.netherStar), this.netherStarMeteorArray, this.netherStarMeteorRadius); // sanguineHelmet = new ItemSanguineArmour(sanguineHelmetItemID).setUnlocalizedName("sanguineHelmet"); // // LanguageRegistry.addName(sanguineHelmet,"Sanguine Helmet"); } @EventHandler public void postInit(FMLPostInitializationEvent event) { //TODO Thaumcraft Integration if (Loader.isModLoaded("Thaumcraft")) { this.isThaumcraftLoaded = true; try { //do stuff sanguineHelmet = new ItemSanguineArmour(sanguineHelmetItemID).setUnlocalizedName("sanguineHelmet"); LanguageRegistry.addName(sanguineHelmet, "Sanguine Helmet"); // focusBloodBlast = new FocusBloodBlast(focusBloodBlastItemID); // LanguageRegistry.addName(focusBloodBlast,"Wand Focus: Blood Blast"); // // focusGravityWell = new FocusGravityWell(focusGravityWellItemID); // LanguageRegistry.addName(focusGravityWell,"Wand Focus: Gravity Well"); ItemStack itemGoggles = ItemApi.getItem("itemGoggles", 0); if (itemGoggles != null) { //GameRegistry.addShapelessRecipe(new ItemStack(this.sanguineHelmet), itemGoggles); } //LogHelper.log(Level.INFO, "Loaded RP2 World addon"); } catch (Exception e) { //LogHelper.log(Level.SEVERE, "Could not load RP2 World addon"); e.printStackTrace(System.err); } } else { this.isThaumcraftLoaded = false; } } }