/* This file is part of Project-Zed. Project-Zed is free software: you can redistribute it and/or modify it under the terms of the GNU General Public * License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Project-Zed is * distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A * PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along * with Project-Zed. If not, see <http://www.gnu.org/licenses/> */ package com.projectzed.mod; import com.hockeyhurd.hcorelib.api.creativetab.AbstractCreativeTab; import com.hockeyhurd.hcorelib.api.math.TimeLapse; import com.hockeyhurd.hcorelib.api.util.FluidFactory; import com.hockeyhurd.hcorelib.api.util.LogHelper; import com.hockeyhurd.hcorelib.api.util.SidedHelper; import com.hockeyhurd.hcorelib.api.util.enums.EnumArmorType; import com.hockeyhurd.hcorelib.api.util.interfaces.IForgeMod; import com.hockeyhurd.hcorelib.api.worldgen.HCWorldGenFluid; import com.projectzed.api.energy.source.EnumColor; import com.projectzed.mod.block.*; import com.projectzed.mod.block.container.*; import com.projectzed.mod.block.container.digger.BlockIndustrialQuarry; import com.projectzed.mod.block.fluids.BlockFluidOil; import com.projectzed.mod.block.fluids.BlockFluidPetrol; import com.projectzed.mod.block.generator.*; import com.projectzed.mod.block.machines.*; import com.projectzed.mod.block.ore.*; import com.projectzed.mod.creativetabs.ProjectZedCreativeTab; import com.projectzed.mod.handler.ConfigHandler; import com.projectzed.mod.item.*; import com.projectzed.mod.item.armor.ArmorSetZPlated; import com.projectzed.mod.item.circuitry.ItemCircuit; import com.projectzed.mod.item.circuitry.ItemMemCell; import com.projectzed.mod.item.metals.*; import com.projectzed.mod.item.tools.ItemBlockExchanger; import com.projectzed.mod.item.tools.ItemToolChainsaw; import com.projectzed.mod.item.tools.ItemToolMiningDrill; import com.projectzed.mod.item.tools.ItemWrench; import com.projectzed.mod.item.upgrades.ItemRadialUpgrade; import com.projectzed.mod.item.upgrades.ItemUpgradeEfficiency; import com.projectzed.mod.item.upgrades.ItemUpgradeOverclocker; import com.projectzed.mod.item.upgrades.ItemUpgradeSilkTouch; import com.projectzed.mod.proxy.CommonProxy; import com.projectzed.mod.util.ModsLoadedHelper; import com.projectzed.mod.util.ProjectZedMetadata; import com.projectzed.mod.util.Reference; import com.projectzed.mod.worldgen.OreWorldgen; import net.minecraft.block.Block; import net.minecraft.block.material.MapColor; import net.minecraft.block.material.Material; import net.minecraft.block.material.MaterialLiquid; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Items; import net.minecraft.init.SoundEvents; import net.minecraft.item.Item; import net.minecraft.item.Item.ToolMaterial; import net.minecraft.item.ItemArmor.ArmorMaterial; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.EnumHelper; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; import net.minecraftforge.fml.common.Mod.Instance; import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.*; import net.minecraftforge.fml.relauncher.Side; /** * Project-Zed's main class covering all initializations. * * @author hockeyhurd * @version Oct 19, 2014 */ @Mod(modid = Reference.MOD_NAME, acceptedMinecraftVersions = Reference.MINECRAFT_VERSION, name = Reference.MOD_NAME, version = Reference.VERSION, dependencies = "required-after:HCoreLib", guiFactory = "com.projectzed.mod.gui.config.PZGuiFactory") public final class ProjectZed implements IForgeMod { @SidedProxy(clientSide = "com.projectzed.mod.proxy.ClientProxy", serverSide = "com.projectzed.mod.proxy.CommonProxy") public static CommonProxy proxy; @Instance(Reference.MOD_NAME) public static ProjectZed instance; public static LogHelper logHelper; public static ConfigHandler configHandler; // public static SortingConfigHandler sortingConfigHandler; public static final String assetDir = Reference.MOD_NAME.toLowerCase(); // + ":"; public static final String modID = Reference.MOD_NAME; private TimeLapse tl; // Creative Tabs: public static final AbstractCreativeTab modCreativeTab = new ProjectZedCreativeTab(CreativeTabs.getNextID(), "Project-Zed"); // Blocks: public static Block machineContainer; public static Block thickenedGlass; public static Block wickedClearGlass; public static Block quarryMarker; public static Block atomicBomb; public static Block stoneBricksDefault, stoneBricksDefaultStairs; public static Block stoneBricksWide, stoneBricksWideStairs; public static Block stoneBricksRed, stoneBricksRedStairs; public static Block stoneBricksBlue, stoneBricksBlueStairs; public static Block stoneBricksGreen, stoneBricksGreenStairs; public static Block stoneBricksPurple, stoneBricksPurpleStairs; // Nuclear Blocks: public static Block nuclearReactorGlass; public static Block nuclearChamberWall; public static Block nuclearChamberLock; public static Block nuclearReactantCore; public static Block nuclearPowerPort; public static Block nuclearControlPort; public static Block nuclearIOPort; // Fluids: public static Block blockFluidOil; public static Block blockFluidPetrol; public static Fluid fluidOil; public static Fluid fluidPetrol; public static Item bucketOil; public static Item bucketPetrol; // Machines: public static Block solarArray, solarArrayLV, solarArrayMV, solarArrayHV; public static Block furnaceGen; public static Block fusionController, fissionController; public static Block lavaGen; public static Block petrolGen; public static Block handGen; public static Block fabricationTable; public static Block stoneCraftingTable; public static Block refinery; public static Block patternEncoder; public static Block industrialFurnace; public static Block industrialCrusher; public static Block industrialLumberMill; public static Block industrialMetalPress; public static Block industrialCentrifuge; public static Block industrialEnergizer; public static Block industrialLoader; public static Block industrialPlanter; public static Block industrialHarvester; public static Block industrialStorageUnit; // Containers: public static Block energyPipeRed; public static Block energyPipeOrange; public static Block energyPipeClear; public static Block energyCellTier0, energyCellTier1, energyCellTier2, energyCellTier3; public static Block liquidNode; public static Block liquiductBlue; public static Block liquiductClear; public static Block fluidTankTier0, fluidTankTier1, fluidTankTier2, fluidTankTier3; public static Block itemPipeGreen; public static Block itemPipeGreenOpaque; // Diggers: public static Block industrialQuarry; // RF STUFF: public static Block bridgeMcUToRF, bridgeRFToMcU; // Ores public static Block oreTitanium; public static Block oreCopper; public static Block oreNickel; public static Block oreAluminium; public static Block oreUranium; // Items: public static Item itemDongle; public static Item forgingHammer; public static Item mcuReader; public static Item screw; public static Item conductiveCoil; public static Item electricMotor; public static Item photoviolicCell; // Circuitry: // public static Item dFlipFlop; public static Item memCell; // public static Item advancedCircuit; // public static Item basicCircuit; public static Item circuit; // public static Item basicProcessor; // public static Item intermediateProcessor; // public static Item advancedProcessor; // public static Item calculator; public static Item plateAluminium; public static Item plateCopper; public static Item plateNickel; public static Item plateIron; public static Item plateGold; public static Item plateLapis; public static Item plateTitanium; public static Item plateUranium; public static Item plateReinforced; public static Item gearWooden; public static Item gearStone; public static Item gearIron; public static Item gearCopper; public static Item gearAluminium; public static Item gearGold; public static Item gearDiamond; public static Item gearTitanium; public static Item overclockerUpgrade; public static Item silkTouchUpgrade; public static Item efficiencyUpgrade; public static Item radialUpgrade; public static Item blankCraftingPattern; public static Item craftingPattern; // Material: public static final Material MATERIAL_OIL = new MaterialLiquid(MapColor.BLACK); public static final Material MATERIAL_PETROL = new MaterialLiquid(MapColor.AIR); public static final ArmorMaterial zPlatedMat = EnumHelper.addArmorMaterial("ZPLATEDARMOR", assetDir + ":ZPlated", 100, new int[] { 3, 8, 6, 3 }, 25, SoundEvents.ITEM_ARMOR_EQUIP_IRON, 25.0f); // Armor: public static Item zPlatedHelm, zPlatedChest, zPlatedLeg, zPlatedBoot; // Tools: public static final ToolMaterial pzToolMat = EnumHelper.addToolMaterial("PZTOOLS", 5, 1000 + 1, 20.0f, 4.0f, 0); public static Item wrench; public static Item blockExchanger; public static Item titaniumDrill; public static Item titaniumChainsaw; // Metals: public static Item dustGold; public static Item dustIron; public static Item dustCoal; public static Item dustTitanium; public static Item dustCopper; public static Item dustNickel; public static Item dustAluminium; public static Item dustUranium; public static Item enrichedUranium; public static Item dustMixedAlloy; public static Item ingotTitanium; public static Item ingotCopper; public static Item ingotNickel; public static Item ingotAluminium; public static Item ingotUranium; public static Item mixedAlloy; public static Item nuggetIron; public static Item nuggetAluminium; public static Item nuggetCopper; public static Item nuggetNickel; public static Item nuggetTitanium; public static Item nuggetUranium; public static Block blockTitanium; public static Block blockCopper; public static Block blockNickel; public static Block blockAluminium; public static Block blockUranium; // Fuels // public static Item emptyFuelRod; public static Item fuelRod; // Worldgen stuff: public static OreWorldgen worldgenTitanium; public static OreWorldgen worldgenNickel; public static OreWorldgen worldgenAluminium; public static OreWorldgen worldgenCopper; public static OreWorldgen worldgenUranium; public static HCWorldGenFluid worldgenOil; /** * Default constructor. */ public ProjectZed() { } @Override @EventHandler public void preInit(FMLPreInitializationEvent event) { tl = new TimeLapse(); logHelper = new LogHelper(modID); final Side side = FMLCommonHandler.instance().getEffectiveSide(); if (side == Side.CLIENT) { logHelper.info("Injecting mcmod.info information"); final ProjectZedMetadata metadata = new ProjectZedMetadata(event); if (metadata.getResult()) logHelper.info("Injection was successful!"); else logHelper.warn("Injection was un-successful! mcmod.info is a liar!"); } logHelper.info("Pre-init started, looking for config info!"); configHandler = new ConfigHandler(event, modID); configHandler.handleConfiguration(); logHelper.info("Config loaded successfully! Patching mod now!"); // logHelper.info("Pre-init started, looking for sorting config info!"); // sortingConfigHandler = new SortingConfigHandler(event, modID, "sorting.cfg"); // sortingConfigHandler.handleConfiguration(); // logHelper.info("Sorting config loaded successfully! Patching mod now!"); ModsLoadedHelper.instance().init(); ModsLoadedHelper.instance().logFindings(logHelper); logHelper.info("Generating blocks, items, various objects and tinkering tools..."); loadObj(); logHelper.info("Initializing up proxy on side:", SidedHelper.getSide().name()); proxy.init(); logHelper.info("Pre-init finished successfully after", tl.getEffectiveTimeSince(), "ms!"); } @Override @EventHandler public void init(FMLInitializationEvent event) { tl.resetStartTime(); logHelper.info("Init started"); /*logHelper.info("Generating blocks, items, various objects and tinkering tools..."); loadObj(); logHelper.info("Setting up proxy on side: " + FMLCommonHandler.instance().getEffectiveSide().name()); proxy.init();*/ logHelper.info("Setting up additional proxy stuffs on side:", SidedHelper.getSide().name()); proxy.registerRenderInformation(); proxy.registerInputHandlers(); logHelper.info("Init finished successfully after", tl.getEffectiveTimeSince(), "ms!"); } @Override @EventHandler public void postInit(FMLPostInitializationEvent event) { tl.resetStartTime(); logHelper.info("Post-Init started"); if (configHandler.allowUpdating()) { proxy.registerUpdateHandler(); if (!proxy.updateFlag) logHelper.warn("Found an update!"); else logHelper.info("Everything is up to date!"); } else logHelper.warn("Skipping checking for updates. WARNING: bugs may exist!"); logHelper.info("Post-Init finished successfully after", tl.getEffectiveTimeSince(), "ms!"); } /** * Method used to instantiate objects: blocks, items, etc. */ private static void loadObj() { // Blocks: machineContainer = new BlockMachineContainer(); thickenedGlass = new BlockThickenedGlass(); wickedClearGlass = new BlockWickedClearGlass(); quarryMarker = new BlockQuarryMarker(); nuclearReactorGlass = new BlockNuclearReactorGlass(); atomicBomb = new BlockAtomicBomb(); stoneBricksDefault = new BlockStoneBricks("stoneBricksDefault"); stoneBricksWide = new BlockStoneBricks("stoneBricksWide"); stoneBricksRed = new BlockStoneBricks("stoneBricksRed"); stoneBricksBlue = new BlockStoneBricks("stoneBricksBlue"); stoneBricksGreen = new BlockStoneBricks("stoneBricksGreen"); stoneBricksPurple = new BlockStoneBricks("stoneBricksPurple"); stoneBricksDefaultStairs = new BlockStairsMaker(stoneBricksDefault); stoneBricksWideStairs = new BlockStairsMaker(stoneBricksWide); stoneBricksRedStairs = new BlockStairsMaker(stoneBricksRed); stoneBricksBlueStairs = new BlockStairsMaker(stoneBricksBlue); stoneBricksGreenStairs = new BlockStairsMaker(stoneBricksGreen); stoneBricksPurpleStairs = new BlockStairsMaker(stoneBricksPurple); nuclearChamberWall = new BlockNuclearChamberWall(); nuclearChamberLock = new BlockNuclearChamberLock(); nuclearReactantCore = new BlockNuclearReactantCore(); nuclearPowerPort = new BlockNuclearPowerPort(); nuclearControlPort = new BlockNuclearControlPort(); nuclearIOPort = new BlockNuclearIOPort(); // Fluids: if (!FluidRegistry.isFluidRegistered("oil")) { // fluidOil = FluidFactory.createNewFluid("oil"); fluidOil = FluidFactory.createNewFluid("oil", new ResourceLocation(assetDir, "blockFluidOil.sill"), new ResourceLocation(assetDir, "blockFluidOil.flowing")); fluidOil.setDensity(800); fluidOil.setViscosity(10000); // TODO: MOVE REGISTERING OF FLUID SOMEWHERE OUT OF THIS MAIN CLASS!!! FluidRegistry.registerFluid(fluidOil); } else fluidOil = FluidRegistry.getFluid("oil"); if (!FluidRegistry.isFluidRegistered("fuel")) { // fluidPetrol = FluidFactory.createNewFluid("fuel"); fluidPetrol = FluidFactory.createNewFluid("fuel", new ResourceLocation(assetDir, "blockFluidPetrol.still"), new ResourceLocation(assetDir, "blockFluidPetrol.flowing")); FluidRegistry.registerFluid(fluidPetrol); } else fluidPetrol = FluidRegistry.getFluid("fuel"); blockFluidOil = new BlockFluidOil("blockFluidOil", fluidOil); blockFluidPetrol = new BlockFluidPetrol("blockFluidPetrol", fluidPetrol); bucketOil = new ItemBucketOil("bucketOil", blockFluidOil); bucketPetrol = new ItemBucketPetrol("bucketPetrol", blockFluidPetrol); // TODO: MOVE REGISTERING OF FLUID Bucket SOMEWHERE OUT OF THIS MAIN CLASS!!! FluidContainerRegistry.registerFluidContainer(fluidOil, new ItemStack(bucketOil), new ItemStack(Items.BUCKET)); FluidContainerRegistry.registerFluidContainer(fluidPetrol, new ItemStack(bucketPetrol), new ItemStack(Items.BUCKET)); // Generators: solarArray = new BlockSolarArray(Material.ROCK, (byte) 0); solarArrayLV = new BlockSolarArray(Material.ROCK, (byte) 1); solarArrayMV = new BlockSolarArray(Material.ROCK, (byte) 2); solarArrayHV = new BlockSolarArray(Material.ROCK, (byte) 3); furnaceGen = new BlockFurnaceGenerator(Material.ROCK); lavaGen = new BlockLavaGenerator(Material.ROCK); petrolGen = new BlockPetrolGenerator(Material.ROCK); handGen = new BlockHandGenerator(Material.ROCK); fusionController = new BlockNuclearController(Material.IRON, true); fissionController = new BlockNuclearController(Material.IRON, false); // Machines: fabricationTable = new BlockFabricationTable(Material.ROCK); stoneCraftingTable = new BlockStoneCraftingTable(Material.ROCK); refinery = new BlockRefinery(Material.ROCK); patternEncoder = new BlockPatternEncoder("patternEncoder"); industrialFurnace = new BlockIndustrialFurnace(); industrialCrusher = new BlockIndustrialCrusher(); industrialLumberMill = new BlockIndustrialLumberMill(); industrialMetalPress = new BlockIndustrialMetalPress(); industrialCentrifuge = new BlockIndustrialCentrifuge(); industrialEnergizer = new BlockIndustrialEnergizer(); industrialLoader = new BlockIndustrialLoader(); industrialPlanter = new BlockIndustrialPlanter(); industrialHarvester = new BlockIndustrialHarvester(); industrialStorageUnit = new BlockIndustrialStorageUnit("industrialStorageUnit"); // Containers: energyPipeRed = new BlockEnergyPipeRed(Material.ROCK, "energyPipeRed", EnumColor.RED); energyPipeOrange = new BlockEnergyPipeOrange(Material.ROCK, "energyPipeOrange", EnumColor.ORANGE); energyPipeClear = new BlockEnergyPipeClear(Material.ROCK, "energyPipeClear", EnumColor.CLEAR); energyCellTier0 = new BlockEnergyCell(Material.ROCK, "energyCellTier0"); energyCellTier1 = new BlockEnergyCell(Material.ROCK, "energyCellTier1"); energyCellTier2 = new BlockEnergyCell(Material.ROCK, "energyCellTier2"); energyCellTier3 = new BlockEnergyCell(Material.ROCK, "energyCellTier3"); liquidNode = new BlockLiquidNode(Material.ROCK); liquiductBlue = new BlockLiquiductBlue(Material.ROCK); liquiductClear = new BlockLiquiductClear(Material.ROCK); fluidTankTier0 = new BlockTankTier0(Material.ROCK); fluidTankTier1 = new BlockTankTier1(Material.ROCK); fluidTankTier2 = new BlockTankTier2(Material.ROCK); fluidTankTier3 = new BlockTankTier3(Material.ROCK); itemPipeGreen = new BlockItemPipeGreen(Material.ROCK); itemPipeGreenOpaque = new BlockItemPipeGreenOpaque(Material.ROCK); // Diggers: industrialQuarry = new BlockIndustrialQuarry(Material.ROCK); // RF STUFF: if (ModsLoadedHelper.instance().cofhCore) { bridgeMcUToRF = new BlockRFBridge(Material.ROCK, false); bridgeRFToMcU = new BlockRFBridge(Material.ROCK, true); } // Ores: oreTitanium = new BlockTitaniumOre(Material.ROCK, assetDir, "oreTitanium"); oreCopper = new BlockCopperOre(Material.ROCK, assetDir, "oreCopper"); oreNickel = new BlockNickelOre(Material.ROCK, assetDir, "oreNickel"); oreAluminium = new BlockAluminiumOre(Material.ROCK, assetDir, "oreAluminium"); oreUranium = new BlockUraniumOre(Material.ROCK, assetDir, "oreUranium"); // Items: itemDongle = new ItemDongle(); forgingHammer = new ItemForgingHammer(); mcuReader = new ItemMcUReader(); screw = new ItemScrew("screw", assetDir); conductiveCoil = new ItemConductiveCoil("conductiveCoil", assetDir); electricMotor = new ItemElectricMotor("electricMotor", assetDir); photoviolicCell = new ItemPhotoviolicCell("photoviolicCell", assetDir); // Circuitry: memCell = new ItemMemCell(modCreativeTab, "memCell", assetDir); circuit = new ItemCircuit(modCreativeTab, "circuit", assetDir); plateAluminium = new ItemPlateAluminium("plateAluminium", assetDir); plateCopper = new ItemPlateCopper("plateCopper", assetDir); plateNickel = new ItemPlateNickel("plateNickel", assetDir); plateIron = new ItemPlateIron("plateIron", assetDir); plateGold = new ItemPlateGold("plateGold", assetDir); plateLapis = new ItemPlateLapis("plateLapis", assetDir); plateTitanium = new ItemPlateTitanium("plateTitanium", assetDir); plateUranium = new ItemPlateUranium("plateUranium", assetDir); plateReinforced = new ItemPlateReinforced("plateReinforced", assetDir); gearWooden = new ItemGear("gearWooden", assetDir); gearStone = new ItemGear("gearStone", assetDir); gearIron = new ItemGear("gearIron", assetDir); gearCopper = new ItemGear("gearCopper", assetDir); gearGold = new ItemGear("gearGold", assetDir); gearDiamond = new ItemGear("gearDiamond", assetDir); gearAluminium = new ItemGear("gearAluminium", assetDir); gearTitanium = new ItemGear("gearTitanium", assetDir); gearDiamond = new ItemGear("gearDiamond", assetDir); overclockerUpgrade = new ItemUpgradeOverclocker("overclockerUpgrade"); silkTouchUpgrade = new ItemUpgradeSilkTouch("silkTouchUpgrade"); efficiencyUpgrade = new ItemUpgradeEfficiency("efficiencyUpgrade"); radialUpgrade = new ItemRadialUpgrade("radialUpgrade"); blankCraftingPattern = new ItemCraftingPattern("blankCraftingPattern", false); craftingPattern = new ItemCraftingPattern("craftingPattern", true); // Armor: zPlatedHelm = new ArmorSetZPlated(zPlatedMat, 0, EnumArmorType.HELMET); zPlatedChest = new ArmorSetZPlated(zPlatedMat, 0, EnumArmorType.CHEST); zPlatedLeg = new ArmorSetZPlated(zPlatedMat, 0, EnumArmorType.LEGGINGS); zPlatedBoot = new ArmorSetZPlated(zPlatedMat, 0, EnumArmorType.BOOTS); // Tools: wrench = new ItemWrench("wrench"); titaniumDrill = new ItemToolMiningDrill(pzToolMat, "titaniumDrill"); titaniumChainsaw = new ItemToolChainsaw(pzToolMat, "titaniumChainsaw"); blockExchanger = new ItemBlockExchanger("blockExchanger"); // Metals: dustGold = new ItemDustGold("dustGold", assetDir); dustIron = new ItemDustIron("dustIron", assetDir); dustCoal = new ItemDustCoal("dustCoal", assetDir); dustTitanium = new ItemDustTitanium("dustTitanium", assetDir); dustCopper = new ItemDustCopper("dustCopper", assetDir); dustNickel = new ItemDustNickel("dustNickel", assetDir); dustAluminium = new ItemDustAluminium("dustAluminium", assetDir); dustUranium = new ItemDustUranium("dustUranium", assetDir, false); enrichedUranium = new ItemDustUranium("enrichedUranium", assetDir, true); dustMixedAlloy = new ItemDustMixedAlloy("dustMixedAlloy", assetDir); nuggetIron = new ItemNuggetIron("nuggetIron", assetDir); nuggetAluminium = new ItemNuggetAluminium("nuggetAluminium", assetDir); nuggetCopper = new ItemNuggetCopper("nuggetCopper", assetDir); nuggetNickel = new ItemNuggetNickel("nuggetNickel", assetDir); nuggetTitanium = new ItemNuggetTitanium("nuggetTitanium", assetDir); nuggetUranium = new ItemNuggetUranium("nuggetUranium", assetDir); ingotTitanium = new ItemIngotTitanium("ingotTitanium", assetDir); ingotCopper = new ItemIngotCopper("ingotCopper", assetDir); ingotNickel = new ItemIngotNickel("ingotNickel", assetDir); ingotAluminium = new ItemIngotAluminium("ingotAluminium", assetDir); ingotUranium = new ItemIngotUranium("ingotUranium", assetDir); mixedAlloy = new ItemMixedAlloy("mixedAlloy", assetDir); blockTitanium = new BlockTitanium(Material.IRON, "blockTitanium"); blockCopper = new BlockCopper(Material.IRON, "blockCopper"); blockNickel = new BlockNickel(Material.IRON, "blockNickel"); blockAluminium = new BlockAluminium(Material.IRON, "blockAluminium"); blockUranium = new BlockUranium(Material.IRON, "blockUranium"); // Fuels: // emptyFuelRod = new ItemFuelRod("emptyFuelRod", assetDir, true); fuelRod = new ItemFuelRod("fuelRod", assetDir); // Worldgen: if (configHandler.genOreTitanium()) worldgenTitanium = new OreWorldgen(oreTitanium, 7, 4, 8, 8, 24); if (configHandler.genOreNickel()) worldgenNickel = new OreWorldgen(oreNickel, 6, 4, 6, 10, 30); if (configHandler.genOreAluminium()) worldgenAluminium = new OreWorldgen(oreAluminium, 8, 4, 8, 10, 64); if (configHandler.genOreCopper()) worldgenCopper = new OreWorldgen(oreCopper, 10, 5, 10, 40, 75); if (configHandler.genOreUranium()) worldgenUranium = new OreWorldgen(oreUranium, 5, 3, 5, 4, 16); if (configHandler.genFluidOil()) worldgenOil = new HCWorldGenFluid(blockFluidOil); } @Override @EventHandler public void serverStartingEvent(FMLServerStartingEvent event) { } @Override @EventHandler public void serverStartedEvent(FMLServerStartedEvent event) { } }