diff --git a/src/main/java/gregtech/api/recipe/RecipeMaps.java b/src/main/java/gregtech/api/recipe/RecipeMaps.java index c014ca08265..be34a8089f7 100644 --- a/src/main/java/gregtech/api/recipe/RecipeMaps.java +++ b/src/main/java/gregtech/api/recipe/RecipeMaps.java @@ -29,7 +29,6 @@ import java.util.Optional; import net.minecraft.init.Blocks; -import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; @@ -87,8 +86,7 @@ import gregtech.nei.formatter.FusionSpecialValueFormatter; import gregtech.nei.formatter.HeatingCoilSpecialValueFormatter; import gregtech.nei.formatter.SimpleSpecialValueFormatter; -import gtPlusPlus.core.block.ModBlocks; -import gtPlusPlus.core.item.ModItems; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; import mods.railcraft.common.items.RailcraftToolItems; import tectech.thing.CustomItemList; @@ -649,8 +647,8 @@ public final class RecipeMaps { .setOutputs(aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount / 2)) .setDuration(aDuration * 2 / 3); } - ItemStack cactusCoke = new ItemStack(ModItems.itemCactusCoke, aCoalAmount * 2); - ItemStack sugarCoke = new ItemStack(ModItems.itemSugarCoke, aCoalAmount * 2); + ItemStack cactusCoke = GregtechItemList.CactusCoke.get(aCoalAmount * 2L); + ItemStack sugarCoke = GregtechItemList.SugarCoke.get(aCoalAmount * 2L); coll.derive() .setInputs(aInput1, aInput2, cactusCoke) .setOutputs(aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount * 2)) @@ -679,14 +677,8 @@ public final class RecipeMaps { .setOutputs(aOutput1, aOutput2, Materials.Ash.getDust(aCoalAmount / 2)) .setDuration(aDuration * 20 / 3); } - ItemStack cactusCokeBlock = new ItemStack( - Item.getItemFromBlock(ModBlocks.blockCactusCoke), - aCoalAmount * 2, - 0); - ItemStack sugarCokeBlock = new ItemStack( - Item.getItemFromBlock(ModBlocks.blockSugarCoke), - aCoalAmount * 2, - 0); + ItemStack cactusCokeBlock = GregtechItemList.BlockCactusCoke.get(aCoalAmount * 2L); + ItemStack sugarCokeBlock = GregtechItemList.BlockSugarCoke.get(aCoalAmount * 2L); coll.derive() .setInputs(aInput1, aInput2, cactusCokeBlock) .setOutputs(aOutput1, aOutput2, Materials.Ash.getDust(aCoalAmount * 2)) diff --git a/src/main/java/gregtech/loaders/postload/chains/NaniteChain.java b/src/main/java/gregtech/loaders/postload/chains/NaniteChain.java index 439a216b74f..29b1f48dcf5 100644 --- a/src/main/java/gregtech/loaders/postload/chains/NaniteChain.java +++ b/src/main/java/gregtech/loaders/postload/chains/NaniteChain.java @@ -10,7 +10,6 @@ import static gregtech.api.util.GTRecipeConstants.NANO_FORGE_TIER; import static gregtech.api.util.GTRecipeConstants.RESEARCH_ITEM; import static gregtech.api.util.GTRecipeConstants.SCANNING; -import static gtPlusPlus.core.block.ModBlocks.blockCompressedObsidian; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; @@ -129,8 +128,7 @@ public static void run() { GTValues.RA.stdBuilder() .itemInputs( aUEVTierLens, - new ItemStack(blockCompressedObsidian, 8, 7), // Double compressed glowstone blocks (yes, - // it's not obsidian) + GregtechItemList.DoubleCompressedGlowstone.get(8), ItemList.Circuit_Chip_SoC2.get(64)) .itemOutputs(Materials.Glowstone.getNanite(64)) .fluidInputs(Materials.UUMatter.getFluid(50_000)) diff --git a/src/main/java/gtPlusPlus/core/block/ModBlocks.java b/src/main/java/gtPlusPlus/core/block/ModBlocks.java index b812a4739e9..819be6bf876 100644 --- a/src/main/java/gtPlusPlus/core/block/ModBlocks.java +++ b/src/main/java/gtPlusPlus/core/block/ModBlocks.java @@ -1,6 +1,7 @@ package gtPlusPlus.core.block; import net.minecraft.block.Block; +import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; import gtPlusPlus.api.objects.Logger; @@ -23,13 +24,13 @@ import gtPlusPlus.core.block.machine.BlockProjectTable; import gtPlusPlus.core.block.machine.BlockSuperJukebox; import gtPlusPlus.core.fluids.FluidRegistryHandler; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public final class ModBlocks { public static Block blockCircuitProgrammer; public static Block blockVolumetricFlaskSetter; - public static Block blockFishTrap; public static Block blockDecayablesChest; public static Block blockCasingsMisc; @@ -49,25 +50,14 @@ public final class ModBlocks { public static Fluid fluidSludge = new Fluid("fluid.sludge"); public static Block blockFluidSludge; - public static Block blockMiningExplosive; - public static Block blockHellfire; public static Block blockInfiniteFLuidTank; public static Block blockProjectTable; - public static Block blockWitherGuard; - public static Block blockCompressedObsidian; - - public static Block blockCactusCharcoal; - public static Block blockCactusCoke; - public static Block blockSugarCharcoal; - public static Block blockSugarCoke; public static Block blockCustomJukebox; public static Block blockPooCollector; - public static Block blockPestKiller; - public static void init() { Logger.INFO("Initializing Blocks."); @@ -82,31 +72,65 @@ public static void registerBlocks() { // Fluids FluidRegistryHandler.registerFluids(); - // Workbench - blockFishTrap = new BlockFishTrap(); + GregtechItemList.FishTrap.set(new ItemStack(new BlockFishTrap())); blockInfiniteFLuidTank = new BlockFluidTankInfinite(); - blockMiningExplosive = new BlockMiningExplosives(); + GregtechItemList.MiningExplosives.set(new ItemStack(new BlockMiningExplosives())); blockHellfire = new BlockHellFire(); blockProjectTable = new BlockProjectTable(); - blockWitherGuard = new BlockWitherProof(); - blockCompressedObsidian = new BlockCompressedObsidian(); - - blockCactusCharcoal = new BlockCactusCharcoal(); - blockCactusCoke = new BlockCactusCoke(); - blockSugarCharcoal = new BlockSugarCharcoal(); - blockSugarCoke = new BlockSugarCoke(); - + GregtechItemList.WitherGuard.set(new ItemStack(new BlockWitherProof())); blockCircuitProgrammer = new BlockCircuitProgrammer(); - blockDecayablesChest = new BlockDecayablesChest(); - blockCustomJukebox = new BlockSuperJukebox(); - blockPooCollector = new BlockPooCollector(); - - blockPestKiller = new BlockPestKiller(); - + GregtechItemList.PestKiller.set(new ItemStack(new BlockPestKiller())); blockVolumetricFlaskSetter = new BlockFlaskSetter(); + // Compressed Blocks + Block cactusCharcoal = new BlockCactusCharcoal(); + GregtechItemList.BlockCactusCharcoal.set(new ItemStack(cactusCharcoal)); + GregtechItemList.CompressedCactusCharcoal.set(new ItemStack(cactusCharcoal, 1, 1)); + GregtechItemList.DoubleCompressedCactusCharcoal.set(new ItemStack(cactusCharcoal, 1, 2)); + GregtechItemList.TripleCompressedCactusCharcoal.set(new ItemStack(cactusCharcoal, 1, 3)); + GregtechItemList.QuadrupleCompressedCactusCharcoal.set(new ItemStack(cactusCharcoal, 1, 4)); + GregtechItemList.QuintupleCompressedCactusCharcoal.set(new ItemStack(cactusCharcoal, 1, 5)); + + Block cactusCoke = new BlockCactusCoke(); + GregtechItemList.BlockCactusCoke.set(new ItemStack(cactusCoke)); + GregtechItemList.CompressedCactusCoke.set(new ItemStack(cactusCoke, 1, 1)); + GregtechItemList.DoubleCompressedCactusCoke.set(new ItemStack(cactusCoke, 1, 2)); + GregtechItemList.TripleCompressedCactusCoke.set(new ItemStack(cactusCoke, 1, 3)); + GregtechItemList.QuadrupleCompressedCactusCoke.set(new ItemStack(cactusCoke, 1, 4)); + GregtechItemList.QuintupleCompressedCactusCoke.set(new ItemStack(cactusCoke, 1, 5)); + + Block sugarCharcoal = new BlockSugarCharcoal(); + GregtechItemList.BlockSugarCharcoal.set(new ItemStack(sugarCharcoal)); + GregtechItemList.CompressedSugarCharcoal.set(new ItemStack(sugarCharcoal, 1, 1)); + GregtechItemList.DoubleCompressedSugarCharcoal.set(new ItemStack(sugarCharcoal, 1, 2)); + GregtechItemList.TripleCompressedSugarCharcoal.set(new ItemStack(sugarCharcoal, 1, 3)); + GregtechItemList.QuadrupleCompressedSugarCharcoal.set(new ItemStack(sugarCharcoal, 1, 4)); + GregtechItemList.QuintupleCompressedSugarCharcoal.set(new ItemStack(sugarCharcoal, 1, 5)); + + Block sugarCoke = new BlockSugarCoke(); + GregtechItemList.BlockSugarCoke.set(new ItemStack(sugarCoke)); + GregtechItemList.CompressedSugarCoke.set(new ItemStack(sugarCoke, 1, 1)); + GregtechItemList.DoubleCompressedSugarCoke.set(new ItemStack(sugarCoke, 1, 2)); + GregtechItemList.TripleCompressedSugarCoke.set(new ItemStack(sugarCoke, 1, 3)); + GregtechItemList.QuadrupleCompressedSugarCoke.set(new ItemStack(sugarCoke, 1, 4)); + GregtechItemList.QuintupleCompressedSugarCoke.set(new ItemStack(sugarCoke, 1, 5)); + + Block compressedObsidian = new BlockCompressedObsidian(); + GregtechItemList.CompressedObsidian.set(new ItemStack(compressedObsidian)); + GregtechItemList.DoubleCompressedObsidian.set(new ItemStack(compressedObsidian, 1, 1)); + GregtechItemList.TripleCompressedObsidian.set(new ItemStack(compressedObsidian, 1, 2)); + GregtechItemList.QuadrupleCompressedObsidian.set(new ItemStack(compressedObsidian, 1, 3)); + GregtechItemList.QuintupleCompressedObsidian.set(new ItemStack(compressedObsidian, 1, 4)); + GregtechItemList.InvertedObsidian.set(new ItemStack(compressedObsidian, 1, 5)); + + // Compressed Glowstone shares the block with Compressed Obsidian + GregtechItemList.CompressedGlowstone.set(new ItemStack(compressedObsidian, 1, 6)); + GregtechItemList.DoubleCompressedGlowstone.set(new ItemStack(compressedObsidian, 1, 7)); + GregtechItemList.TripleCompressedGlowstone.set(new ItemStack(compressedObsidian, 1, 8)); + GregtechItemList.QuadrupleCompressedGlowstone.set(new ItemStack(compressedObsidian, 1, 9)); + GregtechItemList.QuintupleCompressedGlowstone.set(new ItemStack(compressedObsidian, 1, 10)); } } diff --git a/src/main/java/gtPlusPlus/core/client/renderer/RenderMiningExplosivesPrimed.java b/src/main/java/gtPlusPlus/core/client/renderer/RenderMiningExplosivesPrimed.java index 259352367db..60c31b03fe6 100644 --- a/src/main/java/gtPlusPlus/core/client/renderer/RenderMiningExplosivesPrimed.java +++ b/src/main/java/gtPlusPlus/core/client/renderer/RenderMiningExplosivesPrimed.java @@ -11,8 +11,8 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.entity.EntityPrimedMiningExplosive; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; @SideOnly(Side.CLIENT) public class RenderMiningExplosivesPrimed extends RenderTNTPrimed { @@ -56,7 +56,8 @@ public void doRender(final EntityPrimedMiningExplosive entity, final double p_76 f2 = (1.0F - (((entity.fuse - p_76986_9_) + 1.0F) / 100.0F)) * 0.8F; this.bindEntityTexture(entity); - this.blockRenderer.renderBlockAsItem(ModBlocks.blockMiningExplosive, 0, entity.getBrightness(p_76986_9_)); + this.blockRenderer + .renderBlockAsItem(GregtechItemList.MiningExplosives.getBlock(), 0, entity.getBrightness(p_76986_9_)); if (((entity.fuse / 5) % 2) == 0) { GL11.glDisable(GL11.GL_TEXTURE_2D); @@ -64,7 +65,7 @@ public void doRender(final EntityPrimedMiningExplosive entity, final double p_76 GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_DST_ALPHA); GL11.glColor4f(1.0F, 1.0F, 1.0F, f2); - this.blockRenderer.renderBlockAsItem(ModBlocks.blockMiningExplosive, 0, 1.0F); + this.blockRenderer.renderBlockAsItem(GregtechItemList.MiningExplosives.getBlock(), 0, 1.0F); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glDisable(GL11.GL_BLEND); GL11.glEnable(GL11.GL_LIGHTING); diff --git a/src/main/java/gtPlusPlus/core/common/CommonProxy.java b/src/main/java/gtPlusPlus/core/common/CommonProxy.java index cc36614eed3..e7ae2feb4e1 100644 --- a/src/main/java/gtPlusPlus/core/common/CommonProxy.java +++ b/src/main/java/gtPlusPlus/core/common/CommonProxy.java @@ -10,7 +10,6 @@ import baubles.common.container.InventoryBaubles; import baubles.common.lib.PlayerHandler; -import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.IFuelHandler; import cpw.mods.fml.common.Optional; import cpw.mods.fml.common.event.FMLInitializationEvent; @@ -88,11 +87,7 @@ public void init(final FMLInitializationEvent e) { } // Handles Sleep Benefits PlayerSleepEventHandler.init(); - // Handles Magic Feather - MinecraftForge.EVENT_BUS.register(ModItems.itemMagicFeather); - FMLCommonHandler.instance() - .bus() - .register(ModItems.itemMagicFeather); + MinecraftForge.EVENT_BUS.register(new EnderDragonDeathHandler()); MinecraftForge.EVENT_BUS.register(new EntityDeathHandler()); diff --git a/src/main/java/gtPlusPlus/core/container/ContainerFishTrap.java b/src/main/java/gtPlusPlus/core/container/ContainerFishTrap.java index 08b6ee2ebb6..c9a4e049892 100644 --- a/src/main/java/gtPlusPlus/core/container/ContainerFishTrap.java +++ b/src/main/java/gtPlusPlus/core/container/ContainerFishTrap.java @@ -7,10 +7,10 @@ import net.minecraft.item.ItemStack; import net.minecraft.world.World; -import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.inventories.InventoryFishTrap; import gtPlusPlus.core.slots.SlotNoInput; import gtPlusPlus.core.tileentities.general.TileEntityFishTrap; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public class ContainerFishTrap extends Container { @@ -85,7 +85,7 @@ public void onContainerClosed(final EntityPlayer par1EntityPlayer) { @Override public boolean canInteractWith(final EntityPlayer par1EntityPlayer) { - if (this.worldObj.getBlock(this.posX, this.posY, this.posZ) != ModBlocks.blockFishTrap) { + if (this.worldObj.getBlock(this.posX, this.posY, this.posZ) != GregtechItemList.FishTrap.getBlock()) { return false; } diff --git a/src/main/java/gtPlusPlus/core/container/ContainerPestKiller.java b/src/main/java/gtPlusPlus/core/container/ContainerPestKiller.java index 546c3674013..a1654bb608a 100644 --- a/src/main/java/gtPlusPlus/core/container/ContainerPestKiller.java +++ b/src/main/java/gtPlusPlus/core/container/ContainerPestKiller.java @@ -12,11 +12,11 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.inventories.InventoryPestKiller; import gtPlusPlus.core.slots.SlotGeneric; import gtPlusPlus.core.slots.SlotNoInput; import gtPlusPlus.core.tileentities.machines.TileEntityPestKiller; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public class ContainerPestKiller extends Container { @@ -99,7 +99,7 @@ public void onContainerClosed(final EntityPlayer par1EntityPlayer) { @Override public boolean canInteractWith(final EntityPlayer par1EntityPlayer) { - if (this.worldObj.getBlock(this.posX, this.posY, this.posZ) != ModBlocks.blockPestKiller) { + if (this.worldObj.getBlock(this.posX, this.posY, this.posZ) != GregtechItemList.PestKiller.getBlock()) { return false; } return par1EntityPlayer.getDistanceSq(this.posX + 0.5D, this.posY + 0.5D, this.posZ + 0.5D) <= 64D; diff --git a/src/main/java/gtPlusPlus/core/handler/AchievementHandler.java b/src/main/java/gtPlusPlus/core/handler/AchievementHandler.java index d511150ab23..0ff2fa54402 100644 --- a/src/main/java/gtPlusPlus/core/handler/AchievementHandler.java +++ b/src/main/java/gtPlusPlus/core/handler/AchievementHandler.java @@ -20,7 +20,6 @@ import gregtech.api.enums.Materials; import gregtech.api.util.GTLog; import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.lib.GTPPCore; import gtPlusPlus.core.material.MaterialsAlloy; @@ -87,20 +86,8 @@ public AchievementHandler() { true); // Blocks - this.registerAchievement( - "block.fishtrap", - -2, - 2, - ItemUtils.getSimpleStack(ModBlocks.blockFishTrap), - "dust.potin", - false); - this.registerAchievement( - "block.withercage", - -2, - 4, - ItemUtils.getSimpleStack(ModBlocks.blockWitherGuard), - "dust.eglin", - false); + this.registerAchievement("block.fishtrap", -2, 2, GregtechItemList.FishTrap.get(1), "dust.potin", false); + this.registerAchievement("block.withercage", -2, 4, GregtechItemList.WitherGuard.get(1), "dust.eglin", false); // Machines (-10/-8/-6) this.registerAchievement("rtg", -16, -10, GregtechItemList.RTG.get(1), aBaseAchievementName, false); diff --git a/src/main/java/gtPlusPlus/core/item/ModItems.java b/src/main/java/gtPlusPlus/core/item/ModItems.java index e38ff38ec62..805920d9356 100644 --- a/src/main/java/gtPlusPlus/core/item/ModItems.java +++ b/src/main/java/gtPlusPlus/core/item/ModItems.java @@ -13,11 +13,12 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; +import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; -import cpw.mods.fml.common.registry.GameRegistry; +import cpw.mods.fml.common.FMLCommonHandler; import gregtech.api.enums.GTValues; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; @@ -92,7 +93,6 @@ public final class ModItems { public static Item ZZZ_Empty; public static Item AAA_Broken; - public static Item itemAlkalusDisk; public static ItemCustomSpawnEgg itemCustomSpawnEgg; public static Item itemIngotBatteryAlloy; @@ -104,8 +104,6 @@ public final class ModItems { public static Item itemPersonalHealingDevice; public static Item itemSupremePizzaGloves; - public static ItemBlueprint itemBlueprintBase; - public static Item dustLithiumCarbonate; public static Item dustLithiumHydroxide; public static Item dustLithiumPeroxide; @@ -116,8 +114,6 @@ public final class ModItems { public static Item dustLi2CO3CaOH2; public static Item dustLi2BeF4; - public static Item dustTumbagaMix; - public static Item dustAer; public static Item dustIgnis; public static Item dustTerra; @@ -144,7 +140,6 @@ public final class ModItems { // Possibly missing base items that GT may be missing. public static Item itemSmallWroughtIronGear; - public static Item itemPlateRawMeat; public static Item itemPlateClay; public static Item itemPlateLithium; public static Item itemPlateEuropium; @@ -162,14 +157,7 @@ public final class ModItems { public static Item itemLavaFilter; public static Item itemAirFilter; - public static Item itemCoalCoke; - public static Item itemCactusCharcoal; - public static Item itemSugarCharcoal; - public static Item itemCactusCoke; - public static Item itemSugarCoke; - public static Item itemCircuitLFTR; - public static Item itemBasicTurbine; public static Item itemHalfCompleteCasings; @@ -213,8 +201,6 @@ public final class ModItems { public static BaseItemMetaFood itemMetaFood; - public static ItemMagicFeather itemMagicFeather; - static { Logger.INFO("Items!"); // Default item used when recipes fail, handy for debugging. Let's make sure they exist when this class is @@ -225,18 +211,24 @@ public final class ModItems { public static void init() { - itemMagicFeather = new ItemMagicFeather(); - - itemAlkalusDisk = new BaseItemDamageable( - "itemAlkalusDisk", - AddToCreativeTab.tabMisc, - 1, - 0, - "Unknown Use", - EnumRarity.rare, - EnumChatFormatting.AQUA, - false, - null); + Item magicFeather = new ItemMagicFeather(); + GregtechItemList.MagicFeather.set(magicFeather); + MinecraftForge.EVENT_BUS.register(magicFeather); + FMLCommonHandler.instance() + .bus() + .register(magicFeather); + + GregtechItemList.AlkalusDisk.set( + new BaseItemDamageable( + "itemAlkalusDisk", + AddToCreativeTab.tabMisc, + 1, + 0, + "Unknown Use", + EnumRarity.rare, + EnumChatFormatting.AQUA, + false, + null)); itemGenericToken = new ItemGenericToken(); itemDummyResearch = new ItemDummyResearch(); @@ -251,7 +243,7 @@ public static void init() { // Load Wearable Items WearableLoader.run(); - itemBlueprintBase = new ItemBlueprint("itemBlueprint"); + GregtechItemList.BlueprintBase.set(new ItemBlueprint("itemBlueprint")); itemHalfCompleteCasings = new ItemHalfCompleteCasings( "itemHalfCompleteCasings", @@ -593,7 +585,10 @@ public static void init() { false, null); - itemBasicTurbine = new ItemBasicScrubberTurbine(); + Item basicTurbine = new ItemBasicScrubberTurbine(); + GregtechItemList.BasicIronTurbine.set(new ItemStack(basicTurbine)); + GregtechItemList.BasicBronzeTurbine.set(new ItemStack(basicTurbine, 1, 1)); + GregtechItemList.BasicSteelTurbine.set(new ItemStack(basicTurbine, 1, 2)); // Zirconium // Cinter Pellet. @@ -781,11 +776,16 @@ public static void init() { } // Buffer Cores! - Item itemBufferCore; - for (int i = 1; i <= 10; i++) { - itemBufferCore = new ItemBufferCore("itemBufferCore", i).setCreativeTab(AddToCreativeTab.tabMachines); - GameRegistry.registerItem(itemBufferCore, itemBufferCore.getUnlocalizedName()); - } + GregtechItemList.Energy_Core_ULV.set(new ItemBufferCore("itemBufferCore", 1)); + GregtechItemList.Energy_Core_LV.set(new ItemBufferCore("itemBufferCore", 2)); + GregtechItemList.Energy_Core_MV.set(new ItemBufferCore("itemBufferCore", 3)); + GregtechItemList.Energy_Core_HV.set(new ItemBufferCore("itemBufferCore", 4)); + GregtechItemList.Energy_Core_EV.set(new ItemBufferCore("itemBufferCore", 5)); + GregtechItemList.Energy_Core_IV.set(new ItemBufferCore("itemBufferCore", 6)); + GregtechItemList.Energy_Core_LuV.set(new ItemBufferCore("itemBufferCore", 7)); + GregtechItemList.Energy_Core_ZPM.set(new ItemBufferCore("itemBufferCore", 8)); + GregtechItemList.Energy_Core_UV.set(new ItemBufferCore("itemBufferCore", 9)); + GregtechItemList.Energy_Core_UHV.set(new ItemBufferCore("itemBufferCore", 10)); itemCustomBook = new ItemBaseBook(); registerCustomTokens(); @@ -933,15 +933,9 @@ public static void registerCustomMaterialComponents() { new BaseItemPlate(MaterialsElements.getInstance().SODIUM); } - Material meatRaw = MaterialsOther.MEAT; - // A plate of Meat. - if (ItemUtils.getItemStackOfAmountFromOreDictNoBroken("plateMeatRaw", 1) == null) { - itemPlateRawMeat = new BaseItemPlate(meatRaw); - ItemUtils.registerFuel(ItemUtils.getSimpleStack(itemPlateRawMeat), 100); - } // A Block of Meat. if (ItemUtils.getItemStackOfAmountFromOreDictNoBroken("blockMeatRaw", 1) == null) { - blockRawMeat = new BlockBaseModular(meatRaw, BlockTypes.STANDARD); + blockRawMeat = new BlockBaseModular(MaterialsOther.MEAT, BlockTypes.STANDARD); ItemUtils.registerFuel(ItemUtils.getSimpleStack(blockRawMeat), 900); } @@ -964,7 +958,10 @@ public static void registerCustomMaterialComponents() { } // Tumbaga Mix (For Simple Crafting) - dustTumbagaMix = ItemUtils - .generateSpecialUseDusts("MixTumbaga", "Tumbaga Mix", "Au2Cu", Utils.rgbtoHexValue(255, 150, 80))[0]; + Item[] tumbagaMix = ItemUtils + .generateSpecialUseDusts("MixTumbaga", "Tumbaga Mix", "Au2Cu", Utils.rgbtoHexValue(255, 150, 80)); + GregtechItemList.TumbagaMixDust.set(tumbagaMix[0]); + GregtechItemList.SmallTumbagaMixDust.set(tumbagaMix[1]); + GregtechItemList.TinyTumbagaMixDust.set(tumbagaMix[2]); } } diff --git a/src/main/java/gtPlusPlus/core/item/general/ItemBufferCore.java b/src/main/java/gtPlusPlus/core/item/general/ItemBufferCore.java index e99b4ca7a01..c191a55b9cd 100644 --- a/src/main/java/gtPlusPlus/core/item/general/ItemBufferCore.java +++ b/src/main/java/gtPlusPlus/core/item/general/ItemBufferCore.java @@ -8,9 +8,11 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; +import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.GTValues; +import gtPlusPlus.core.creative.AddToCreativeTab; import gtPlusPlus.core.item.base.BaseItemWithDamageValue; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.math.MathUtils; @@ -23,7 +25,9 @@ public ItemBufferCore(final String unlocalizedName, final int i) { super(unlocalizedName + i); this.setTextureName(GTPlusPlus.ID + ":" + unlocalizedName); this.setMaxStackSize(32); + this.setCreativeTab(AddToCreativeTab.tabMachines); this.coreTier = i; + GameRegistry.registerItem(this, getUnlocalizedName()); } @Override diff --git a/src/main/java/gtPlusPlus/core/item/general/ItemMagicFeather.java b/src/main/java/gtPlusPlus/core/item/general/ItemMagicFeather.java index 2972acd719a..ec4a0f26523 100644 --- a/src/main/java/gtPlusPlus/core/item/general/ItemMagicFeather.java +++ b/src/main/java/gtPlusPlus/core/item/general/ItemMagicFeather.java @@ -28,8 +28,8 @@ import cpw.mods.fml.relauncher.SideOnly; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.creative.AddToCreativeTab; -import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.item.base.CoreItem; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public class ItemMagicFeather extends CoreItem { @@ -160,7 +160,7 @@ public void onPlayerTick(TickEvent.PlayerTickEvent event) { } } } - boolean hasItem = hasItem(player, ModItems.itemMagicFeather); + boolean hasItem = hasItem(player, GregtechItemList.MagicFeather.getItem()); if (!hasItem) { ItemMagicFeather.sPlayerData.remove(player); } @@ -207,7 +207,7 @@ public void onTick() { EntityPlayer player = this.player.get(); if (player == null) return; try { - boolean hasItem = hasItem(player, ModItems.itemMagicFeather); + boolean hasItem = hasItem(player, GregtechItemList.MagicFeather.getItem()); if (hasItem != this.hasItem) { if (hasItem) { this.onAdd(); diff --git a/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java b/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java index b44098fea72..47fbada4c06 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java +++ b/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java @@ -19,18 +19,14 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; -import gregtech.api.enums.ToolDictNames; import gregtech.api.util.GTModHandler; import gregtech.api.util.GTOreDictUnificator; import gregtech.api.util.GTUtility; -import gtPlusPlus.core.block.ModBlocks; -import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.material.MaterialsAlloy; import gtPlusPlus.core.material.MaterialsElements; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.xmod.bop.blocks.BOPBlockRegistrator; import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; -import gtPlusPlus.xmod.gregtech.common.helpers.VolumetricFlaskHelper; import ic2.core.Ic2Items; public class RecipesGeneral { @@ -39,7 +35,7 @@ public static void loadRecipes() { // Workbench Blueprint GTModHandler.addCraftingRecipe( - new ItemStack(ModItems.itemBlueprintBase, 2), + GregtechItemList.BlueprintBase.get(2), new Object[] { "PL ", "PL ", "LL ", 'P', new ItemStack(Items.paper), 'L', GTOreDictUnificator.get(OrePrefixes.dust, Materials.Lazurite, 1) }); @@ -55,28 +51,28 @@ public static void loadRecipes() { // Tumbaga GTModHandler.addShapelessCraftingRecipe( - new ItemStack(ModItems.dustTumbagaMix), + GregtechItemList.TumbagaMixDust.get(1), new Object[] { "dustGold", "dustGold", "dustCopper" }); GTModHandler.addShapelessCraftingRecipe( MaterialsAlloy.TUMBAGA.getDust(10), - new Object[] { new ItemStack(ModItems.dustTumbagaMix), new ItemStack(ModItems.dustTumbagaMix), - new ItemStack(ModItems.dustTumbagaMix), "dustGold" }); + new Object[] { GregtechItemList.TumbagaMixDust.get(1), GregtechItemList.TumbagaMixDust.get(1), + GregtechItemList.TumbagaMixDust.get(1), "dustGold" }); // Basic Turbines GTModHandler.addCraftingRecipe( - new ItemStack(ModItems.itemBasicTurbine), + GregtechItemList.BasicIronTurbine.get(1), new Object[] { "fPS", "PRP", "SPh", 'P', "plateIron", 'R', "ringIron", 'S', "stickIron" }); GTModHandler.addCraftingRecipe( - new ItemStack(ModItems.itemBasicTurbine, 1, 1), + GregtechItemList.BasicBronzeTurbine.get(1), new Object[] { "fPS", "PRP", "SPh", 'P', "plateBronze", 'R', "ringBronze", 'S', "stickBronze" }); GTModHandler.addCraftingRecipe( - new ItemStack(ModItems.itemBasicTurbine, 1, 2), + GregtechItemList.BasicSteelTurbine.get(1), new Object[] { "fPS", "PRP", "SPh", 'P', "plateSteel", 'R', "ringSteel", 'S', "stickSteel" }); // Large Volumetric Flask GTValues.RA.stdBuilder() .itemInputs(ItemList.Large_Fluid_Cell_Aluminium.get(1)) - .itemOutputs(VolumetricFlaskHelper.getLargeVolumetricFlask(2)) + .itemOutputs(GregtechItemList.VOLUMETRIC_FLASK_8k.get(2)) .fluidInputs(Materials.BorosilicateGlass.getMolten(4000)) .duration(15 * SECONDS) .eut(TierEU.RECIPE_HV) @@ -85,7 +81,7 @@ public static void loadRecipes() { // Gigantic Volumetric Flask GTValues.RA.stdBuilder() .itemInputs(ItemList.Large_Fluid_Cell_TungstenSteel.get(1)) - .itemOutputs(VolumetricFlaskHelper.getGiganticVolumetricFlask(2)) + .itemOutputs(GregtechItemList.VOLUMETRIC_FLASK_32k.get(2)) .fluidInputs(Materials.BorosilicateGlass.getMolten(16000)) .duration(15 * SECONDS) .eut(TierEU.RECIPE_IV) @@ -94,7 +90,7 @@ public static void loadRecipes() { // Klein Bottle GTValues.RA.stdBuilder() .itemInputs(ItemList.Tesseract.get(1)) - .itemOutputs(VolumetricFlaskHelper.getKleinBottle(1)) + .itemOutputs(GregtechItemList.KLEIN_BOTTLE.get(1)) .fluidInputs(MaterialsElements.STANDALONE.CHRONOMATIC_GLASS.getFluidStack(2304)) .duration(15 * SECONDS) .eut(TierEU.RECIPE_UHV) @@ -102,13 +98,13 @@ public static void loadRecipes() { // Mining Explosives GTModHandler.addCraftingRecipe( - new ItemStack(ModBlocks.blockMiningExplosive, 3), + GregtechItemList.MiningExplosives.get(3), new Object[] { "ITI", "TFT", "STS", 'I', Ic2Items.industrialTnt.copy(), 'T', new ItemStack(Blocks.tnt), 'F', GTOreDictUnificator.get(OrePrefixes.frameGt, Materials.Iron, 1), 'S', "dustSulfur" }); // Alkalus Disk GTModHandler.addCraftingRecipe( - new ItemStack(ModItems.itemAlkalusDisk), + GregtechItemList.AlkalusDisk.get(1), new Object[] { "ABC", "DEF", "GHI", 'A', "gemExquisiteRuby", 'B', "gemFlawlessDiamond", 'C', "gemExquisiteDiamond", 'D', "gemFlawlessRuby", 'E', ItemList.Credit_Greg_Osmium.get(1), 'F', "gemFlawlessSapphire", 'G', "gemExquisiteEmerald", 'H', "gemFlawlessEmerald", 'I', @@ -116,7 +112,7 @@ public static void loadRecipes() { // Wither Cage GTModHandler.addCraftingRecipe( - new ItemStack(ModBlocks.blockWitherGuard, 32), + GregtechItemList.WitherGuard.get(32), new Object[] { "SPS", "PWP", "SPS", 'S', "stickBlackSteel", 'P', "plateTungstenSteel", 'W', new ItemStack(Items.nether_star) }); @@ -129,7 +125,7 @@ public static void loadRecipes() { Materials.Ruby.getBlocks(32), Materials.Sapphire.getBlocks(32), new ItemStack(Blocks.gold_block, 32)) - .itemOutputs(new ItemStack(ModItems.itemMagicFeather, 1)) + .itemOutputs(GregtechItemList.MagicFeather.get(1)) .fluidInputs(Materials.Silver.getMolten(32 * 144)) .duration(2 * MINUTES) .eut(TierEU.RECIPE_EV) @@ -143,7 +139,7 @@ public static void loadRecipes() { MaterialsAlloy.EGLIN_STEEL.getPlate(4), GTOreDictUnificator.get(OrePrefixes.circuit, Materials.ULV, 2), GTUtility.getIntegratedCircuit(16)) - .itemOutputs(new ItemStack(ModBlocks.blockPestKiller)) + .itemOutputs(GregtechItemList.PestKiller.get(1)) .fluidInputs(FluidUtils.getFluidStack("ic2hotwater", 500)) .duration(1 * MINUTES) .eut(TierEU.RECIPE_LV / 2) @@ -156,58 +152,68 @@ public static void loadRecipes() { } private static void addFuelBlocks() { - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(ModItems.itemCactusCharcoal, 9)) - .itemOutputs(new ItemStack(ModBlocks.blockCactusCharcoal)) - .duration(15 * SECONDS) - .eut(2) - .addTo(compressorRecipes); - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(ModItems.itemCactusCoke, 9)) - .itemOutputs(new ItemStack(ModBlocks.blockCactusCoke)) - .duration(15 * SECONDS) - .eut(2) - .addTo(compressorRecipes); - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(ModItems.itemSugarCharcoal, 9)) - .itemOutputs(new ItemStack(ModBlocks.blockSugarCharcoal)) - .duration(15 * SECONDS) - .eut(2) - .addTo(compressorRecipes); - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(ModItems.itemSugarCoke, 9)) - .itemOutputs(new ItemStack(ModBlocks.blockSugarCoke)) - .duration(15 * SECONDS) - .eut(2) - .addTo(compressorRecipes); - for (int i = 1; i < 6; i++) { - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(ModBlocks.blockCactusCharcoal, 9, i - 1)) - .itemOutputs(new ItemStack(ModBlocks.blockCactusCharcoal, 1, i)) - .duration(15 * SECONDS) - .eut(2) - .addTo(compressorRecipes); - } - for (int i = 1; i < 6; i++) { - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(ModBlocks.blockCactusCoke, 9, i - 1)) - .itemOutputs(new ItemStack(ModBlocks.blockCactusCoke, 1, i)) - .duration(15 * SECONDS) - .eut(2) - .addTo(compressorRecipes); - } - for (int i = 1; i < 6; i++) { - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(ModBlocks.blockSugarCharcoal, 9, i - 1)) - .itemOutputs(new ItemStack(ModBlocks.blockSugarCharcoal, 1, i)) - .duration(15 * SECONDS) - .eut(2) - .addTo(compressorRecipes); - } - for (int i = 1; i < 6; i++) { + addCompressionRecipes( + false, + GregtechItemList.CactusCharcoal.get(1), + GregtechItemList.BlockCactusCharcoal.get(1), + GregtechItemList.CompressedCactusCharcoal.get(1), + GregtechItemList.DoubleCompressedCactusCharcoal.get(1), + GregtechItemList.TripleCompressedCactusCharcoal.get(1), + GregtechItemList.QuadrupleCompressedCactusCharcoal.get(1), + GregtechItemList.QuintupleCompressedCactusCharcoal.get(1)); + + addCompressionRecipes( + false, + GregtechItemList.CactusCoke.get(1), + GregtechItemList.BlockCactusCoke.get(1), + GregtechItemList.CompressedCactusCoke.get(1), + GregtechItemList.DoubleCompressedCactusCoke.get(1), + GregtechItemList.TripleCompressedCactusCoke.get(1), + GregtechItemList.QuadrupleCompressedCactusCoke.get(1), + GregtechItemList.QuintupleCompressedCactusCoke.get(1)); + + addCompressionRecipes( + false, + GregtechItemList.SugarCharcoal.get(1), + GregtechItemList.BlockSugarCharcoal.get(1), + GregtechItemList.CompressedSugarCharcoal.get(1), + GregtechItemList.DoubleCompressedSugarCharcoal.get(1), + GregtechItemList.TripleCompressedSugarCharcoal.get(1), + GregtechItemList.QuadrupleCompressedSugarCharcoal.get(1), + GregtechItemList.QuintupleCompressedSugarCharcoal.get(1)); + + addCompressionRecipes( + false, + GregtechItemList.SugarCoke.get(1), + GregtechItemList.BlockSugarCoke.get(1), + GregtechItemList.CompressedSugarCoke.get(1), + GregtechItemList.DoubleCompressedSugarCoke.get(1), + GregtechItemList.TripleCompressedSugarCoke.get(1), + GregtechItemList.QuadrupleCompressedSugarCoke.get(1), + GregtechItemList.QuintupleCompressedSugarCoke.get(1)); + } + + private static void addCompressionRecipes(boolean withCrafting, ItemStack item, ItemStack block, ItemStack one, + ItemStack two, ItemStack three, ItemStack four, ItemStack five) { + + addCompressionRecipe(withCrafting, item, block); + addCompressionRecipe(withCrafting, block, one); + addCompressionRecipe(withCrafting, one, two); + addCompressionRecipe(withCrafting, two, three); + addCompressionRecipe(withCrafting, three, four); + addCompressionRecipe(withCrafting, four, five); + } + + private static void addCompressionRecipe(boolean crafting, ItemStack raw, ItemStack compressed) { + if (raw == null || compressed == null) return; + + if (crafting) { + GTModHandler.addCraftingRecipe(compressed, new Object[] { "III", "III", "III", 'I', raw }); + GTModHandler.addShapelessCraftingRecipe(GTUtility.copyAmount(9, raw), new Object[] { compressed }); + } else { GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(ModBlocks.blockSugarCoke, 9, i - 1)) - .itemOutputs(new ItemStack(ModBlocks.blockSugarCoke, 1, i)) + .itemInputs(GTUtility.copyAmount(9, raw)) + .itemOutputs(compressed) .duration(15 * SECONDS) .eut(2) .addTo(compressorRecipes); @@ -215,43 +221,41 @@ private static void addFuelBlocks() { } private static void addCompressedObsidian() { - // Compressed Obsidian 1-5 - final ItemStack[] mItems = new ItemStack[6]; - mItems[0] = new ItemStack(Blocks.obsidian); - for (int r = 0; r < 5; r++) { - mItems[r + 1] = new ItemStack(ModBlocks.blockCompressedObsidian, 1, r); - } - - for (int r = 0; r < 5; r++) { - final ItemStack input = mItems[r]; - final ItemStack output = mItems[r + 1]; - - GTModHandler.addCraftingRecipe(output, new Object[] { "III", "III", "III", 'I', input }); - GTModHandler.addShapelessCraftingRecipe(GTUtility.copyAmount(9, input), new Object[] { output }); - } - - // Compressed Glowstone 1-5 - final ItemStack[] mItems2 = new ItemStack[6]; - mItems2[0] = new ItemStack(Blocks.glowstone); - for (int r = 0; r < 5; r++) { - mItems2[r + 1] = new ItemStack(ModBlocks.blockCompressedObsidian, 1, 6 + r); - } - - for (int r = 0; r < 5; r++) { - final ItemStack input = mItems2[r]; - final ItemStack output = mItems2[r + 1]; - - if (r == 2) { - GTModHandler.addCraftingRecipe( - output, - new Object[] { "III", "IQI", "III", 'I', input, 'Q', - new ItemStack(ModBlocks.blockCompressedObsidian, 1, 5) }); - } else { - GTModHandler.addCraftingRecipe(output, new Object[] { "III", "III", "III", 'I', input }); - } - - GTModHandler.addShapelessCraftingRecipe(GTUtility.copyAmount(9, input), new Object[] { output }); - } + // Compressed Obsidian + addCompressionRecipes( + true, + null, + new ItemStack(Blocks.obsidian), + GregtechItemList.CompressedObsidian.get(1), + GregtechItemList.DoubleCompressedObsidian.get(1), + GregtechItemList.TripleCompressedObsidian.get(1), + GregtechItemList.QuadrupleCompressedObsidian.get(1), + GregtechItemList.QuintupleCompressedObsidian.get(1)); + + // Compressed Glowstone + addCompressionRecipe(true, new ItemStack(Blocks.glowstone), GregtechItemList.CompressedGlowstone.get(1)); + addCompressionRecipe( + true, + GregtechItemList.CompressedGlowstone.get(1), + GregtechItemList.DoubleCompressedGlowstone.get(1)); + + // Double -> Triple done differently + GTModHandler.addCraftingRecipe( + GregtechItemList.TripleCompressedGlowstone.get(1), + new Object[] { "III", "IQI", "III", 'I', GregtechItemList.DoubleCompressedGlowstone.get(1), 'Q', + GregtechItemList.InvertedObsidian.get(1) }); + GTModHandler.addShapelessCraftingRecipe( + GregtechItemList.DoubleCompressedGlowstone.get(9), + new Object[] { GregtechItemList.TripleCompressedGlowstone.get(1) }); + + addCompressionRecipe( + true, + GregtechItemList.TripleCompressedGlowstone.get(1), + GregtechItemList.QuadrupleCompressedGlowstone.get(1)); + addCompressionRecipe( + true, + GregtechItemList.QuadrupleCompressedGlowstone.get(1), + GregtechItemList.QuintupleCompressedGlowstone.get(1)); } private static void addPipesAndWires() { @@ -276,11 +280,6 @@ private static void addPipesAndWires() { } private static void migratedRecipes() { - // Raw Meat Plate - GTModHandler.addShapelessCraftingRecipe( - GTOreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 1), - new Object[] { ToolDictNames.craftingToolMortar, new ItemStack(ModItems.itemPlateRawMeat) }); - // Cryotheum Cooling Hatch GTModHandler.addCraftingRecipe( GregtechItemList.Hatch_Input_Cryotheum.get(1L), diff --git a/src/main/java/gtPlusPlus/core/recipe/RecipesGregTech.java b/src/main/java/gtPlusPlus/core/recipe/RecipesGregTech.java index 7b66e75e67d..0307841712b 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RecipesGregTech.java +++ b/src/main/java/gtPlusPlus/core/recipe/RecipesGregTech.java @@ -1166,7 +1166,7 @@ private static void assemblerRecipes() { ItemUtils.getSimpleStack(CI.explosiveTNT, 4), GTOreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 2L), GTOreDictUnificator.get(OrePrefixes.frameGt, Materials.Iron, 1L)) - .itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockMiningExplosive, 3)) + .itemOutputs(GregtechItemList.MiningExplosives.get(3)) .duration(5 * SECONDS) .eut(TierEU.RECIPE_MV / 2) .addTo(assemblerRecipes); @@ -1176,7 +1176,7 @@ private static void assemblerRecipes() { GTOreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1L), GTOreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 8L), GTOreDictUnificator.get(OrePrefixes.stick, Materials.BlackSteel, 8L)) - .itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockWitherGuard, 64)) + .itemOutputs(GregtechItemList.WitherGuard.get(64)) .duration(30 * SECONDS) .eut(TierEU.RECIPE_HV) .addTo(assemblerRecipes); diff --git a/src/main/java/gtPlusPlus/core/recipe/RecipesLaserEngraver.java b/src/main/java/gtPlusPlus/core/recipe/RecipesLaserEngraver.java index 63c136c8f92..afc0110a10b 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RecipesLaserEngraver.java +++ b/src/main/java/gtPlusPlus/core/recipe/RecipesLaserEngraver.java @@ -15,9 +15,9 @@ import gregtech.api.interfaces.IOreRecipeRegistrator; import gregtech.api.util.GTOreDictUnificator; import gregtech.api.util.GTUtility; -import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.everglades.dimension.DimensionEverglades; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public class RecipesLaserEngraver implements IOreRecipeRegistrator { @@ -125,7 +125,7 @@ public void registerOre(final OrePrefixes aPrefix, final Materials aMaterial, fi } else if (aOreDictName.equals(OreDictNames.craftingLensOrange.toString())) { GTValues.RA.stdBuilder() - .itemInputs(ItemUtils.getSimpleStack(ModItems.itemAlkalusDisk), GTUtility.copyAmount(0L, aStack)) + .itemInputs(GregtechItemList.AlkalusDisk.get(1), GTUtility.copyAmount(0L, aStack)) .itemOutputs(ItemUtils.getSimpleStack(DimensionEverglades.portalItem)) .duration(3 * HOURS) .eut(TierEU.RECIPE_IV) diff --git a/src/main/java/gtPlusPlus/core/recipe/RecipesMachines.java b/src/main/java/gtPlusPlus/core/recipe/RecipesMachines.java index 6058ac224aa..b29e010403d 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RecipesMachines.java +++ b/src/main/java/gtPlusPlus/core/recipe/RecipesMachines.java @@ -2656,7 +2656,7 @@ private static void runModRecipes() { CI.getTieredCircuit(5), plate, "wireFineElectrum", - ItemUtils.getSimpleStack(ModBlocks.blockFishTrap), + GregtechItemList.FishTrap.get(1), "wireFineElectrum", plate, CI.getTieredCircuit(5), diff --git a/src/main/java/gtPlusPlus/core/tileentities/general/TileEntityFishTrap.java b/src/main/java/gtPlusPlus/core/tileentities/general/TileEntityFishTrap.java index 49d466d70df..6bb90a4cd13 100644 --- a/src/main/java/gtPlusPlus/core/tileentities/general/TileEntityFishTrap.java +++ b/src/main/java/gtPlusPlus/core/tileentities/general/TileEntityFishTrap.java @@ -18,10 +18,10 @@ import gregtech.api.enums.Materials; import gregtech.api.util.GTUtility; -import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.inventories.InventoryFishTrap; import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public class TileEntityFishTrap extends TileEntity implements ISidedInventory { @@ -50,7 +50,7 @@ private int getNumberOfSurroundingWater() { int waterCount = 0; int trapCount = 0; for (final Block checkBlock : surroundingBlocks) { - if (checkBlock == ModBlocks.blockFishTrap) { + if (checkBlock == GregtechItemList.FishTrap.getBlock()) { trapCount++; } else if ((checkBlock == Blocks.water) || (checkBlock == Blocks.flowing_water)) { waterCount++; diff --git a/src/main/java/gtPlusPlus/recipes/CokeAndPyrolyseOven.java b/src/main/java/gtPlusPlus/recipes/CokeAndPyrolyseOven.java index 00bca52f6b8..74caaacd88f 100644 --- a/src/main/java/gtPlusPlus/recipes/CokeAndPyrolyseOven.java +++ b/src/main/java/gtPlusPlus/recipes/CokeAndPyrolyseOven.java @@ -24,9 +24,9 @@ import gregtech.api.util.GTRecipe; import gregtech.api.util.GTUtility; import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.item.chemistry.CoalTar; import gtPlusPlus.core.util.reflect.AddGregtechRecipe; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public class CokeAndPyrolyseOven { @@ -65,12 +65,12 @@ public static void postInit() { // duration*1.25 per item.) addCokingRecipes( new ItemStack(Blocks.cactus, 20), - new ItemStack(ModItems.itemCactusCharcoal, 20), - new ItemStack(ModItems.itemCactusCoke, 20)); + GregtechItemList.CactusCharcoal.get(20), + GregtechItemList.CactusCoke.get(20)); addCokingRecipes( new ItemStack(Items.reeds, 20), - new ItemStack(ModItems.itemSugarCharcoal, 20), - new ItemStack(ModItems.itemSugarCoke, 20)); + GregtechItemList.SugarCharcoal.get(20), + GregtechItemList.SugarCoke.get(20)); // Coke & Coal GTValues.RA.stdBuilder() diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java index 24620501dce..64092d5448e 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java @@ -191,6 +191,18 @@ public enum GregtechItemList implements IGregtechItemContainer { GTPP_Casing_UV, GTPP_Casing_UHV, + // Tiered Energy Cores + Energy_Core_ULV, + Energy_Core_LV, + Energy_Core_MV, + Energy_Core_HV, + Energy_Core_EV, + Energy_Core_IV, + Energy_Core_LuV, + Energy_Core_ZPM, + Energy_Core_UV, + Energy_Core_UHV, + // IronBlastFurnace Machine_Bronze_BlastFurnace Casing_IronPlatedBricks, @@ -814,7 +826,95 @@ public enum GregtechItemList implements IGregtechItemContainer { RedstoneCircuitBlock, RedstoneLamp, RedstoneStrengthDisplay, - RedstoneStrengthScale; + RedstoneStrengthScale, + + // ---------------------------------------------------------------------------- + // Items previously stored elsewhere, moved here for common reference + + // Compressed Stuff + CactusCharcoal, + BlockCactusCharcoal, + CompressedCactusCharcoal, + DoubleCompressedCactusCharcoal, + TripleCompressedCactusCharcoal, + QuadrupleCompressedCactusCharcoal, + QuintupleCompressedCactusCharcoal, + + CactusCoke, + BlockCactusCoke, + CompressedCactusCoke, + DoubleCompressedCactusCoke, + TripleCompressedCactusCoke, + QuadrupleCompressedCactusCoke, + QuintupleCompressedCactusCoke, + + SugarCharcoal, + BlockSugarCharcoal, + CompressedSugarCharcoal, + DoubleCompressedSugarCharcoal, + TripleCompressedSugarCharcoal, + QuadrupleCompressedSugarCharcoal, + QuintupleCompressedSugarCharcoal, + + SugarCoke, + BlockSugarCoke, + CompressedSugarCoke, + DoubleCompressedSugarCoke, + TripleCompressedSugarCoke, + QuadrupleCompressedSugarCoke, + QuintupleCompressedSugarCoke, + + CompressedObsidian, + DoubleCompressedObsidian, + TripleCompressedObsidian, + QuadrupleCompressedObsidian, + QuintupleCompressedObsidian, + InvertedObsidian, + + CompressedGlowstone, + DoubleCompressedGlowstone, + TripleCompressedGlowstone, + QuadrupleCompressedGlowstone, + QuintupleCompressedGlowstone, + + // IC2 Rotors + EnergeticAlloyRotor, + EnergeticAlloyRotorBlade, + EnergeticAlloyShaft, + + TungstenSteelRotor, + TungstenSteelRotorBlade, + TungstenSteelShaft, + + VibrantAlloyRotor, + VibrantAlloyRotorBlade, + VibrantAlloyShaft, + + IridiumRotor, + IridiumRotorBlade, + IridiumShaft, + + // Basic Turbines + BasicIronTurbine, + BasicBronzeTurbine, + BasicSteelTurbine, + + // Misc + CustomCoalCoke, + BlueprintBase, + MiningExplosives, + AlkalusDisk, + WitherGuard, + MagicFeather, + PestKiller, + FishTrap, + + // Tumbaga Mix (todo convert to material?) + TumbagaMixDust, + SmallTumbagaMixDust, + TinyTumbagaMixDust, + + ; public static final GregtechItemList[] DYE_ONLY_ITEMS = { Energy_Buffer_1by1_EV, Energy_Buffer_1by1_EV }; private ItemStack mStack; diff --git a/src/main/java/gtPlusPlus/xmod/ic2/item/IC2Items.java b/src/main/java/gtPlusPlus/xmod/ic2/item/IC2Items.java index 7b6dbe59088..fbecbd9345e 100644 --- a/src/main/java/gtPlusPlus/xmod/ic2/item/IC2Items.java +++ b/src/main/java/gtPlusPlus/xmod/ic2/item/IC2Items.java @@ -1,51 +1,34 @@ package gtPlusPlus.xmod.ic2.item; -import static gregtech.api.enums.Mods.EnderIO; - -import net.minecraft.item.ItemStack; - import gtPlusPlus.core.creative.AddToCreativeTab; import gtPlusPlus.core.item.base.CoreItem; import gtPlusPlus.core.item.wearable.hazmat.ItemArmorHazmatEx; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public class IC2Items { - public static ItemStack rotor_Material_1; // Energetic Alloy - public static ItemStack rotor_Material_2; // TungstenSteel - public static ItemStack rotor_Material_3; // Vibrant Alloy - public static ItemStack rotor_Material_4; // Iridium - - public static ItemStack rotor_Blade_Material_1; - public static ItemStack rotor_Blade_Material_2; - public static ItemStack rotor_Blade_Material_3; - public static ItemStack rotor_Blade_Material_4; - - public static ItemStack shaft_Material_1; // Energetic Alloy - public static ItemStack shaft_Material_2; // TungstenSteel - public static ItemStack shaft_Material_3; // Vibrant Alloy - public static ItemStack shaft_Material_4; // Iridium - - private static final String[] mData1 = new String[] { "itemEnergeticRotorBlade", "itemMagnaliumRotorBlade" }; - private static final String[] mData2 = new String[] { "itemEnergeticShaft", "itemMagnaliumShaft" }; - private static final String[] mData3 = new String[] { "itemVibrantRotorBlade", "itemUltimetRotorBlade" }; - private static final String[] mData4 = new String[] { "itemVibrantShaft", "itemUltimetShaft" }; - public static void register() { - int aIndexEIO = (EnderIO.isModLoaded() ? 0 : 1); - // Rotor Blades - rotor_Blade_Material_1 = new ItemStack( - new CoreItem(mData1[aIndexEIO], AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor")); - rotor_Blade_Material_2 = new ItemStack( + GregtechItemList.EnergeticAlloyRotorBlade.set( + new CoreItem( + "itemEnergeticRotorBlade", + AddToCreativeTab.tabMachines, + 16, + "A part for an advanced Kinetic Rotor")); + GregtechItemList.TungstenSteelRotorBlade.set( new CoreItem( "itemTungstenSteelRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor")); - rotor_Blade_Material_3 = new ItemStack( - new CoreItem(mData3[aIndexEIO], AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor")); - rotor_Blade_Material_4 = new ItemStack( + GregtechItemList.VibrantAlloyRotorBlade.set( + new CoreItem( + "itemVibrantRotorBlade", + AddToCreativeTab.tabMachines, + 16, + "A part for an advanced Kinetic Rotor")); + GregtechItemList.IridiumRotorBlade.set( new CoreItem( "itemIridiumRotorBlade", AddToCreativeTab.tabMachines, @@ -53,24 +36,28 @@ public static void register() { "A part for an advanced Kinetic Rotor")); // Rotor Shafts - shaft_Material_1 = new ItemStack( - new CoreItem(mData2[aIndexEIO], AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor")); - shaft_Material_2 = new ItemStack( + GregtechItemList.EnergeticAlloyShaft.set( + new CoreItem( + "itemEnergeticShaft", + AddToCreativeTab.tabMachines, + 16, + "A part for an advanced Kinetic Rotor")); + GregtechItemList.TungstenSteelShaft.set( new CoreItem( "itemTungstenSteelShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor")); - shaft_Material_3 = new ItemStack( - new CoreItem(mData4[aIndexEIO], AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor")); - shaft_Material_4 = new ItemStack( + GregtechItemList.VibrantAlloyShaft.set( + new CoreItem("itemVibrantShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor")); + GregtechItemList.IridiumShaft.set( new CoreItem("itemIridiumShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor")); // Rotors - rotor_Material_1 = new ItemStack(new CustomKineticRotor(0)); - rotor_Material_2 = new ItemStack(new CustomKineticRotor(1)); - rotor_Material_3 = new ItemStack(new CustomKineticRotor(2)); - rotor_Material_4 = new ItemStack(new CustomKineticRotor(3)); + GregtechItemList.EnergeticAlloyRotor.set(new CustomKineticRotor(0)); + GregtechItemList.TungstenSteelRotor.set(new CustomKineticRotor(1)); + GregtechItemList.VibrantAlloyRotor.set(new CustomKineticRotor(2)); + GregtechItemList.IridiumRotor.set(new CustomKineticRotor(3)); ItemArmorHazmatEx.init(); } diff --git a/src/main/java/gtPlusPlus/xmod/ic2/recipe/RecipeIC2.java b/src/main/java/gtPlusPlus/xmod/ic2/recipe/RecipeIC2.java index 397899d08be..6ec83c856d8 100644 --- a/src/main/java/gtPlusPlus/xmod/ic2/recipe/RecipeIC2.java +++ b/src/main/java/gtPlusPlus/xmod/ic2/recipe/RecipeIC2.java @@ -18,7 +18,6 @@ import gregtech.api.util.GTUtility; import gtPlusPlus.core.material.MaterialsAlloy; import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; -import gtPlusPlus.xmod.ic2.item.IC2Items; import ic2.core.Ic2Items; public class RecipeIC2 { @@ -28,16 +27,16 @@ public static void initRecipes() { // Rotor Blades GTModHandler.addCraftingRecipe( - IC2Items.rotor_Blade_Material_1.copy(), + GregtechItemList.EnergeticAlloyRotorBlade.get(1), new Object[] { "PPP", "PRP", "PPP", 'P', "plateEnergeticAlloy", 'R', "ringStainlessSteel" }); GTModHandler.addCraftingRecipe( - IC2Items.rotor_Blade_Material_2.copy(), + GregtechItemList.TungstenSteelRotorBlade.get(1), new Object[] { "PPP", "PRP", "PPP", 'P', "plateTungstenSteel", 'R', "ringTungstenSteel" }); GTModHandler.addCraftingRecipe( - IC2Items.rotor_Blade_Material_3.copy(), + GregtechItemList.VibrantAlloyRotorBlade.get(1), new Object[] { "PPP", "PRP", "PPP", 'P', "plateVibrantAlloy", 'R', "ringChrome" }); GTModHandler.addCraftingRecipe( - IC2Items.rotor_Blade_Material_4.copy(), + GregtechItemList.IridiumRotorBlade.get(1), new Object[] { "PPP", "PRP", "PPP", 'P', "plateAlloyIridium", 'R', "ringOsmiridium" }); // Shaft Extruder Shape @@ -65,7 +64,7 @@ public static void initRecipes() { .itemInputs( GTOreDictUnificator.get(OrePrefixes.ingot, Materials.EnergeticAlloy, 9), GregtechItemList.Shape_Extruder_WindmillShaft.get(0)) - .itemOutputs(IC2Items.shaft_Material_1.copy()) + .itemOutputs(GregtechItemList.EnergeticAlloyShaft.get(1)) .duration(2 * MINUTES + 8 * SECONDS) .eut(250) .addTo(extruderRecipes); @@ -73,7 +72,7 @@ public static void initRecipes() { .itemInputs( GTOreDictUnificator.get(OrePrefixes.block, Materials.EnergeticAlloy, 1), GregtechItemList.Shape_Extruder_WindmillShaft.get(0)) - .itemOutputs(IC2Items.shaft_Material_1.copy()) + .itemOutputs(GregtechItemList.EnergeticAlloyShaft.get(1)) .duration(2 * MINUTES + 8 * SECONDS) .eut(250) .addTo(extruderRecipes); @@ -82,7 +81,7 @@ public static void initRecipes() { .itemInputs( GTOreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 9), GregtechItemList.Shape_Extruder_WindmillShaft.get(0)) - .itemOutputs(IC2Items.shaft_Material_2.copy()) + .itemOutputs(GregtechItemList.TungstenSteelShaft.get(1)) .duration(4 * MINUTES + 16 * SECONDS) .eut(TierEU.RECIPE_HV) .addTo(extruderRecipes); @@ -90,7 +89,7 @@ public static void initRecipes() { .itemInputs( GTOreDictUnificator.get(OrePrefixes.block, Materials.TungstenSteel, 1), GregtechItemList.Shape_Extruder_WindmillShaft.get(0)) - .itemOutputs(IC2Items.shaft_Material_2.copy()) + .itemOutputs(GregtechItemList.TungstenSteelShaft.get(1)) .duration(4 * MINUTES + 16 * SECONDS) .eut(TierEU.RECIPE_HV) .addTo(extruderRecipes); @@ -99,7 +98,7 @@ public static void initRecipes() { .itemInputs( GTOreDictUnificator.get(OrePrefixes.ingot, Materials.VibrantAlloy, 9), GregtechItemList.Shape_Extruder_WindmillShaft.get(0)) - .itemOutputs(IC2Items.shaft_Material_3.copy()) + .itemOutputs(GregtechItemList.VibrantAlloyShaft.get(1)) .duration(8 * MINUTES + 32 * SECONDS) .eut(TierEU.RECIPE_EV) .addTo(extruderRecipes); @@ -107,7 +106,7 @@ public static void initRecipes() { .itemInputs( GTOreDictUnificator.get(OrePrefixes.block, Materials.VibrantAlloy, 1), GregtechItemList.Shape_Extruder_WindmillShaft.get(0)) - .itemOutputs(IC2Items.shaft_Material_3.copy()) + .itemOutputs(GregtechItemList.VibrantAlloyShaft.get(1)) .duration(8 * MINUTES + 32 * SECONDS) .eut(TierEU.RECIPE_EV) .addTo(extruderRecipes); @@ -116,7 +115,7 @@ public static void initRecipes() { .itemInputs( GTOreDictUnificator.get(OrePrefixes.ingot, Materials.Iridium, 9), GregtechItemList.Shape_Extruder_WindmillShaft.get(0)) - .itemOutputs(IC2Items.shaft_Material_4.copy()) + .itemOutputs(GregtechItemList.IridiumShaft.get(1)) .duration(17 * MINUTES + 4 * SECONDS) .eut(4000) .addTo(extruderRecipes); @@ -124,28 +123,28 @@ public static void initRecipes() { .itemInputs( GTOreDictUnificator.get(OrePrefixes.block, Materials.Iridium, 1), GregtechItemList.Shape_Extruder_WindmillShaft.get(0)) - .itemOutputs(IC2Items.shaft_Material_4.copy()) + .itemOutputs(GregtechItemList.IridiumShaft.get(1)) .duration(17 * MINUTES + 4 * SECONDS) .eut(4000) .addTo(extruderRecipes); // Gearbox Rotors GTModHandler.addCraftingRecipe( - IC2Items.rotor_Material_1.copy(), - new Object[] { "SBh", "BRB", "wBS", 'B', IC2Items.rotor_Blade_Material_1.copy(), 'R', "ringStainlessSteel", - 'S', IC2Items.shaft_Material_1.copy() }); + GregtechItemList.EnergeticAlloyRotor.get(1), + new Object[] { "SBh", "BRB", "wBS", 'B', GregtechItemList.EnergeticAlloyRotorBlade.get(1), 'R', + "ringStainlessSteel", 'S', GregtechItemList.EnergeticAlloyShaft.get(1) }); GTModHandler.addCraftingRecipe( - IC2Items.rotor_Material_2.copy(), - new Object[] { "SBh", "BRB", "wBS", 'B', IC2Items.rotor_Blade_Material_2.copy(), 'R', "ringTungstenSteel", - 'S', IC2Items.shaft_Material_2.copy() }); + GregtechItemList.TungstenSteelRotor.get(1), + new Object[] { "SBh", "BRB", "wBS", 'B', GregtechItemList.TungstenSteelRotorBlade.get(1), 'R', + "ringTungstenSteel", 'S', GregtechItemList.TungstenSteelShaft.get(1) }); GTModHandler.addCraftingRecipe( - IC2Items.rotor_Material_3.copy(), - new Object[] { "SBh", "BRB", "wBS", 'B', IC2Items.rotor_Blade_Material_3.copy(), 'R', "ringChrome", 'S', - IC2Items.shaft_Material_3.copy() }); + GregtechItemList.VibrantAlloyRotor.get(1), + new Object[] { "SBh", "BRB", "wBS", 'B', GregtechItemList.VibrantAlloyRotorBlade.get(1), 'R', "ringChrome", + 'S', GregtechItemList.VibrantAlloyShaft.get(1) }); GTModHandler.addCraftingRecipe( - IC2Items.rotor_Material_4.copy(), - new Object[] { "SBh", "BRB", "wBS", 'B', IC2Items.rotor_Blade_Material_4.copy(), 'R', "ringOsmiridium", 'S', - IC2Items.shaft_Material_4.copy() }); + GregtechItemList.IridiumRotor.get(1), + new Object[] { "SBh", "BRB", "wBS", 'B', GregtechItemList.IridiumRotorBlade.get(1), 'R', "ringOsmiridium", + 'S', GregtechItemList.IridiumShaft.get(1) }); } private static void addAdvancedHazmat() { diff --git a/src/main/java/gtPlusPlus/xmod/railcraft/HandlerRailcraft.java b/src/main/java/gtPlusPlus/xmod/railcraft/HandlerRailcraft.java index 57d847199cf..843e2d21a64 100644 --- a/src/main/java/gtPlusPlus/xmod/railcraft/HandlerRailcraft.java +++ b/src/main/java/gtPlusPlus/xmod/railcraft/HandlerRailcraft.java @@ -17,201 +17,187 @@ import gregtech.api.enums.GTValues; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.util.GTModHandler; import gregtech.api.util.GTOreDictUnificator; import gregtech.api.util.GTUtility; -import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.item.base.BaseItemBurnable; -import gtPlusPlus.core.util.minecraft.FluidUtils; -import gtPlusPlus.core.util.minecraft.ItemUtils; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; import gtPlusPlus.xmod.railcraft.utils.RailcraftUtils; public class HandlerRailcraft { public static void preInit() { - // Register Custom Coal Coke - ModItems.itemCoalCoke = new BaseItemBurnable( - "itemCoalCoke", - "Coking Coal", - tabMisc, - 64, - 0, - "Used for metallurgy.", - "fuelCoke", - 3200, - 0).setTextureName(GTPlusPlus.ID + ":burnables/itemCoalCoke"); - - // Add in things that once existed in 1.5.2 - ModItems.itemCactusCharcoal = new BaseItemBurnable( - "itemCactusCharcoal", - "Cactus Charcoal", - tabMisc, - 64, - 0, - "Used for smelting.", - "fuelCactusCharcoal", - 400, - 0).setTextureName(GTPlusPlus.ID + ":burnables/itemCactusCharcoal"); - ModItems.itemSugarCharcoal = new BaseItemBurnable( - "itemSugarCharcoal", - "Sugar Charcoal", - tabMisc, - 64, - 0, - "Used for smelting.", - "fuelSugarCharcoal", - 400, - 0).setTextureName(GTPlusPlus.ID + ":burnables/itemSugarCharcoal"); - ModItems.itemCactusCoke = new BaseItemBurnable( - "itemCactusCoke", - "Cactus Coke", - tabMisc, - 64, - 0, - "Used for smelting.", - "fuelCactusCoke", - 800, - 0).setTextureName(GTPlusPlus.ID + ":burnables/itemCactusCoke"); - ModItems.itemSugarCoke = new BaseItemBurnable( - "itemSugarCoke", - "Sugar Coke", - tabMisc, - 64, - 0, - "Used for smelting.", - "fuelSugarCoke", - 800, - 0).setTextureName(GTPlusPlus.ID + ":burnables/itemSugarCoke"); - - ItemUtils.addItemToOreDictionary(ItemUtils.getSimpleStack(ModItems.itemCactusCharcoal), "itemCharcoalCactus"); - ItemUtils.addItemToOreDictionary(ItemUtils.getSimpleStack(ModItems.itemCactusCoke), "itemCokeCactus"); - ItemUtils.addItemToOreDictionary(ItemUtils.getSimpleStack(ModItems.itemSugarCharcoal), "itemCharcoalSugar"); - ItemUtils.addItemToOreDictionary(ItemUtils.getSimpleStack(ModItems.itemSugarCoke), "itemCokeSugar"); + GregtechItemList.CustomCoalCoke.set( + new BaseItemBurnable( + "itemCoalCoke", + "Coking Coal", + tabMisc, + 64, + 0, + "Used for metallurgy.", + "fuelCoke", + 3200, + 0).setTextureName(GTPlusPlus.ID + ":burnables/itemCoalCoke")); + + GregtechItemList.CactusCharcoal.set( + new BaseItemBurnable( + "itemCactusCharcoal", + "Cactus Charcoal", + tabMisc, + 64, + 0, + "Used for smelting.", + "fuelCactusCharcoal", + 400, + 0).setTextureName(GTPlusPlus.ID + ":burnables/itemCactusCharcoal")); + + GregtechItemList.CactusCoke.set( + new BaseItemBurnable( + "itemSugarCharcoal", + "Sugar Charcoal", + tabMisc, + 64, + 0, + "Used for smelting.", + "fuelSugarCharcoal", + 400, + 0).setTextureName(GTPlusPlus.ID + ":burnables/itemSugarCharcoal")); + + GregtechItemList.SugarCharcoal.set( + new BaseItemBurnable( + "itemCactusCoke", + "Cactus Coke", + tabMisc, + 64, + 0, + "Used for smelting.", + "fuelCactusCoke", + 800, + 0).setTextureName(GTPlusPlus.ID + ":burnables/itemCactusCoke")); + + GregtechItemList.SugarCoke.set( + new BaseItemBurnable( + "itemSugarCoke", + "Sugar Coke", + tabMisc, + 64, + 0, + "Used for smelting.", + "fuelSugarCoke", + 800, + 0).setTextureName(GTPlusPlus.ID + ":burnables/itemSugarCoke")); + + GTOreDictUnificator.registerOre("itemCharcoalCactus", GregtechItemList.CactusCharcoal.get(1)); + GTOreDictUnificator.registerOre("itemCokeCactus", GregtechItemList.CactusCoke.get(1)); + GTOreDictUnificator.registerOre("itemCharcoalSugar", GregtechItemList.SugarCharcoal.get(1)); + GTOreDictUnificator.registerOre("itemCokeSugar", GregtechItemList.SugarCoke.get(1)); } public static void postInit() { - generateCokeOvenRecipes(); + addCokingRecipes( + new ItemStack(Blocks.cactus), + GregtechItemList.CactusCharcoal.get(1), + GregtechItemList.CactusCoke.get(1)); + addCokingRecipes( + new ItemStack(Items.reeds), + GregtechItemList.SugarCharcoal.get(1), + GregtechItemList.SugarCoke.get(1)); } - private static void generateCokeOvenRecipes() { - ItemStack[] aInputs1 = new ItemStack[] { ItemUtils.getSimpleStack(Blocks.cactus), - ItemUtils.getSimpleStack(Items.reeds) }; - ItemStack[] aInputs2 = new ItemStack[] { ItemUtils.getSimpleStack(ModItems.itemCactusCharcoal), - ItemUtils.getSimpleStack(ModItems.itemSugarCharcoal) }; - ItemStack[] aOutputs = new ItemStack[] { ItemUtils.getSimpleStack(ModItems.itemCactusCoke), - ItemUtils.getSimpleStack(ModItems.itemSugarCoke) }; - for (int i = 0; i < aOutputs.length; i++) { - // Recipes for the Charcoals and Cokes, outputting either Creosote or Charcoal Byproducts depending on the - // fluid input - GTValues.RA.stdBuilder() - .itemInputs(aInputs1[i], GTUtility.getIntegratedCircuit(3)) - .itemOutputs(aInputs2[i]) - .fluidOutputs(FluidUtils.getFluidStack("creosote", 100)) - .eut(16) - .duration(1 * SECONDS) - .addTo(cokeOvenRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(aInputs1[i], GTUtility.getIntegratedCircuit(4)) - .itemOutputs(aInputs2[i]) - .fluidInputs(FluidUtils.getFluidStack("nitrogen", 100)) - .fluidOutputs(FluidUtils.getFluidStack("charcoal_byproducts", 200)) - .eut(16) - .duration(10 * TICKS) - .addTo(cokeOvenRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(aInputs2[i], GTUtility.getIntegratedCircuit(3)) - .itemOutputs(aOutputs[i]) - .fluidOutputs(FluidUtils.getFluidStack("creosote", 200)) - .eut(16) - .duration(2 * SECONDS) - .addTo(cokeOvenRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(aInputs2[i], GTUtility.getIntegratedCircuit(4)) - .itemOutputs(aOutputs[i]) - .fluidInputs(FluidUtils.getFluidStack("nitrogen", 50)) - .fluidOutputs(FluidUtils.getFluidStack("charcoal_byproducts", 100)) - .eut(16) - .duration(1 * SECONDS) - .addTo(cokeOvenRecipes); - - // Generate Wood Tar and Wood Gas from these Cokes - GTValues.RA.stdBuilder() - .itemInputs(aOutputs[i], GTUtility.getIntegratedCircuit(5)) - .itemOutputs(Materials.Ash.getDustSmall(1)) - .fluidInputs(FluidUtils.getFluidStack("steam", 100)) - .fluidOutputs(Materials.WoodTar.getFluid(200)) - .eut(240) - .duration(3 * SECONDS) - .addTo(cokeOvenRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(aOutputs[i], GTUtility.getIntegratedCircuit(6)) - .itemOutputs(Materials.Ash.getDustSmall(1)) - .fluidInputs(FluidUtils.getFluidStack("steam", 100)) - .fluidOutputs(Materials.WoodGas.getGas(300)) - .eut(240) - .duration(3 * SECONDS) - .addTo(cokeOvenRecipes); - - // Fluid Extracting the Charcoals for Wood Tar - GTValues.RA.stdBuilder() - .itemInputs(aInputs2[i]) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L)) - .outputChances(1000) - .fluidOutputs(Materials.WoodTar.getFluid(50L)) - .duration(1 * SECONDS + 10 * TICKS) - .eut(16) - .addTo(fluidExtractionRecipes); - - // Processing the Charcoals with Oxygen to get CO and CO2 - // C + O = CO - GTValues.RA.stdBuilder() - .itemInputs(aInputs2[i], GTUtility.getIntegratedCircuit(1)) - .itemOutputs(Materials.Ash.getDustTiny(1)) - .fluidInputs(Materials.Oxygen.getGas(500)) - .fluidOutputs(Materials.CarbonMonoxide.getGas(500)) - .duration(4 * SECONDS) - .eut(8) - .addTo(UniversalChemical); - // C + 2O = CO2 - GTValues.RA.stdBuilder() - .itemInputs(aInputs2[i], GTUtility.getIntegratedCircuit(2)) - .itemOutputs(Materials.Ash.getDustTiny(1)) - .fluidInputs(Materials.Oxygen.getGas(2000)) - .fluidOutputs(Materials.CarbonDioxide.getGas(1000)) - .duration(2 * SECONDS) - .eut(8) - .addTo(UniversalChemical); - } + private static void addCokingRecipes(ItemStack plant, ItemStack charcoal, ItemStack coke) { + // Recipes for the Charcoals and Cokes, outputting either Creosote or Charcoal Byproducts depending on the + // fluid input + GTValues.RA.stdBuilder() + .itemInputs(plant, GTUtility.getIntegratedCircuit(3)) + .itemOutputs(charcoal) + .fluidOutputs(Materials.Creosote.getFluid(100)) + .eut(16) + .duration(1 * SECONDS) + .addTo(cokeOvenRecipes); + + GTValues.RA.stdBuilder() + .itemInputs(plant, GTUtility.getIntegratedCircuit(4)) + .itemOutputs(charcoal) + .fluidInputs(Materials.Nitrogen.getGas(100)) + .fluidOutputs(Materials.CharcoalByproducts.getGas(200)) + .eut(16) + .duration(10 * TICKS) + .addTo(cokeOvenRecipes); + + GTValues.RA.stdBuilder() + .itemInputs(charcoal, GTUtility.getIntegratedCircuit(3)) + .itemOutputs(coke) + .fluidOutputs(Materials.Creosote.getFluid(200)) + .eut(16) + .duration(2 * SECONDS) + .addTo(cokeOvenRecipes); + + GTValues.RA.stdBuilder() + .itemInputs(charcoal, GTUtility.getIntegratedCircuit(4)) + .itemOutputs(coke) + .fluidInputs(Materials.Nitrogen.getGas(50)) + .fluidOutputs(Materials.CharcoalByproducts.getGas(100)) + .eut(16) + .duration(1 * SECONDS) + .addTo(cokeOvenRecipes); + + // Generate Wood Tar and Wood Gas from these Cokes + GTValues.RA.stdBuilder() + .itemInputs(coke, GTUtility.getIntegratedCircuit(5)) + .itemOutputs(Materials.Ash.getDustSmall(1)) + .fluidInputs(GTModHandler.getSteam(100)) + .fluidOutputs(Materials.WoodTar.getFluid(200)) + .eut(240) + .duration(3 * SECONDS) + .addTo(cokeOvenRecipes); + + GTValues.RA.stdBuilder() + .itemInputs(coke, GTUtility.getIntegratedCircuit(6)) + .itemOutputs(Materials.Ash.getDustSmall(1)) + .fluidInputs(GTModHandler.getSteam(100)) + .fluidOutputs(Materials.WoodGas.getGas(300)) + .eut(240) + .duration(3 * SECONDS) + .addTo(cokeOvenRecipes); + + // Fluid Extracting the Charcoals for Wood Tar + GTValues.RA.stdBuilder() + .itemInputs(charcoal) + .itemOutputs(GTOreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L)) + .outputChances(1000) + .fluidOutputs(Materials.WoodTar.getFluid(50L)) + .duration(1 * SECONDS + 10 * TICKS) + .eut(16) + .addTo(fluidExtractionRecipes); + + // Processing the Charcoals with Oxygen to get CO and CO2 + // C + O = CO + GTValues.RA.stdBuilder() + .itemInputs(charcoal, GTUtility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ash.getDustTiny(1)) + .fluidInputs(Materials.Oxygen.getGas(500)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(500)) + .duration(4 * SECONDS) + .eut(8) + .addTo(UniversalChemical); + + // C + 2O = CO2 + GTValues.RA.stdBuilder() + .itemInputs(charcoal, GTUtility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Ash.getDustTiny(1)) + .fluidInputs(Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)) + .duration(2 * SECONDS) + .eut(8) + .addTo(UniversalChemical); + if (Railcraft.isModLoaded()) { - for (int i = 0; i < aOutputs.length; i++) { - RailcraftUtils.addCokeOvenRecipe( - aInputs1[i], - true, - true, - aInputs2[i], - FluidUtils.getFluidStack("creosote", 30), - 500); - } - for (int i = 0; i < aOutputs.length; i++) { - RailcraftUtils.addCokeOvenRecipe( - aInputs2[i], - true, - true, - aOutputs[i], - FluidUtils.getFluidStack("creosote", 30), - 500); - } + RailcraftUtils.addCokeOvenRecipe(plant, true, true, charcoal, Materials.Creosote.getFluid(30), 500); + RailcraftUtils.addCokeOvenRecipe(charcoal, true, true, coke, Materials.Creosote.getFluid(30), 500); if (NewHorizonsCoreMod.isModLoaded()) { - for (int i = 0; i < aOutputs.length; i++) { - RailcraftUtils.addAdvancedCokeOvenRecipe(aInputs1[i], true, true, aInputs2[i], 20); - } - for (int i = 0; i < aOutputs.length; i++) { - RailcraftUtils.addAdvancedCokeOvenRecipe(aInputs2[i], true, true, aOutputs[i], 20); - } + RailcraftUtils.addAdvancedCokeOvenRecipe(plant, true, true, charcoal, 20); + RailcraftUtils.addAdvancedCokeOvenRecipe(charcoal, true, true, coke, 20); } } }