From 92b359cbee7aeca68bf4fa2a1c9530e777f6ed11 Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Fri, 17 Jun 2016 16:55:21 +1000 Subject: ~Changed the way compatability is handled. ~Recipe Handler now works in two segments, loading recipes as normal during Init and then from a queue during postInit. ~Queue should be populated throughout the mods init/preInit phases, so that they're not removed during recipe removal. ~Made more changes to the NFHG, not sure if I broke it more or not.. but it works, kinda. --- src/Java/miscutil/MiscUtils.java | 37 +- src/Java/miscutil/core/common/CommonProxy.java | 90 ++-- .../common/compat/COMPAT_CompactWindmills.java | 161 +++++++- .../core/common/compat/COMPAT_HANDLER.java | 61 ++- .../miscutil/core/common/compat/COMPAT_IC2.java | 35 +- src/Java/miscutil/core/gui/machine/GUI_NHG.java | 1 + .../registration/LateRegistrationHandler.java | 28 ++ .../handler/registration/RECIPES_GREGTECH.java | 85 ---- .../handler/registration/RECIPES_MTWRAPPER.java | 113 ----- .../handler/registration/RECIPES_Machines.java | 458 --------------------- .../handler/registration/RECIPES_Shapeless.java | 41 -- .../core/handler/registration/RECIPES_Tools.java | 176 -------- .../handler/registration/RegistrationHandler.java | 14 +- .../core/item/general/fuelrods/FuelRod_Base.java | 4 +- src/Java/miscutil/core/lib/LoadedMods.java | 10 + .../miscutil/core/tileentities/TileEntityNHG.java | 352 +++++++++------- src/Java/miscutil/core/util/Utils.java | 16 + src/Java/miscutil/core/util/UtilsItems.java | 40 +- .../core/util/recipe/RECIPES_GREGTECH.java | 85 ++++ .../core/util/recipe/RECIPES_MTWRAPPER.java | 113 +++++ .../core/util/recipe/RECIPES_Machines.java | 458 +++++++++++++++++++++ .../core/util/recipe/RECIPES_Shapeless.java | 41 ++ .../miscutil/core/util/recipe/RECIPES_Tools.java | 176 ++++++++ .../core/util/recipe/ShapedRecipeObject.java | 43 ++ 24 files changed, 1476 insertions(+), 1162 deletions(-) create mode 100644 src/Java/miscutil/core/handler/registration/LateRegistrationHandler.java delete mode 100644 src/Java/miscutil/core/handler/registration/RECIPES_GREGTECH.java delete mode 100644 src/Java/miscutil/core/handler/registration/RECIPES_MTWRAPPER.java delete mode 100644 src/Java/miscutil/core/handler/registration/RECIPES_Machines.java delete mode 100644 src/Java/miscutil/core/handler/registration/RECIPES_Shapeless.java delete mode 100644 src/Java/miscutil/core/handler/registration/RECIPES_Tools.java create mode 100644 src/Java/miscutil/core/util/recipe/RECIPES_GREGTECH.java create mode 100644 src/Java/miscutil/core/util/recipe/RECIPES_MTWRAPPER.java create mode 100644 src/Java/miscutil/core/util/recipe/RECIPES_Machines.java create mode 100644 src/Java/miscutil/core/util/recipe/RECIPES_Shapeless.java create mode 100644 src/Java/miscutil/core/util/recipe/RECIPES_Tools.java create mode 100644 src/Java/miscutil/core/util/recipe/ShapedRecipeObject.java diff --git a/src/Java/miscutil/MiscUtils.java b/src/Java/miscutil/MiscUtils.java index 2ddd6bf8cb..46ed16be36 100644 --- a/src/Java/miscutil/MiscUtils.java +++ b/src/Java/miscutil/MiscUtils.java @@ -5,15 +5,7 @@ import java.awt.event.ActionListener; import miscutil.core.commands.CommandMath; import miscutil.core.common.CommonProxy; -import miscutil.core.common.compat.COMPAT_HANDLER; -import miscutil.core.creative.AddToCreativeTab; -import miscutil.core.handler.events.PickaxeBlockBreakEventHandler; import miscutil.core.lib.CORE; -import miscutil.core.lib.LoadedMods; -import miscutil.core.util.PlayerCache; -import miscutil.core.util.Utils; -import miscutil.core.util.debug.DEBUG_INIT; -import miscutil.gregtech.common.GregtechRecipeAdder; import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Mod; @@ -25,7 +17,7 @@ import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.event.FMLServerStartingEvent; import cpw.mods.fml.common.event.FMLServerStoppingEvent; -@Mod(modid=CORE.MODID, name="Misc. Utils", version=CORE.VERSION, dependencies="required-after:gregtech;") +@Mod(modid=CORE.MODID, name="Misc. Utils", version=CORE.VERSION, dependencies="required-after:Forge; after:IC2; after:gregtech; after:Railcraft; after:CompactWindmills; after:ForbiddenMagic; after:MorePlanet; after:PneumaticCraft; after:ExtraUtilities; after:Thaumcraft; after:rftools; after:simplyjetpacks; after:BigReactors; after:EnderIO;") public class MiscUtils implements ActionListener { @@ -41,18 +33,6 @@ implements ActionListener @Mod.EventHandler public void preInit(FMLPreInitializationEvent event) { - LoadedMods.checkLoaded(); - Utils.LOG_INFO("Doing some house cleaning."); - - if (LoadedMods.Gregtech){ - try { - CORE.sRecipeAdder = CORE.RA = new GregtechRecipeAdder(); - } catch (NullPointerException e){ - - } - } - - AddToCreativeTab.initialiseTabs(); proxy.registerTileEntities(); proxy.registerRenderThings(); proxy.preInit(event); @@ -62,13 +42,8 @@ implements ActionListener @Mod.EventHandler public void init(FMLInitializationEvent event) { - proxy.init(event); + proxy.init(event); MinecraftForge.EVENT_BUS.register(this); - MinecraftForge.EVENT_BUS.register(new PickaxeBlockBreakEventHandler()); - //Debug Loading - if (CORE.DEBUG){ - DEBUG_INIT.registerHandlers(); - } FMLCommonHandler.instance().bus().register(this); proxy.registerNetworkStuff(); } @@ -76,13 +51,9 @@ implements ActionListener //Post-Init @Mod.EventHandler public void postInit(FMLPostInitializationEvent event) { - Utils.LOG_INFO("Cleaning up, doing postInit."); - COMPAT_HANDLER.ServerStartedEvent(); - PlayerCache.initCache(); - proxy.postInit(event); - + proxy.postInit(event); } - + @EventHandler public void serverStarting(FMLServerStartingEvent event) { diff --git a/src/Java/miscutil/core/common/CommonProxy.java b/src/Java/miscutil/core/common/CommonProxy.java index 26c5775290..3ef3f87f77 100644 --- a/src/Java/miscutil/core/common/CommonProxy.java +++ b/src/Java/miscutil/core/common/CommonProxy.java @@ -2,20 +2,20 @@ package miscutil.core.common; import static miscutil.core.lib.CORE.DEBUG; import static miscutil.core.lib.LoadedMods.Gregtech; -import gregtech.api.util.GT_OreDictUnificator; import miscutil.core.block.ModBlocks; import miscutil.core.common.compat.COMPAT_HANDLER; +import miscutil.core.creative.AddToCreativeTab; import miscutil.core.gui.ModGUI; -import miscutil.core.handler.registration.RegistrationHandler; +import miscutil.core.handler.events.PickaxeBlockBreakEventHandler; import miscutil.core.item.ModItems; import miscutil.core.lib.CORE; +import miscutil.core.lib.LoadedMods; import miscutil.core.tileentities.ModTileEntities; +import miscutil.core.util.PlayerCache; import miscutil.core.util.Utils; -import miscutil.core.util.UtilsItems; +import miscutil.core.util.debug.DEBUG_INIT; import miscutil.gregtech.api.init.InitGregtech; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraftforge.oredict.OreDictionary; +import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; @@ -23,12 +23,8 @@ import cpw.mods.fml.common.event.FMLPreInitializationEvent; public class CommonProxy { public void preInit(FMLPreInitializationEvent e) { - /* - * - * CORE.DEBUG Parameters area - * - */ - //Logs + Utils.LOG_INFO("Doing some house cleaning."); + Utils.LOG_INFO("Making sure we're ready to party!"); if (!DEBUG){ Utils.LOG_WARNING("Development mode not enabled."); } @@ -38,48 +34,44 @@ public class CommonProxy { else { Utils.LOG_WARNING("Development mode not set."); } - /* - * End CORE.DEBUG - */ + ModItems.init(); ModBlocks.init(); - - /** - * Enable Dev mode related content - */ - if (CORE.DEBUG){ - //InitEnderIO.run(); - } - - //Register Gregtech related items if (Gregtech) { Utils.LOG_INFO("Gregtech Found - Loading Resources."); - //Utils.LOG_INFO("Begining initialization of Gregtech related content."); - // Init Gregtech InitGregtech.run(); - } else { Utils.LOG_WARNING("Gregtech not Found - Skipping Resources."); } - + LoadedMods.checkLoaded(); + AddToCreativeTab.initialiseTabs(); } public void init(FMLInitializationEvent e) { - - RegistrationHandler.run(); - + //Debug Loading + if (CORE.DEBUG){ + DEBUG_INIT.registerHandlers(); + } + MinecraftForge.EVENT_BUS.register(new PickaxeBlockBreakEventHandler()); + + //Compat Handling + COMPAT_HANDLER.InitialiseHandlerThenAddRecipes(); + COMPAT_HANDLER.registerMyModsOreDictEntries(); + COMPAT_HANDLER.intermodOreDictionarySupport(); } public void postInit(FMLPostInitializationEvent e) { - registerOreDict(); - COMPAT_HANDLER.loadGregAPIRecipes(); + Utils.LOG_INFO("Cleaning up, doing postInit."); + PlayerCache.initCache(); + //Compat Handling + COMPAT_HANDLER.RemoveRecipesFromOtherMods(); + COMPAT_HANDLER.InitialiseLateHandlerThenAddRecipes(); + COMPAT_HANDLER.startLoadingGregAPIBasedRecipes(); } public void registerNetworkStuff(){ ModGUI.init(); - //NetworkRegistry.INSTANCE.registerGuiHandler(MiscUtils.instance, new BloodSteelFurnaceGuiHandler()); - } public void registerTileEntities(){ @@ -90,34 +82,6 @@ public class CommonProxy { } - @SuppressWarnings("static-method") - private void registerOreDict(){ - - Utils.LOG_INFO("Registering Materials with OreDict."); - //In-house - - //tools - GT_OreDictUnificator.registerOre("craftingToolSandHammer", new ItemStack(ModItems.itemSandstoneHammer)); - GT_OreDictUnificator.registerOre("ingotBloodSteel", new ItemStack(ModItems.itemIngotBloodSteel)); - GT_OreDictUnificator.registerOre("ingotStaballoy", new ItemStack(ModItems.itemIngotStaballoy)); - - //Plates - GT_OreDictUnificator.registerOre("plateBloodSteel", new ItemStack(ModItems.itemPlateBloodSteel)); - GT_OreDictUnificator.registerOre("plateStaballoy", new ItemStack(ModItems.itemPlateStaballoy)); - - //Blocks - GT_OreDictUnificator.registerOre("blockStaballoy", new ItemStack(Item.getItemFromBlock(ModBlocks.blockStaballoy))); - OreDictionary.registerOre("blockBloodSteel", new ItemStack(ModBlocks.blockBloodSteel)); - - - for(int i=1; i<=10; i++){ - GT_OreDictUnificator.registerOre("bufferCore_"+CORE.VOLTAGES[i-1], new ItemStack(UtilsItems.getItem("miscutils:item.itemBufferCore"+i))); - } - - //Do Inter-Mod Compatibility - COMPAT_HANDLER.run(); - } - @SuppressWarnings("static-method") public int addArmor(String armor) { return 0; diff --git a/src/Java/miscutil/core/common/compat/COMPAT_CompactWindmills.java b/src/Java/miscutil/core/common/compat/COMPAT_CompactWindmills.java index 98988f25c0..bf4de21aca 100644 --- a/src/Java/miscutil/core/common/compat/COMPAT_CompactWindmills.java +++ b/src/Java/miscutil/core/common/compat/COMPAT_CompactWindmills.java @@ -1,20 +1,171 @@ package miscutil.core.common.compat; +import static miscutil.core.common.compat.COMPAT_HANDLER.AddRecipeQueue; import static miscutil.core.common.compat.COMPAT_HANDLER.RemoveRecipeQueue; +import miscutil.core.util.UtilsItems; +import miscutil.core.util.recipe.ShapedRecipeObject; +import net.minecraft.item.ItemStack; public class COMPAT_CompactWindmills { + //Change IC2 Upgrades + public static ItemStack kineticWind = UtilsItems.getItemStack("IC2:blockKineticGenerator", 1); + public static ItemStack shaftIron = UtilsItems.getItemStack("IC2:itemRecipePart:11", 1); + public static ItemStack cableCopper = UtilsItems.getItemStack("gregtech:gt.blockmachines:1367", 1); + public static String plateRubber ="ore:plateRubber"; + + //Machine Casings + public static ItemStack elvCasing = UtilsItems.getItemStack("gregtech:gt.blockcasings", 1); + public static ItemStack lvCasing = UtilsItems.getItemStack("gregtech:gt.blockcasings:1", 1); + public static ItemStack mvCasing = UtilsItems.getItemStack("gregtech:gt.blockcasings:2", 1); + public static ItemStack hvCasing = UtilsItems.getItemStack("gregtech:gt.blockcasings:3", 1); + public static ItemStack evCasing = UtilsItems.getItemStack("gregtech:gt.blockcasings:4", 1); + public static ItemStack ivCasing = UtilsItems.getItemStack("gregtech:gt.blockcasings:5", 1); + + //GT Transformers + public static ItemStack elvTransformer = UtilsItems.getItemStack("gregtech:gt.blockmachines:20", 1); + public static ItemStack lvTransformer = UtilsItems.getItemStack("gregtech:gt.blockmachines:21", 1); + public static ItemStack mvTransformer = UtilsItems.getItemStack("gregtech:gt.blockmachines:22", 1); + public static ItemStack hvTransformer = UtilsItems.getItemStack("gregtech:gt.blockmachines:23", 1); + public static ItemStack evTransformer = UtilsItems.getItemStack("gregtech:gt.blockmachines:24", 1); + + //Compact Windmills + public static ItemStack elvWindmill = UtilsItems.getItemStack("CompactWindmills:blockCompactWindmill", 1); + public static ItemStack lvWindmill = UtilsItems.getItemStack("CompactWindmills:blockCompactWindmill:1", 1); + public static ItemStack mvWindmill = UtilsItems.getItemStack("CompactWindmills:blockCompactWindmill:2", 1); + public static ItemStack hvWindmill = UtilsItems.getItemStack("CompactWindmills:blockCompactWindmill:3", 1); + public static ItemStack evWindmill = UtilsItems.getItemStack("CompactWindmills:blockCompactWindmill:4", 1); + + //Compact Rotors + public static ItemStack rotor2 = UtilsItems.getItemStack("CompactWindmills:WOOL", 1); + public static ItemStack rotor1 = UtilsItems.getItemStack("CompactWindmills:WOOD", 1); + public static ItemStack rotor3 = UtilsItems.getItemStack("CompactWindmills:ALLOY", 1); + public static ItemStack rotor4 = UtilsItems.getItemStack("CompactWindmills:CARBON", 1); + public static ItemStack rotor5 = UtilsItems.getItemStack("CompactWindmills:IRIDIUM", 1); + + //IC2 Rotors + public static ItemStack rotorIC1 = UtilsItems.getItemStack("IC2:itemwoodrotor", 1); + public static ItemStack rotorIC2 = UtilsItems.getItemStack("IC2:itemironrotor", 1); + public static ItemStack rotorIC3 = UtilsItems.getItemStack("IC2:itemsteelrotor", 1); + public static ItemStack rotorIC4 = UtilsItems.getItemStack("IC2:itemwcarbonrotor", 1); + public static ItemStack rotorBlade1 = UtilsItems.getItemStack("IC2:itemRecipePart:7", 1); + public static ItemStack rotorBlade2 = UtilsItems.getItemStack("IC2:itemRecipePart:8", 1); + public static ItemStack rotorBlade3 = UtilsItems.getItemStack("IC2:itemRecipePart:10", 1); + public static ItemStack rotorBlade4 = UtilsItems.getItemStack("IC2:itemRecipePart:9", 1); + + //Plates + public static String plateTier1 = "ore:plateMagnalium"; + public static String plateTier2 = "ore:plateStainlessSteel"; + public static String plateTier3 = "ore:plateTitanium"; + public static String plateTier4 = "ore:plateTungstenSteel"; + public static String plateTier5 = "ore:plateNichrome"; + public static String plateCarbon = "ore:plateAlloyCarbon"; + public static String plateAlloy = "ore:plateAlloyAdvanced"; + + //Circuits + public static String circuitTier1 = "ore:circuitGood"; + public static String circuitTier2 = "ore:circuitAdvanced"; + public static String circuitTier3 = "ore:circuitData"; + public static String circuitTier4 = "ore:circuitElite"; + public static String circuitTier5 = "ore:circuitMaster"; + + //Wooden Rotor + public static ShapedRecipeObject Wooden_Rotor = new ShapedRecipeObject( + rotorBlade1, "ore:plateAnyIron", "ore:plateAnyIron", + "ore:screwAluminium", rotorIC1, "ore:screwAluminium", + rotorBlade1, "plateAnyIron", rotorBlade1, + rotor1); + //Alloy Rotor + public static ShapedRecipeObject Alloy_Rotor = new ShapedRecipeObject( + plateAlloy, plateAlloy, plateAlloy, + plateAlloy, rotorIC3, plateAlloy, + plateAlloy,plateAlloy, plateAlloy, + rotor3); + //Carbon Rotor + public static ShapedRecipeObject Carbon_Rotor = new ShapedRecipeObject( + plateCarbon, rotorBlade4, plateCarbon, + rotorBlade4, rotor3, rotorBlade4, + plateCarbon, rotorBlade4, plateCarbon, + rotor4); + + //Kinetic Wind Turbine + public static ShapedRecipeObject KWT = new ShapedRecipeObject( + plateCarbon, shaftIron, plateCarbon, + cableCopper, mvCasing, cableCopper, + plateRubber, plateCarbon, plateRubber, + kineticWind); + + //ELV Windmill + public static ShapedRecipeObject WM_ELV = new ShapedRecipeObject( + + circuitTier1, elvTransformer, circuitTier1, + plateTier1, lvCasing, plateTier1, + plateTier1, rotor1, plateTier1, + elvWindmill); + + + //LV Windmill + public static ShapedRecipeObject WM_LV = new ShapedRecipeObject( + circuitTier2, lvTransformer, circuitTier2, + plateTier2, mvCasing, plateTier2, + plateTier2, rotor2, plateTier2, + lvWindmill); + + //MV Windmill + public static ShapedRecipeObject WM_MV = new ShapedRecipeObject( + circuitTier3, mvTransformer, circuitTier3, + plateTier3, hvCasing, plateTier3, + plateTier3, rotor3, plateTier3, + mvWindmill); + + //HV Windmill + public static ShapedRecipeObject WM_HV = new ShapedRecipeObject( + circuitTier4, hvTransformer, circuitTier4, + plateTier4, evCasing, plateTier4, + plateTier4, rotor4, plateTier4, + hvWindmill); + + //EV Windmill + public static ShapedRecipeObject WM_EV = new ShapedRecipeObject( + circuitTier5, evTransformer, circuitTier5, + plateTier5, ivCasing, plateTier5, + plateTier5, rotor5, plateTier5, + evWindmill); + public static void OreDict(){ run(); } private static final void run(){ - RemoveRecipeQueue.add("CompactWindmills:WOOL"); - RemoveRecipeQueue.add("CompactWindmills:WOOD"); - RemoveRecipeQueue.add("CompactWindmills:ALLOY"); - RemoveRecipeQueue.add("CompactWindmills:CARBON"); - RemoveRecipeQueue.add("CompactWindmills:IRIDIUM"); + //RemoveRecipeQueue.add("CompactWindmills:WOOL"); + //RemoveRecipeQueue.add("CompactWindmills:WOOD"); + //RemoveRecipeQueue.add("CompactWindmills:ALLOY"); + //RemoveRecipeQueue.add("CompactWindmills:CARBON"); + //RemoveRecipeQueue.add("CompactWindmills:IRIDIUM"); + + //Remove Recipes + RemoveRecipeQueue.add(kineticWind); + RemoveRecipeQueue.add(elvWindmill); + RemoveRecipeQueue.add(lvWindmill); + RemoveRecipeQueue.add(mvWindmill); + RemoveRecipeQueue.add(hvWindmill); + RemoveRecipeQueue.add(evWindmill); + RemoveRecipeQueue.add(rotor1); + RemoveRecipeQueue.add(rotor3); + RemoveRecipeQueue.add(rotor4); + + //Add Recipes + AddRecipeQueue.add(Wooden_Rotor); + AddRecipeQueue.add(Alloy_Rotor); + AddRecipeQueue.add(Carbon_Rotor); + AddRecipeQueue.add(KWT); + AddRecipeQueue.add(WM_ELV); + AddRecipeQueue.add(WM_LV); + AddRecipeQueue.add(WM_MV); + AddRecipeQueue.add(WM_HV); + AddRecipeQueue.add(WM_EV); + } } diff --git a/src/Java/miscutil/core/common/compat/COMPAT_HANDLER.java b/src/Java/miscutil/core/common/compat/COMPAT_HANDLER.java index ee2ba9e230..7cac0bcef2 100644 --- a/src/Java/miscutil/core/common/compat/COMPAT_HANDLER.java +++ b/src/Java/miscutil/core/common/compat/COMPAT_HANDLER.java @@ -1,20 +1,59 @@ package miscutil.core.common.compat; import static miscutil.core.util.UtilsItems.removeCraftingRecipe; +import gregtech.api.util.GT_OreDictUnificator; import java.util.LinkedList; import java.util.Queue; -import miscutil.core.handler.registration.RECIPES_GREGTECH; +import miscutil.core.block.ModBlocks; +import miscutil.core.handler.registration.LateRegistrationHandler; +import miscutil.core.handler.registration.RegistrationHandler; +import miscutil.core.item.ModItems; +import miscutil.core.lib.CORE; import miscutil.core.lib.LoadedMods; +import miscutil.core.util.Utils; +import miscutil.core.util.UtilsItems; +import miscutil.core.util.recipe.RECIPES_GREGTECH; +import miscutil.core.util.recipe.ShapedRecipeObject; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraftforge.oredict.OreDictionary; public class COMPAT_HANDLER { public static Queue RemoveRecipeQueue = new LinkedList(); - public static Queue AddRecipeQueue = new LinkedList(); + public static Queue AddRecipeQueue = new LinkedList(); + public static Boolean areInitItemsLoaded = false; + + + public static void registerMyModsOreDictEntries(){ + + Utils.LOG_INFO("Registering Materials with OreDict."); + //In-house + + //tools + GT_OreDictUnificator.registerOre("craftingToolSandHammer", new ItemStack(ModItems.itemSandstoneHammer)); + GT_OreDictUnificator.registerOre("ingotBloodSteel", new ItemStack(ModItems.itemIngotBloodSteel)); + GT_OreDictUnificator.registerOre("ingotStaballoy", new ItemStack(ModItems.itemIngotStaballoy)); + + //Plates + GT_OreDictUnificator.registerOre("plateBloodSteel", new ItemStack(ModItems.itemPlateBloodSteel)); + GT_OreDictUnificator.registerOre("plateStaballoy", new ItemStack(ModItems.itemPlateStaballoy)); + + //Blocks + GT_OreDictUnificator.registerOre("blockStaballoy", new ItemStack(Item.getItemFromBlock(ModBlocks.blockStaballoy))); + OreDictionary.registerOre("blockBloodSteel", new ItemStack(ModBlocks.blockBloodSteel)); + + + for(int i=1; i<=10; i++){ + GT_OreDictUnificator.registerOre("bufferCore_"+CORE.VOLTAGES[i-1], new ItemStack(UtilsItems.getItem("miscutils:item.itemBufferCore"+i))); + } + } + //InterMod - public static void run(){ + public static void intermodOreDictionarySupport(){ if (LoadedMods.Big_Reactors){ COMPAT_BigReactors.OreDict(); @@ -48,21 +87,21 @@ public class COMPAT_HANDLER { } } - public static void ServerStartedEvent(){ + public static void RemoveRecipesFromOtherMods(){ //Removal of Recipes for(Object item : RemoveRecipeQueue){ removeCraftingRecipe(item); - } + } } - public static void ServerStartedEvent_RECIPES(){ - //Remoal Recipes - for(Object item : AddRecipeQueue){ - removeCraftingRecipe(item); - } + public static void InitialiseHandlerThenAddRecipes(){ + RegistrationHandler.run(); + } + public static void InitialiseLateHandlerThenAddRecipes(){ + LateRegistrationHandler.run(); } - public static void loadGregAPIRecipes(){ + public static void startLoadingGregAPIBasedRecipes(){ RECIPES_GREGTECH.run(); } } diff --git a/src/Java/miscutil/core/common/compat/COMPAT_IC2.java b/src/Java/miscutil/core/common/compat/COMPAT_IC2.java index 50daca16ce..fe6d516fb2 100644 --- a/src/Java/miscutil/core/common/compat/COMPAT_IC2.java +++ b/src/Java/miscutil/core/common/compat/COMPAT_IC2.java @@ -1,24 +1,37 @@ package miscutil.core.common.compat; + +import static miscutil.core.common.compat.COMPAT_HANDLER.AddRecipeQueue; import static miscutil.core.common.compat.COMPAT_HANDLER.RemoveRecipeQueue; import miscutil.core.util.UtilsItems; +import miscutil.core.util.recipe.ShapedRecipeObject; import net.minecraft.item.ItemStack; public class COMPAT_IC2 { - private static ItemStack temp_1; - private static ItemStack temp_2; + private static ItemStack itemCropnalyzer = UtilsItems.getItemStack("IC2:itemCropnalyzer", 1); + private static ItemStack itemSolarHelmet = UtilsItems.getItemStack("IC2:itemSolarHelmet", 1); private static ItemStack temp_3; private static ItemStack temp_4; private static ItemStack temp_5; + public static ShapedRecipeObject Cropnalyzer = new ShapedRecipeObject( + "ore:cableGt02Copper", "ore:cableGt02Copper", null, + "minecraft:redstone", "ore:blockGlass", "minecraft:redstone", + "minecraft:redstone", "ore:circuitBasic", "minecraft:redstone", + itemCropnalyzer); + public static ShapedRecipeObject SolarHelmet = new ShapedRecipeObject( + "ore:plateIron", "ore:plateIron", "ore:plateIron", + "ore:plateIron", "gregtech:gt.metaitem.01:32750", "ore:plateIron", + "ore:craftingWireCopper", "ore:craftingWireCopper", "ore:craftingWireCopper", + itemSolarHelmet); public static void OreDict(){ //Get ItemStacks for results - temp_1 = UtilsItems.getItemStack("IC2:itemCropnalyzer", 1); - temp_2 = UtilsItems.getItemStack("IC2:itemSolarHelmet", 1); + /*itemCropnalyzer = UtilsItems.getItemStack("IC2:itemCropnalyzer", 1); + itemSolarHelmet = UtilsItems.getItemStack("IC2:itemSolarHelmet", 1); */ run(); } @@ -32,17 +45,11 @@ public class COMPAT_IC2 { RemoveRecipeQueue.add("IC2:itemCable:6"); RemoveRecipeQueue.add("IC2:itemCable:10"); RemoveRecipeQueue.add("IC2:itemCable:13"); + RemoveRecipeQueue.add(itemCropnalyzer); + RemoveRecipeQueue.add(itemSolarHelmet); - RemoveRecipeQueue.add(temp_1); - UtilsItems.recipeBuilder("ore:craftingWireCopper", "ore:craftingWireCopper", null, - "minecraft:redstone", "minecraft:glass", "minecraft:redstone", - "minecraft:redstone", "ore:circuitBasic", "minecraft:redstone", - temp_1); - RemoveRecipeQueue.add(temp_2); - UtilsItems.recipeBuilder("ore:plateIron", "ore:plateIron", "ore:plateIron", - "ore:plateIron", "gregtech:gt.metaitem.01:32750", "ore:plateIron", - "ore:craftingWireCopper", "ore:craftingWireCopper", "ore:craftingWireCopper", - temp_2); + AddRecipeQueue.add(Cropnalyzer); + AddRecipeQueue.add(SolarHelmet); } } diff --git a/src/Java/miscutil/core/gui/machine/GUI_NHG.java b/src/Java/miscutil/core/gui/machine/GUI_NHG.java index 632e9e29ac..b536157a49 100644 --- a/src/Java/miscutil/core/gui/machine/GUI_NHG.java +++ b/src/Java/miscutil/core/gui/machine/GUI_NHG.java @@ -45,5 +45,6 @@ public class GUI_NHG extends GuiContainer fontRendererObj.drawString(I18n.format(te.getInventoryName()), (xSize / 2) - (fontRendererObj.getStringWidth(I18n.format(te.getInventoryName())) / 2), 6, 4210752, false); //fontRendererObj.drawString(I18n.format(inventory.getInventoryName()), 8, ySize - 96 + 2, 4210752); fontRendererObj.drawString(I18n.format("CoreTemp:"+te.getCoreTemp()+"K"), 8, ySize - 96 + 2, 4210752); + fontRendererObj.drawString(I18n.format("Progress:"+te.getProgress()+"ticks"), 80, ySize - 96 + 2, 4210752); } } \ No newline at end of file diff --git a/src/Java/miscutil/core/handler/registration/LateRegistrationHandler.java b/src/Java/miscutil/core/handler/registration/LateRegistrationHandler.java new file mode 100644 index 0000000000..7c6396b338 --- /dev/null +++ b/src/Java/miscutil/core/handler/registration/LateRegistrationHandler.java @@ -0,0 +1,28 @@ +package miscutil.core.handler.registration; + +import miscutil.core.common.compat.COMPAT_HANDLER; +import miscutil.core.util.Utils; +import miscutil.core.util.recipe.ShapedRecipeObject; + +public class LateRegistrationHandler { + + public static int recipesSuccess = 0; + public static int recipesFailed = 0; + + public static void run(){ + init(); + } + + private final static void init(){ + for(ShapedRecipeObject item : COMPAT_HANDLER.AddRecipeQueue){ + item.buildRecipe(); + } + try { + Thread.sleep(10); + } catch (InterruptedException e) { + Utils.LOG_INFO(e.toString()); + } + Utils.LOG_INFO("Loaded: "+recipesSuccess+" Failed: "+recipesFailed); + } + +} diff --git a/src/Java/miscutil/core/handler/registration/RECIPES_GREGTECH.java b/src/Java/miscutil/core/handler/registration/RECIPES_GREGTECH.java deleted file mode 100644 index 75ea04e1e6..0000000000 --- a/src/Java/miscutil/core/handler/registration/RECIPES_GREGTECH.java +++ /dev/null @@ -1,85 +0,0 @@ -package miscutil.core.handler.registration; - -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.util.GT_OreDictUnificator; -import miscutil.core.lib.CORE; -import miscutil.core.util.Utils; -import miscutil.core.util.UtilsItems; - -public class RECIPES_GREGTECH { - - public static void run(){ - Utils.LOG_INFO("Loading Recipes through GregAPI for Industrial Multiblocks."); - execute(); - } - - private static void execute(){ - cokeOvenRecipes(); - assemblerRecipes(); - - } - - private static void cokeOvenRecipes(){ - Utils.LOG_INFO("Loading Recipes for Industrial Coking Oven."); - - try { - - //GT Logs to Charcoal Recipe - //With Sulfuric Acid - CORE.RA.addCokeOvenRecipe( - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 2L), //Input 1 - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), //Input 2 - Materials.SulfuricAcid.getFluid(20L), //Fluid Input - Materials.Creosote.getFluid(175L), //Fluid Output - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 2L), //Item Output - 800, //Time in ticks - 30); //EU - }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} - try { - - //Coal -> Coke Recipe - //With Sulfuric Acid - CORE.RA.addCokeOvenRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 2L), //Input 1 - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 1L), //Input 2 - Materials.SulfuricAcid.getFluid(60L), //Fluid Input - Materials.Creosote.getFluid(250L), //Fluid Output - UtilsItems.getItemStack("Railcraft:fuel.coke", 2), //Item Output - 600, //Time in ticks - 120); //EU - }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} - - try { - //GT Logs to Charcoal Recipe - //Without Sulfuric Acid - CORE.RA.addCokeOvenRecipe( - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 2L), //Input 1 - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), //Input 2 - Materials.SaltWater.getFluid(85L), //Fluid Input - Materials.Creosote.getFluid(145L), //Fluid Output - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 2L), //Item Output - 1200, //Time in ticks - 30); //EU - }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} - - try { - //Coal -> Coke Recipe - //Without Sulfuric Acid - CORE.RA.addCokeOvenRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 2L), //Input 1 - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 1L), //Input 2 - Materials.SaltWater.getFluid(185L), //Fluid Input - Materials.Creosote.getFluid(200L), //Fluid Output - UtilsItems.getItemStack("Railcraft:fuel.coke", 2), //Item Output - 900, //Time in ticks - 120); //EU - }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} - } - - private static void assemblerRecipes(){ - //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6L), ItemList.Casing_Turbine.get(1L, new Object[0]), ItemList.Casing_Turbine2.get(1L, new Object[0]), 50, 16); - //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6L), ItemList.Casing_Turbine.get(1L, new Object[0]), ItemList.Casing_Turbine3.get(1L, new Object[0]), 50, 16); - - } -} \ No newline at end of file diff --git a/src/Java/miscutil/core/handler/registration/RECIPES_MTWRAPPER.java b/src/Java/miscutil/core/handler/registration/RECIPES_MTWRAPPER.java deleted file mode 100644 index 16ba377b07..0000000000 --- a/src/Java/miscutil/core/handler/registration/RECIPES_MTWRAPPER.java +++ /dev/null @@ -1,113 +0,0 @@ -package miscutil.core.handler.registration; - -import java.util.ArrayList; - -import miscutil.core.util.Utils; -import miscutil.core.util.UtilsItems; -import miscutil.core.util.wrapper.var; -import net.minecraft.item.ItemStack; - -public class RECIPES_MTWRAPPER { - - public static int MT_RECIPES_LOADED = 0; - public static int MT_RECIPES_FAILED = 0; - - static var chestWood = new var("minecraft:chest>"); - static var slabWood = new var("ore:slabWood>"); - static var gemNetherQuartz = new var("ore:gemNetherQuartz>"); - static var glass = new var("ore:blockGlass>"); - static var sensorDaylight = new var("minecraft:daylight_detector>"); - static var blazeRod = new var("minecraft:blaze_rod>"); - static var saw = new var("ore:craftingToolSaw>"); - static var logWood = new var("ore:logWood>"); - static var button = new var("minecraft:stone_button>"); - static var stoneBlock = new var("minecraft:stone>"); - - public static void run(){ - /*addShaped(button.getStack(2), - null, stoneBlock, null, - null, stoneBlock, null, - null, null, null);*/ - /*addShaped(stoneStick.getStack(1), - stoneBlock, null, null, - stoneBlock, null, null, - null, null, null);*/ - addShaped(chestWood.getStack(2), - logWood, logWood, logWood, - logWood, null, logWood, - logWood, logWood, logWood); - addShaped(chestWood.getStack(4), - logWood, logWood, logWood, - logWood, saw, logWood, - logWood, logWood, logWood); - //Recipe Fixes - //remove(sensorDaylight); - addShaped(sensorDaylight.getStack(1), - glass, glass, glass, - gemNetherQuartz, gemNetherQuartz, gemNetherQuartz, - slabWood, slabWood, slabWood); - /*addShaped(ironBars .getStack( 8), - null, "", null, - "", "", "", - "", "", "");*/ - } - - - public static void addShaped(Object item_Output, - Object item_1, Object item_2, Object item_3, - Object item_4, Object item_5, Object item_6, - Object item_7, Object item_8, Object item_9){ - - - /* - * - * var item_1, var item_2, var item_3, - var item_4, var item_5, var item_6, - var item_7, var item_8, var item_9 - * - * - */ - - ItemStack outputItem = UtilsItems.getCorrectStacktype(item_Output, 1); - - ArrayList validSlots = new ArrayList(); - String a,b,c,d,e,f,g,h,i; - if (item_1 == null){ a = " ";} else { a = "1";validSlots.add('1');validSlots.add(item_1);} - if (item_2 == null){ b = " ";} else { b = "2";validSlots.add('2');validSlots.add(item_2);} - if (item_3 == null){ c = " ";} else { c = "3";validSlots.add('3');validSlots.add(item_3);} - if (item_4 == null){ d = " ";} else { d = "4";validSlots.add('4');validSlots.add(item_4);} - if (item_5 == null){ e = " ";} else { e = "5";validSlots.add('5');validSlots.add(item_5);} - if (item_6 == null){ f = " ";} else { f = "6";validSlots.add('6');validSlots.add(item_6);} - if (item_7 == null){ g = " ";} else { g = "7";validSlots.add('7');validSlots.add(item_7);} - if (item_8 == null){ h = " ";} else { h = "8";validSlots.add('8');validSlots.add(item_8);} - if (item_9 == null){ i = " ";} else { i = "9";validSlots.add('9');validSlots.add(item_9);} - - String lineOne = a+b+c; - String lineTwo = d+e+f; - String lineThree = g+h+i; - validSlots.add(0, lineOne); - validSlots.add(1, lineTwo); - validSlots.add(2, lineThree); - - try { - UtilsItems.recipeBuilder((Object[]) validSlots.toArray(), outputItem.copy()); - MT_RECIPES_LOADED++; - } - catch(NullPointerException | ClassCastException k){ - k.getMessage(); - k.getClass(); - k.printStackTrace(); - k.getLocalizedMessage(); - Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+((var) item_Output).getsanitizedName()); - MT_RECIPES_FAILED++; - } - } - - public static void addShapeless(){ - - } - - - -} - diff --git a/src/Java/miscutil/core/handler/registration/RECIPES_Machines.java b/src/Java/miscutil/core/handler/registration/RECIPES_Machines.java deleted file mode 100644 index b51e41b5ab..0000000000 --- a/src/Java/miscutil/core/handler/registration/RECIPES_Machines.java +++ /dev/null @@ -1,458 +0,0 @@ -package miscutil.core.handler.registration; - -import gregtech.api.enums.ItemList; -import miscutil.core.lib.LoadedMods; -import miscutil.core.util.Utils; -import miscutil.core.util.UtilsItems; -import miscutil.gregtech.api.enums.GregtechItemList; -import net.minecraft.item.ItemStack; - -public class RECIPES_Machines { - - //Outputs - //static ItemStack RECIPE_BufferCore_ULV = new ItemStack(GregtechEnergyBuffer.itemBufferCore); - static ItemStack RECIPE_SteamCondenser = GregtechItemList.Condensor_MAX.get(1); - static ItemStack RECIPE_IronBlastFurnace = GregtechItemList.Machine_Iron_BlastFurnace.get(1); - static ItemStack RECIPE_IronPlatedBricks = GregtechItemList.Casing_IronPlatedBricks.get(1); - static ItemStack RECIPE_Buffer_ULV = GregtechItemList.Energy_Buffer_1by1_ULV.get(1); - static ItemStack RECIPE_Buffer_LV = GregtechItemList.Energy_Buffer_1by1_LV.get(1); - static ItemStack RECIPE_Buffer_MV = GregtechItemList.Energy_Buffer_1by1_MV.get(1); - static ItemStack RECIPE_Buffer_HV = GregtechItemList.Energy_Buffer_1by1_HV.get(1); - static ItemStack RECIPE_Buffer_EV = GregtechItemList.Energy_Buffer_1by1_EV.get(1); - static ItemStack RECIPE_Buffer_IV = GregtechItemList.Energy_Buffer_1by1_IV.get(1); - static ItemStack RECIPE_Buffer_LuV = GregtechItemList.Energy_Buffer_1by1_LuV.get(1); - static ItemStack RECIPE_Buffer_ZPM = GregtechItemList.Energy_Buffer_1by1_ZPM.get(1); - static ItemStack RECIPE_Buffer_UV = GregtechItemList.Energy_Buffer_1by1_UV.get(1); - static ItemStack RECIPE_Buffer_MAX = GregtechItemList.Energy_Buffer_1by1_MAX.get(1); - //Industrial Centrifuge - static ItemStack RECIPE_IndustrialCentrifugeController = GregtechItemList.Industrial_Centrifuge.get(1); - static ItemStack RECIPE_IndustrialCentrifugeCasing = GregtechItemList.Casing_Centrifuge1.get(1); - //Industrial Coke Oven - static ItemStack RECIPE_IndustrialCokeOvenController = GregtechItemList.Industrial_CokeOven.get(1); - static ItemStack RECIPE_IndustrialCokeOvenFrame = GregtechItemList.Casing_CokeOven.get(1); - static ItemStack RECIPE_IndustrialCokeOvenCasingA = GregtechItemList.Casing_CokeOven_Coil1.get(1); - static ItemStack RECIPE_IndustrialCokeOvenCasingB = GregtechItemList.Casing_CokeOven_Coil2.get(1); - - - //Buffer Cores - static ItemStack RECIPE_BufferCore_ULV = UtilsItems.getItemStack("miscutils:item.itemBufferCore1", 1); - static ItemStack RECIPE_BufferCore_LV = UtilsItems.getItemStack("miscutils:item.itemBufferCore2", 1); - static ItemStack RECIPE_BufferCore_MV = UtilsItems.getItemStack("miscutils:item.itemBufferCore3", 1); - static ItemStack RECIPE_BufferCore_HV = UtilsItems.getItemStack("miscutils:item.itemBufferCore4", 1); - static ItemStack RECIPE_BufferCore_EV = UtilsItems.getItemStack("miscutils:item.itemBufferCore5", 1); - static ItemStack RECIPE_BufferCore_IV = UtilsItems.getItemStack("miscutils:item.itemBufferCore6", 1); - static ItemStack RECIPE_BufferCore_LuV = UtilsItems.getItemStack("miscutils:item.itemBufferCore7", 1); - static ItemStack RECIPE_BufferCore_ZPM = UtilsItems.getItemStack("miscutils:item.itemBufferCore8", 1); - static ItemStack RECIPE_BufferCore_UV = UtilsItems.getItemStack("miscutils:item.itemBufferCore9", 1); - static ItemStack RECIPE_BufferCore_MAX = UtilsItems.getItemStack("miscutils:item.itemBufferCore10", 1); - - - //Wire - static String wireTier1 = "wireGt08Lead"; - static String wireTier2 = "wireGt08Tin"; - static String wireTier3 = "wireGt08Copper"; - static String wireTier4 = "wireGt08Gold"; - static String wireTier5 = "wireGt08Aluminium"; - static String wireTier6 = "wireGt08Tungsten"; - static String wireTier7 = "wireGt08Osmium"; - static String wireTier8 = "wireGt08Naquadah"; - static String wireTier9 = "wireGt08Superconductor"; - static String wireTier10 = "wireGt16Superconductor"; - - //Wire - static String cableTier1 = "cableGt04Lead"; - static String cableTier2 = "cableGt04Tin"; - static String cableTier3 = "cableGt04Copper"; - static String cableTier4 = "cableGt04Gold"; - static String cableTier5 = "cableGt04Aluminium"; - static String cableTier6 = "cableGt04Tungsten"; - static String cableTier7 = "cableGt04Osmium"; - static String cableTier8 = "cableGt04Naquadah"; - static String cableTier9 = "cableGt04NiobiumTitanium"; - static String cableTier10 = "cableGt08NiobiumTitanium"; - - - //Plates - static String plateTier1 = "plateLead"; - static String plateTier2 = "plateTin"; - static String plateTier3 = "plateCopper"; - static String plateTier4 = "plateGold"; - static String plateTier5 = "plateAluminium"; - static String plateTier6 = "plateThorium"; - static String plateTier7 = "plateTungsten"; - static String plateTier8 = "plateTungstenSteel"; - static String plateTier9 = "plateOsmium"; - static String plateTier10 = "plateNaquadah"; - static String plateTier11 = "plateNeutronium"; - - //rods - static String rodTier1 = "stickLead"; - static String rodTier2 = "stickTin"; - static String rodTier3 = "stickCopper"; - static String rodTier4 = "stickGold"; - static String rodTier5 = "stickAluminium"; - static String rodTier6 = "stickThorium"; - static String rodTier7 = "stickTungsten"; - static String rodTier8 = "stickTungstenSteel"; - static String rodTier9 = "stickOsmium"; - static String rodTier10 = "stickNaquadah"; - static String rodTier11 = "stickNeutronium"; - - - //Machine Casings - static ItemStack machineCasing_ULV = ItemList.Casing_ULV.get(1); - static ItemStack machineCasing_LV = ItemList.Casing_LV.get(1); - static ItemStack machineCasing_MV = ItemList.Casing_MV.get(1); - static ItemStack machineCasing_HV = ItemList.Casing_HV.get(1); - static ItemStack machineCasing_EV = ItemList.Casing_EV.get(1); - static ItemStack machineCasing_IV = ItemList.Casing_IV.get(1); - static ItemStack machineCasing_LuV = ItemList.Casing_LuV.get(1); - static ItemStack machineCasing_ZPM = ItemList.Casing_ZPM.get(1); - static ItemStack machineCasing_UV = ItemList.Casing_UV.get(1); - static ItemStack machineCasing_MAX = ItemList.Casing_MAX.get(1); - - //Gearbox Casings - static ItemStack gearboxCasing_Tier_1 = ItemList.Casing_Gearbox_Bronze.get(1); - static ItemStack gearboxCasing_Tier_2 = ItemList.Casing_Gearbox_Steel.get(1); - static ItemStack gearboxCasing_Tier_3 = ItemList.Casing_Gearbox_Titanium.get(1); - static ItemStack gearboxCasing_Tier_4 = ItemList.Casing_Gearbox_TungstenSteel.get(1); - - //Cables - static String cableGt02Electrum = "cableGt02Electrum"; - - - //Plates - static String plateElectricalSteel= "plateElectricalSteel"; - static String plateEnergeticAlloy= "plateEnergeticAlloy"; - static String plateCobalt = "plateCobalt"; - static String plateBronze = "plateBronze"; - static String plateSteel = "plateSteel"; - - //Pipes - static String pipeLargeCopper="pipeLargeCopper"; - static String pipeHugeSteel="pipeHugeSteel"; - static String pipeHugeStainlessSteel="pipeHugeStainlessSteel"; - static String pipeHugeTitanium="pipeHugeTitanium"; - - //Lava Boiler - static ItemStack boiler_Coal = ItemList.Machine_Bronze_Boiler.get(1); - static ItemStack blockBricks = UtilsItems.getItemStack("minecraft:brick_block", 1); - - //Batteries - static String batteryBasic = "batteryBasic"; - static String batteryAdvanced = "batteryAdvanced"; - static String batteryElite = "batteryElite"; - static String batteryMaster = "batteryMaster"; - static String batteryUltimate = "batteryUltimate"; - - //Circuits - static String circuitPrimitive = "circuitPrimitive"; - static String circuitBasic = "circuitBasic"; - static String circuitGood = "circuitGood"; - static String circuitAdvanced = "circuitAdvanced"; - static String circuitData = "circuitData"; - static String circuitElite = "circuitElite"; - static String circuitMaster = "circuitMaster"; - static String circuitUltimate = "circuitUltimate"; - - //Machine Components - static ItemStack electricMotor_LV = ItemList.Electric_Motor_LV.get(1); - static ItemStack electricMotor_MV = ItemList.Electric_Motor_MV.get(1); - static ItemStack electricMotor_HV = ItemList.Electric_Motor_HV.get(1); - static ItemStack electricMotor_EV = ItemList.Electric_Motor_EV.get(1); - static ItemStack electricMotor_IV = ItemList.Electric_Motor_IV.get(1); - static ItemStack electricPump_LV = ItemList.Electric_Pump_LV.get(1); - static ItemStack electricPump_MV = ItemList.Electric_Pump_MV.get(1); - static ItemStack electricPump_HV = ItemList.Electric_Pump_HV.get(1); - static ItemStack electricPump_EV = ItemList.Electric_Pump_EV.get(1); - static ItemStack electricPump_IV = ItemList.Electric_Pump_IV.get(1); - static ItemStack electricPiston_LV = ItemList.Electric_Piston_LV.get(1); - static ItemStack electricPiston_MV = ItemList.Electric_Piston_MV.get(1); - static ItemStack electricPiston_HV = ItemList.Electric_Piston_HV.get(1); - static ItemStack electricPiston_EV = ItemList.Electric_Piston_EV.get(1); - static ItemStack electricPiston_IV = ItemList.Electric_Piston_IV.get(1); - static ItemStack robotArm_LV = ItemList.Robot_Arm_LV.get(1); - static ItemStack robotArm_MV = ItemList.Robot_Arm_MV.get(1); - static ItemStack robotArm_HV = ItemList.Robot_Arm_HV.get(1); - static ItemStack robotArm_EV = ItemList.Robot_Arm_EV.get(1); - static ItemStack robotArm_IV = ItemList.Robot_Arm_IV.get(1); - static ItemStack conveyorModule_LV = ItemList.Conveyor_Module_LV.get(1); - static ItemStack conveyorModule_MV = ItemList.Conveyor_Module_MV.get(1); - static ItemStack conveyorModule_HV = ItemList.Conveyor_Module_HV.get(1); - static ItemStack conveyorModule_EV = ItemList.Conveyor_Module_EV.get(1); - static ItemStack conveyorModule_IV = ItemList.Conveyor_Module_IV.get(1); - static ItemStack emitter_LV = ItemList.Emitter_LV.get(1); - static ItemStack emitter_MV = ItemList.Emitter_MV.get(1); - static ItemStack emitter_HV = ItemList.Emitter_HV.get(1); - static ItemStack emitter_EV = ItemList.Emitter_EV.get(1); - static ItemStack emitter_IV = ItemList.Emitter_IV.get(1); - static ItemStack fieldGenerator_LV = ItemList.Field_Generator_LV.get(1); - static ItemStack fieldGenerator_MV = ItemList.Field_Generator_MV.get(1); - static ItemStack fieldGenerator_HV = ItemList.Field_Generator_HV.get(1); - static ItemStack fieldGenerator_EV = ItemList.Field_Generator_EV.get(1); - static ItemStack fieldGenerator_IV = ItemList.Field_Generator_IV.get(1); - static ItemStack sensor_LV = ItemList.Sensor_LV.get(1); - static ItemStack sensor_MV = ItemList.Sensor_MV.get(1); - static ItemStack sensor_HV = ItemList.Sensor_HV.get(1); - static ItemStack sensor_EV = ItemList.Sensor_EV.get(1); - static ItemStack sensor_IV = ItemList.Sensor_IV.get(1); - - //Misc - static ItemStack INPUT_RCCokeOvenBlock = UtilsItems.getItemStackWithMeta(LoadedMods.Railcraft, "Railcraft:machine.alpha", "Coke_Oven_RC", 7, 1); - - - - //RobotArm, Conveyor, Emitter, Sensor, Field Generator - - - public static final void RECIPES_LOAD(){ - run(); - Utils.LOG_INFO("Loading Recipes for the Various machine blocks."); - } - - private static void run(){ - //Staballoy Dust - TEMP - UtilsItems.recipeBuilder("dustTitanium", "dustUranium", "dustUranium", - "dustUranium", "dustUranium", "dustUranium", - "dustUranium", "dustUranium", "dustUranium", - RECIPES_Shapeless.dustStaballoy); - - //Buffer Core - UtilsItems.recipeBuilder( - plateTier1, cableTier1, plateTier1, - circuitPrimitive, batteryBasic, circuitPrimitive, - plateTier1, cableTier1, plateTier1, - RECIPE_BufferCore_ULV); - UtilsItems.recipeBuilder( - plateTier2, cableTier2, plateTier2, - circuitBasic, batteryBasic, circuitBasic, - plateTier2, cableTier2, plateTier2, - RECIPE_BufferCore_LV); - UtilsItems.recipeBuilder( - plateTier3, cableTier3, plateTier3, - circuitGood, batteryAdvanced, circuitGood, - plateTier3, cableTier3, plateTier3, - RECIPE_BufferCore_MV); - UtilsItems.recipeBuilder( - plateTier4, cableTier4, plateTier4, - circuitAdvanced, batteryAdvanced, circuitAdvanced, - plateTier4, cableTier4, plateTier4, - RECIPE_BufferCore_HV); - UtilsItems.recipeBuilder( - plateTier5, cableTier5, plateTier5, - circuitData, batteryElite, circuitData, - plateTier5, cableTier5, plateTier5, - RECIPE_BufferCore_EV); - - UtilsItems.recipeBuilder( - plateTier6, cableTier6, plateTier6, - circuitData, batteryElite, circuitElite, - plateTier6, cableTier6, plateTier6, - RECIPE_BufferCore_IV); - UtilsItems.recipeBuilder( - plateTier7, cableTier7, plateTier7, - circuitElite, batteryMaster, circuitElite, - plateTier7, cableTier7, plateTier7, - RECIPE_BufferCore_LuV); - UtilsItems.recipeBuilder( - plateTier8, cableTier8, plateTier8, - circuitMaster, batteryMaster, circuitMaster, - plateTier8, cableTier8, plateTier8, - RECIPE_BufferCore_ZPM); - UtilsItems.recipeBuilder( - plateTier9, cableTier9, plateTier9, - circuitMaster, batteryUltimate, circuitUltimate, - plateTier9, cableTier9, plateTier9, - RECIPE_BufferCore_UV); - UtilsItems.recipeBuilder( - plateTier10, cableTier10, plateTier10, - circuitUltimate, batteryUltimate, circuitUltimate, - plateTier10, cableTier10, plateTier10, - RECIPE_BufferCore_MAX); - - - - - - - - - - - - - //Battery Buffer #1 - UtilsItems.recipeBuilder( - wireTier1, RECIPE_BufferCore_ULV, wireTier1, - wireTier1, machineCasing_ULV, wireTier1, - circuitPrimitive, null, circuitPrimitive, - RECIPE_Buffer_ULV); - - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier2, RECIPE_BufferCore_LV, wireTier2, - wireTier2, machineCasing_LV, wireTier2, - circuitPrimitive, circuitBasic, circuitPrimitive, - RECIPE_Buffer_LV); - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier3, RECIPE_BufferCore_MV, wireTier3, - wireTier3, machineCasing_MV, wireTier3, - circuitBasic, circuitGood, circuitBasic, - RECIPE_Buffer_MV); - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier4, RECIPE_BufferCore_HV, wireTier4, - wireTier4, machineCasing_HV, wireTier4, - circuitGood, circuitAdvanced, circuitGood, - RECIPE_Buffer_HV); - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier5, RECIPE_BufferCore_EV, wireTier5, - wireTier5, machineCasing_EV, wireTier5, - circuitAdvanced, circuitElite, circuitAdvanced, - RECIPE_Buffer_EV); - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier6, RECIPE_BufferCore_IV, wireTier6, - wireTier6, machineCasing_IV, wireTier6, - circuitElite, circuitMaster, circuitElite, - RECIPE_Buffer_IV); - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier7, RECIPE_BufferCore_LuV, wireTier7, - wireTier7, machineCasing_LuV, wireTier7, - circuitMaster, circuitElite, circuitMaster, - RECIPE_Buffer_LuV); - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier8, RECIPE_BufferCore_ZPM, wireTier8, - wireTier8, machineCasing_ZPM, wireTier8, - circuitMaster, circuitUltimate, circuitMaster, - RECIPE_Buffer_ZPM); - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier9, RECIPE_BufferCore_UV, wireTier9, - wireTier9, machineCasing_UV, wireTier9, - circuitUltimate, circuitMaster, circuitUltimate, - RECIPE_Buffer_UV); - //Battery Buffer - UtilsItems.recipeBuilder( - wireTier10, RECIPE_BufferCore_MAX, wireTier10, - wireTier10, machineCasing_MAX, wireTier10, - circuitUltimate, plateTier11, circuitUltimate, - RECIPE_Buffer_MAX); - - - //Steam Condenser - UtilsItems.recipeBuilder( - pipeLargeCopper, pipeHugeSteel, pipeLargeCopper, - plateEnergeticAlloy, electricPump_HV, plateEnergeticAlloy, - plateEnergeticAlloy, pipeLargeCopper, plateEnergeticAlloy, - RECIPE_SteamCondenser); - - //Iron BF - UtilsItems.recipeBuilder( - "plateDoubleAnyIron", "craftingFurnace", "plateDoubleAnyIron", - boiler_Coal, machineCasing_ULV, boiler_Coal, - "plateDoubleAnyIron", "bucketLava", "plateDoubleAnyIron", - RECIPE_IronBlastFurnace); - - //Iron plated Bricks - UtilsItems.recipeBuilder( - "plateAnyIron", RECIPES_Tools.craftingToolHardHammer, "plateAnyIron", - "plateAnyIron", blockBricks, "plateAnyIron", - "plateAnyIron", RECIPES_Tools.craftingToolWrench, "plateAnyIron", - RECIPE_IronPlatedBricks); - - - - - //Industrial Centrifuge - UtilsItems.recipeBuilder( - circuitElite, pipeHugeStainlessSteel, circuitElite, - plateTier6, electricPump_EV, plateTier6, - plateTier8, machineCasing_EV, plateTier8, - RECIPE_IndustrialCentrifugeController); - - //Centrifuge Casing - UtilsItems.recipeBuilder( - plateTier6, "stickElectrum", plateTier6, - plateTier8, "stickElectrum", plateTier8, - plateTier6, "stickElectrum", plateTier6, - RECIPE_IndustrialCentrifugeCasing); - - //Industrial Coke Oven - UtilsItems.recipeBuilder( - plateCobalt, circuitAdvanced, plateCobalt, - machineCasing_HV, INPUT_RCCokeOvenBlock, machineCasing_HV, - plateCobalt, circuitAdvanced, plateCobalt, - RECIPE_IndustrialCokeOvenController); - - //Coke Oven Frame Casing - UtilsItems.recipeBuilder( - plateTier8, rodTier8, plateTier8, - rodTier8, "frameGtCobalt", rodTier8, - plateTier8, rodTier8, plateTier8, - RECIPE_IndustrialCokeOvenFrame); - - //Coke Oven Coil 1 - UtilsItems.recipeBuilder( - plateBronze, plateBronze, plateBronze, - "frameGtBronze", gearboxCasing_Tier_1, "frameGtBronze", - plateBronze, plateBronze, plateBronze, - RECIPE_IndustrialCokeOvenCasingA); - - //Coke Oven Coil 2 - UtilsItems.recipeBuilder( - plateSteel, plateSteel, plateSteel, - "frameGtSteel", gearboxCasing_Tier_2, "frameGtSteel", - plateSteel, plateSteel, plateSteel, - RECIPE_IndustrialCokeOvenCasingB); - - - - - - - - - - - - - - - - - - - - - - Utils.LOG_INFO("Done loading recipes for the Various machine blocks."); - - - - - - - - - - - - - - - - - - - - - - - - } -} diff --git a/src/Java/miscutil/core/handler/registration/RECIPES_Shapeless.java b/src/Java/miscutil/core/handler/registration/RECIPES_Shapeless.java deleted file mode 100644 index 34eefffea3..0000000000 --- a/src/Java/miscutil/core/handler/registration/RECIPES_Shapeless.java +++ /dev/null @@ -1,41 +0,0 @@ -package miscutil.core.handler.registration; - -import gregtech.api.enums.ItemList; -import miscutil.core.lib.LoadedMods; -import miscutil.core.util.Utils; -import miscutil.core.util.UtilsItems; -import net.minecraft.item.ItemStack; - -public class RECIPES_Shapeless { - - static ItemStack dustStaballoy = UtilsItems.getItemStackWithMeta(LoadedMods.Gregtech, "gregtech:gt.metaitem.01", "Staballoy Dust", 2319, 1); - - //Circuits - static String circuitPrimitive = "circuitPrimitive"; - static String circuitBasic = "circuitBasic"; - static String circuitGood = "circuitGood"; - static String circuitAdvanced = "circuitAdvanced"; - static String circuitData = "circuitData"; - static String circuitElite = "circuitElite"; - static String circuitMaster = "circuitMaster"; - static String circuitUltimate = "circuitUltimate"; - static ItemStack gearboxCasing_Tier_1 = ItemList.Casing_Gearbox_Bronze.get(1); - - public static final void RECIPES_LOAD(){ - //run(); - Utils.LOG_INFO("Loading Shapeless Recipes."); - } - - private static void run(){ - UtilsItems.shapelessBuilder(dustStaballoy, - "dustTitanium", "dustUranium", "dustUranium", - "dustUranium", "dustUranium", "dustUranium", - "dustUranium", "dustUranium", "dustUranium"); - - UtilsItems.shapelessBuilder(gearboxCasing_Tier_1, - circuitPrimitive, circuitPrimitive, circuitPrimitive, - circuitPrimitive, circuitPrimitive, circuitPrimitive, - circuitPrimitive, circuitPrimitive, circuitPrimitive); - } - -} diff --git a/src/Java/miscutil/core/handler/registration/RECIPES_Tools.java b/src/Java/miscutil/core/handler/registration/RECIPES_Tools.java deleted file mode 100644 index 3e9d36c0ab..0000000000 --- a/src/Java/miscutil/core/handler/registration/RECIPES_Tools.java +++ /dev/null @@ -1,176 +0,0 @@ -package miscutil.core.handler.registration; - -import miscutil.core.item.ModItems; -import miscutil.core.util.UtilsItems; -import net.minecraft.block.Block; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraftforge.oredict.OreDictionary; - -public class RECIPES_Tools { - - //Outputs - static ItemStack RECIPE_StaballoyPickaxe = new ItemStack(ModItems.itemStaballoyPickaxe); - static ItemStack RECIPE_StaballoyAxe = new ItemStack(ModItems.itemStaballoyAxe); - static ItemStack RECIPE_SandstoneHammer = new ItemStack(ModItems.itemSandstoneHammer); - static ItemStack RECIPE_StaballoyIngot = new ItemStack(ModItems.itemIngotStaballoy); - static ItemStack RECIPE_SandStone = new ItemStack(Blocks.sandstone, 2); - static ItemStack RECIPE_Sand = new ItemStack(Blocks.sand, 4); - - static ItemStack RECIPE_DivisionSigil = new ItemStack(UtilsItems.getItem("ExtraUtilities:divisionSigil")); - - //MC Items - static Item Apple = Items.apple; - - //MC Blocks - static Block CobbleStone = Blocks.cobblestone; - static Block Dirt = Blocks.dirt; - static Block Sand = Blocks.sand; - static Block Gravel = Blocks.gravel; - static Block Sandstone = Blocks.sandstone; - - //null - static String empty = " "; - - //Batteries - static String batteryBasic = "batteryBasic"; - static String batteryAdvanced = "batteryAdvanced"; - static String batteryElite = "batteryElite"; - static String batteryMaster = "batteryMaster"; - static String batteryUltimate = "batteryUltimate"; - - //Circuits - static String circuitPrimitive = "circuitPrimitive"; - static String circuitBasic = "circuitBasic"; - static String circuitGood = "circuitGood"; - static String circuitAdvanced = "circuitAdvanced"; - static String circuitElite = "circuitElite"; - static String circuitMaster = "circuitMaster"; - static String circuitUltimate = "circuitUltimate"; - - //Cables - static String cableGt01Electrum = "cableGt01Electrum"; - static String cableGt02Electrum = "cableGt02Electrum"; - static String cableGt01RedstoneAlloy = "cableGt01RedstoneAlloy"; - static String cableGt02RedstoneAlloy = "cableGt02RedstoneAlloy"; - static String cableGt01Copper = "cableGt01Copper"; - static String cableGt02Copper = "cableGt02Copper"; - static String cableGt01AnnealedCopper = "cableGt01AnnealedCopper"; - static String cableGt02AnnealedCopper = "cableGt02AnnealedCopper"; - - //Rods - static String stickStaballoy= "stickStaballoy"; - static String stickTitanium= "stickTitanium"; - static String stickIron= "stickIron"; - static String stickGold= "stickGold"; - static String stickSilver= "stickSilver"; - static String stickSteel= "stickSteel"; - static String stickBronze= "stickBronze"; - static String stickTungsten= "stickTungsten"; - static String stickRedAlloy= "stickRedAlloy"; - static String stickInvar= "stickInvar"; - static String stickElectrum= "stickElectrum"; - static String stickElectricalSteel= "stickElectricalSteel"; - - //Plates - static String plateStaballoy= "plateStaballoy"; - static String plateTitanium= "plateTitanium"; - static String plateIron= "plateIron"; - static String plateGold= "plateGold"; - static String plateSilver= "plateSilver"; - static String plateSteel= "plateSteel"; - static String plateBronze= "plateBronze"; - static String plateTungsten= "plateTungsten"; - static String plateRedAlloy= "plateRedAlloy"; - static String plateInvar= "plateInvar"; - static String plateElectrum= "plateElectrum"; - static String plateElectricalSteel= "plateElectricalSteel"; - - //Ingots - static String ingotStaballoy= "ingotStaballoy"; - static String ingotTitanium= "ingotTitanium"; - static String ingotIron= "ingotIron"; - static String ingotGold= "ingotGold"; - static String ingotSilver= "ingotSilver"; - static String ingotSteel= "ingotSteel"; - static String ingotBronze= "ingotBronze"; - static String ingotTungsten= "ingotTungsten"; - static String ingotRedAlloy= "ingotRedAlloy"; - static String ingotInvar= "ingotInvar"; - static String ingotElectrum= "ingotElectrum"; - static String ingotUranium= "ingotUranium"; - static String ingotElectricalSteel= "ingotElectricalSteel"; - - //Crafting Tools - static String craftingToolHardHammer = "craftingToolHardHammer"; - static String craftingToolSoftHammer = "craftingToolSoftHammer"; - static String craftingToolFile = "craftingToolFile"; - static String craftingToolSaw = "craftingToolSaw"; - static String craftingToolPickaxe = "craftingToolPickaxe"; - static String craftingToolWrench = "craftingToolWrench"; - static String craftingToolCrowbar = "craftingToolCrowbar"; - static String craftingToolKnife = "craftingToolKnife"; - static String craftingToolScrewdriver = "craftingToolScrewdriver"; - - static ItemStack sandHammer = new ItemStack (ModItems.itemSandstoneHammer, 1, OreDictionary.WILDCARD_VALUE); - static String craftingToolSandHammer = "craftingToolSandHammer"; - - public static final void RECIPES_LOAD(){ - - //plateStaballoy = new ItemStack(ModItems.itemPlateStaballoy); - //ingotStaballoy = new ItemStack(ModItems.itemIngotStaballoy); - - //Pickaxes - run(); - - } - - private static void run(){ - //Staballoy Pickaxe - UtilsItems.recipeBuilder( - plateStaballoy, plateStaballoy, ingotStaballoy, - craftingToolFile, stickTungsten, craftingToolHardHammer, - craftingToolWrench, stickTungsten, craftingToolHardHammer, - RECIPE_StaballoyPickaxe); - - //Staballoy Axe - UtilsItems.recipeBuilder( - plateStaballoy, ingotStaballoy, craftingToolHardHammer, - plateStaballoy, stickTungsten, craftingToolHardHammer, - craftingToolFile, stickTungsten, craftingToolWrench, - RECIPE_StaballoyAxe); - - //Cobble to Sand - UtilsItems.recipeBuilder( - CobbleStone, CobbleStone, CobbleStone, - CobbleStone, sandHammer, CobbleStone, - CobbleStone, CobbleStone, CobbleStone, - RECIPE_Sand); - - //Sand to Sandstone - UtilsItems.recipeBuilder( - Sand, Sand, Sand, - Sand, sandHammer, Sand, - Sand, Sand, Sand, - RECIPE_SandStone); - - //Sandstone Hammer - UtilsItems.recipeBuilder( - plateElectrum, ingotElectrum, plateElectrum, - craftingToolScrewdriver, stickBronze, craftingToolHardHammer, - null, stickSteel, null, - RECIPE_SandstoneHammer); - - //Division Sigil - UtilsItems.recipeBuilder( - "plateNetherStar", "gemIridium", "plateNetherStar", - "plateIridium", craftingToolHardHammer, "plateIridium", - "plateNetherStar", "gemIridium", "plateNetherStar", - RECIPE_DivisionSigil); - - - } - -} diff --git a/src/Java/miscutil/core/handler/registration/RegistrationHandler.java b/src/Java/miscutil/core/handler/registration/RegistrationHandler.java index 9f100117fc..7bb3d33f84 100644 --- a/src/Java/miscutil/core/handler/registration/RegistrationHandler.java +++ b/src/Java/miscutil/core/handler/registration/RegistrationHandler.java @@ -1,6 +1,10 @@ package miscutil.core.handler.registration; +import miscutil.core.common.compat.COMPAT_HANDLER; import miscutil.core.util.Utils; +import miscutil.core.util.recipe.RECIPES_Machines; +import miscutil.core.util.recipe.RECIPES_Shapeless; +import miscutil.core.util.recipe.RECIPES_Tools; public class RegistrationHandler { @@ -15,14 +19,10 @@ public class RegistrationHandler { RECIPES_Tools.RECIPES_LOAD(); RECIPES_Machines.RECIPES_LOAD(); RECIPES_Shapeless.RECIPES_LOAD(); - //RECIPES_MTWRAPPER.run(); - try { - Thread.sleep(10); - } catch (InterruptedException e) { - Utils.LOG_INFO(e.toString()); - } + //RECIPES_MTWRAPPER.run(); Utils.LOG_INFO("Loaded: "+recipesSuccess+" Failed: "+recipesFailed); - Utils.LOG_INFO("MT Loaded: "+RECIPES_MTWRAPPER.MT_RECIPES_LOADED+" MT Failed: "+RECIPES_MTWRAPPER.MT_RECIPES_FAILED); + COMPAT_HANDLER.areInitItemsLoaded = true; + //Utils.LOG_INFO("MT Loaded: "+RECIPES_MTWRAPPER.MT_RECIPES_LOADED+" MT Failed: "+RECIPES_MTWRAPPER.MT_RECIPES_FAILED); } } diff --git a/src/Java/miscutil/core/item/general/fuelrods/FuelRod_Base.java b/src/Java/miscutil/core/item/general/fuelrods/FuelRod_Base.java index 9a3de2c08f..56fe598a3b 100644 --- a/src/Java/miscutil/core/item/general/fuelrods/FuelRod_Base.java +++ b/src/Java/miscutil/core/item/general/fuelrods/FuelRod_Base.java @@ -196,9 +196,11 @@ public class FuelRod_Base extends Item{ itemStack.stackTagCompound.setInteger("fuelRemaining", fuelRemaining); itemStack.stackTagCompound.setInteger("maximumFuel", maximumFuel); itemStack.stackTagCompound.setFloat("heat", heat); - itemStack.stackTagCompound.setFloat("maxHeat", maxHeat); + itemStack.stackTagCompound.setFloat("maxHeat", getMaxHeat()); itemStack.stackTagCompound.setString("fuelType", fuelType); } + + } diff --git a/src/Java/miscutil/core/lib/LoadedMods.java b/src/Java/miscutil/core/lib/LoadedMods.java index 896108052c..efce85b11a 100644 --- a/src/Java/miscutil/core/lib/LoadedMods.java +++ b/src/Java/miscutil/core/lib/LoadedMods.java @@ -1,6 +1,7 @@ package miscutil.core.lib; import miscutil.core.util.Utils; +import miscutil.gregtech.common.GregtechRecipeAdder; import cpw.mods.fml.common.Loader; public class LoadedMods { @@ -24,10 +25,19 @@ public class LoadedMods { private static int totalMods; + @SuppressWarnings("deprecation") public static void checkLoaded(){ Utils.LOG_INFO("Looking for optional mod prereqs."); if (Loader.isModLoaded("gregtech") == true ){ Gregtech = true; + if (Gregtech){ + try { + CORE.sRecipeAdder = CORE.RA = new GregtechRecipeAdder(); + } catch (NullPointerException e){ + + } + } + totalMods++; } if (Loader.isModLoaded("EnderIO") == true){ diff --git a/src/Java/miscutil/core/tileentities/TileEntityNHG.java b/src/Java/miscutil/core/tileentities/TileEntityNHG.java index b145bd2742..6775fe515b 100644 --- a/src/Java/miscutil/core/tileentities/TileEntityNHG.java +++ b/src/Java/miscutil/core/tileentities/TileEntityNHG.java @@ -15,7 +15,8 @@ public class TileEntityNHG extends TileEntity implements IInventory { private ItemStack[] items = new ItemStack[19]; //18 private int progress = 1; - private int maxProgress = 100; + private int maxProgress = 1800; + private int heatCycleProgress = 120; public float coreTemp; public float maxTemp = 10000; private boolean fuelrod_1 = false; @@ -41,44 +42,67 @@ public class TileEntityNHG extends TileEntity implements IInventory return coreTemp; } + public int getProgress(){ + return progress; + } + public boolean isValidFuelRod(ItemStack input){ - if (input != null){ - if (input.getItem() instanceof FuelRod_Base){ - int fuelRodFuelLevel = getRodFuelValue(input); - float fuelRodHeatLevel = getRodHeatValue(input); - if((fuelRodHeatLevel <= 0 || fuelRodHeatLevel == 0) && fuelRodFuelLevel > 0){ - - if(fuelRodFuelLevel <= 0 || fuelRodFuelLevel == 0){ - return false; + if(!this.worldObj.isRemote){ + if (input != null){ + if (input.getItem() instanceof FuelRod_Base){ + int fuelRodFuelLevel = getRodFuelValue(input); + float fuelRodHeatLevel = getRodHeatValue(input); + Utils.LOG_WARNING("Fuel Left: "+fuelRodFuelLevel+" Current Temp: "+fuelRodHeatLevel); + return true; + //return input.stackTagCompound.getInteger("code"); + } + } + + } + return false; + } + + public ItemStack doFuelRodHeatDamage(ItemStack input){ + if(!this.worldObj.isRemote){ + if (input != null){ + if (isValidFuelRod(input)){ + int fuelRodFuelLevel = getRodFuelValue(input); + float fuelRodHeatLevel = getRodHeatValue(input); + if((fuelRodHeatLevel <= 0 || fuelRodHeatLevel == 0) && fuelRodFuelLevel > 0){ + + if(fuelRodFuelLevel <= 0 || fuelRodFuelLevel == 0){ + return null; + } + else if(fuelRodFuelLevel >= 5){ + int tempInt=fuelRodFuelLevel; + float tempFloat=fuelRodHeatLevel; + ItemStack output = input.copy(); + output.stackTagCompound.setInteger("fuelRemaining", tempInt-5); + output.stackTagCompound.setFloat("heat", tempFloat+5); + + return output; + } + else { + return null; + } } - else if(fuelRodFuelLevel >= 5){ - input.stackTagCompound.setInteger("fuelRemaining", fuelRodFuelLevel-5); - input.stackTagCompound.setFloat("heat", fuelRodHeatLevel+5); - return true; + else if(fuelRodHeatLevel >= 5 && fuelRodFuelLevel == 0){ + input.stackTagCompound.setInteger("heat", -5); + return input; } else { - return false; + return null; } } - else if(fuelRodHeatLevel >= 5 && fuelRodFuelLevel == 0){ - input.stackTagCompound.setInteger("heat", -5); - return true; - } - else { - return false; - } - //return input.stackTagCompound.getInteger("code"); } } - - - return false; + return null; } public float getRodHeatValue(ItemStack value){ if (value != null){ if (value.stackTagCompound.getFloat("heat") != 0){ - return value.stackTagCompound.getFloat("heat"); + return value.stackTagCompound.getFloat("heat"); } return 0f; } @@ -88,7 +112,7 @@ public class TileEntityNHG extends TileEntity implements IInventory public int getRodFuelValue(ItemStack value){ if (value != null){ if (value.stackTagCompound.getInteger("fuelRemaining") != 0){ - return value.stackTagCompound.getInteger("fuelRemaining"); + return value.stackTagCompound.getInteger("fuelRemaining"); } return 0; } @@ -96,100 +120,118 @@ public class TileEntityNHG extends TileEntity implements IInventory } public void checkFuelRods(){ - for (int i = 0; i < getSizeInventory(); i++){ - if (items[i] != null){ - if (items[i].getItem() instanceof FuelRod_Base){ - - - ItemStack fuelRodStack = getStackInSlot(i); - isValidFuelRod(fuelRodStack); - - - if (i == 0){ - fuelrod_1 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 1){ - fuelrod_2 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 2){ - fuelrod_3 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 3){ - fuelrod_4 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 4){ - fuelrod_5 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 5){ - fuelrod_6 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 6){ - fuelrod_7 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 7){ - fuelrod_8 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 8){ - fuelrod_9 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 9){ - fuelrod_10 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 10){ - fuelrod_11 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 11){ - fuelrod_12 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 12){ - fuelrod_13 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 13){ - fuelrod_14 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 14){ - fuelrod_15 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 15){ - fuelrod_16 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 16){ - fuelrod_17 = true; - isValidFuelRod(fuelRodStack); - } - else if (i == 17){ - fuelrod_18 = true; - isValidFuelRod(fuelRodStack); + + if(!this.worldObj.isRemote){ + for (int i = 0; i < getSizeInventory(); i++){ + if (items[i] != null){ + if (items[i].getItem() instanceof FuelRod_Base){ + ItemStack fuelRodStack = getStackInSlot(i); + //setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + if (i == 0){ + fuelrod_1 = true; + FuelRod_Base x = (FuelRod_Base) fuelRodStack.getItem(); + x.addHeat(5); + x.addFuel(-5); + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 1){ + fuelrod_2 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 2){ + fuelrod_3 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 3){ + fuelrod_4 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 4){ + fuelrod_5 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 5){ + fuelrod_6 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 6){ + fuelrod_7 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 7){ + fuelrod_8 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 8){ + fuelrod_9 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 9){ + fuelrod_10 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 10){ + fuelrod_11 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 11){ + fuelrod_12 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 12){ + fuelrod_13 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 13){ + fuelrod_14 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 14){ + fuelrod_15 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 15){ + fuelrod_16 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 16){ + fuelrod_17 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + else if (i == 17){ + fuelrod_18 = true; + setInventorySlotContents(i, doFuelRodHeatDamage(fuelRodStack)); + } + + } - - } } - } + } } public boolean calculateHeat(){ - if (!fuelrod_1 || !fuelrod_2 || !fuelrod_3 || !fuelrod_4 || !fuelrod_5 || !fuelrod_6 || !fuelrod_7 || !fuelrod_8 || !fuelrod_9 || !fuelrod_10 || !fuelrod_11 || !fuelrod_12 || !fuelrod_13 || !fuelrod_14 || !fuelrod_15 || !fuelrod_16 || !fuelrod_17 || !fuelrod_18){ + /*if (!fuelrod_1 || !fuelrod_2 || !fuelrod_3 || !fuelrod_4 || !fuelrod_5 || !fuelrod_6 || !fuelrod_7 || !fuelrod_8 || !fuelrod_9 || !fuelrod_10 || !fuelrod_11 || !fuelrod_12 || !fuelrod_13 || !fuelrod_14 || !fuelrod_15 || !fuelrod_16 || !fuelrod_17 || !fuelrod_18){ coreTemp = 0; } + else {*/ + if(!this.worldObj.isRemote){ + for (int i = 0; i < getSizeInventory(); i++){ + if (items[i] != null){ + if (items[i].getItem() instanceof FuelRod_Base){ + ItemStack fuelRodStack = getStackInSlot(i); + //if (fuelRodStack.stackTagCompound.getFloat("heat") != 0){ + doFuelRodHeatDamage(fuelRodStack); + coreTemp = coreTemp+fuelRodStack.stackTagCompound.getFloat("heat"); + return true; + //} + } + } + } + } + //} @@ -333,47 +375,73 @@ public class TileEntityNHG extends TileEntity implements IInventory private ItemStack neutrons; @Override - public void updateEntity() { - if(++progress >= maxProgress){ - Utils.LOG_WARNING("Updating Entity "+this.getInventoryName()); - if (items[18] != null){ - if(neutrons == null){ + public void updateEntity() { + + if(!this.worldObj.isRemote){ + + if(progress >= heatCycleProgress){ + //Utils.LOG_SPECIFIC_WARNING("NFHG", "Updating Entity "+this.getBlockType().getUnlocalizedName(), 376); + if (Utils.divideXintoY(heatCycleProgress, maxProgress)){ + Utils.LOG_SPECIFIC_WARNING("NFHG", "Updating Entity "+this.getBlockType().getUnlocalizedName(), 378); + calculateHeat(); + heatCycleProgress=0; + } + } + + if(++progress >= maxProgress){ + + + Utils.LOG_SPECIFIC_WARNING("NFHG", "Updating Entity "+this.getBlockType().getUnlocalizedName(), 338); + if (items[18] != null){ + ItemStack checkOutput = getStackInSlot(18); + if(neutrons == null){ + neutrons = new ItemStack(ModItems.itemHeliumBlob, 1); + if (checkOutput == null){ + Utils.LOG_WARNING("ItemStack in Output slot is definitely null, making a new ItemStack."); + setInventorySlotContents(18, neutrons); + progress = 0; + markDirty(); + } + else { + checkOutput.stackSize++; + Utils.LOG_WARNING("Found an ItemStack to increase the size of. Current size is "+neutrons.stackSize); + + progress = 0; + markDirty(); + } + } + else if(checkOutput.getItem() == ModItems.itemHeliumBlob && checkOutput.stackSize < 64){ + checkOutput.stackSize++; + Utils.LOG_WARNING("Found an ItemStack to increase size of. Current size is "+checkOutput.stackSize); + progress = 0; + markDirty(); + } + else if(checkOutput.getItem() == ModItems.itemHeliumBlob && checkOutput.stackSize == 64){ + Utils.LOG_WARNING("Output stack is full."); + progress = 0; + markDirty(); + } + } + else if (items[18] == null){ + Utils.LOG_WARNING("ItemStack in Output slot is null"); neutrons = new ItemStack(ModItems.itemHeliumBlob, 1); ItemStack checkOutput = getStackInSlot(18); if (checkOutput == null){ Utils.LOG_WARNING("ItemStack in Output slot is definitely null, making a new ItemStack."); setInventorySlotContents(18, neutrons); - checkFuelRods(); + progress = 0; + markDirty(); } else { Utils.LOG_WARNING("Found an ItemStack to increase the size of."); - checkOutput.stackSize++; - checkFuelRods(); + checkOutput.stackSize++; + progress = 0; + markDirty(); } } - else if(neutrons.getItem() == ModItems.itemHeliumBlob && neutrons.stackSize < 64){ - Utils.LOG_WARNING("Found an ItemStack to increase size of."); - neutrons.stackSize++; - checkFuelRods(); - progress = 0; - } + checkFuelRods(); } - else if (items[18] == null){ - Utils.LOG_WARNING("ItemStack in Output slot is null"); - neutrons = new ItemStack(ModItems.itemHeliumBlob, 1); - ItemStack checkOutput = getStackInSlot(18); - if (checkOutput == null){ - Utils.LOG_WARNING("ItemStack in Output slot is definitely null, making a new ItemStack."); - setInventorySlotContents(18, neutrons); - checkFuelRods(); - } - else { - Utils.LOG_WARNING("Found an ItemStack to increase the size of."); - checkOutput.stackSize++; - checkFuelRods(); - } - } - markDirty(); + progress++; } } @@ -381,11 +449,13 @@ public class TileEntityNHG extends TileEntity implements IInventory { this.neutrons = ItemStack.loadItemStackFromNBT(tag.getCompoundTag("Neutrons")); this.progress = tag.getInteger("Progress"); + this.coreTemp = tag.getFloat("coreTemp"); } public void writeCustomNBT(NBTTagCompound tag) { tag.setInteger("Progress", this.progress); + tag.setFloat("coreTemp", this.coreTemp); if(neutrons != null) { NBTTagCompound produce = new NBTTagCompound(); neutrons.writeToNBT(produce); diff --git a/src/Java/miscutil/core/util/Utils.java b/src/Java/miscutil/core/util/Utils.java index 37a4b5bb56..78ea160bac 100644 --- a/src/Java/miscutil/core/util/Utils.java +++ b/src/Java/miscutil/core/util/Utils.java @@ -115,6 +115,13 @@ public class Utils { FMLLog.severe("MiscUtils: "+s); } } + + //Developer Logger + public static void LOG_SPECIFIC_WARNING(String whatToLog, String msg, int line){ + if (CORE.DEBUG){ + FMLLog.warning("MiscUtils |"+line+"| "+whatToLog+" | "+msg); + } + } public static void paintBox(Graphics g, int MinA, int MinB, int MaxA, int MaxB){ g.drawRect (MinA, MinB, MaxA, MaxB); @@ -196,6 +203,15 @@ public class Utils { public static double decimalRoundingToWholes(double d) { return 5*(Math.round(d/5)); } + + //Can be divided by + public static boolean divideXintoY(int x, int y){ + if ((x % y) == 0) + { + return true; + } + return false; + } //Converts temps for GT machines, then rounds for ease of use. public static float celsiusToKelvin(int i){ diff --git a/src/Java/miscutil/core/util/UtilsItems.java b/src/Java/miscutil/core/util/UtilsItems.java index d939f2a9bc..8587deabd0 100644 --- a/src/Java/miscutil/core/util/UtilsItems.java +++ b/src/Java/miscutil/core/util/UtilsItems.java @@ -6,6 +6,8 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; +import miscutil.core.common.compat.COMPAT_HANDLER; +import miscutil.core.handler.registration.LateRegistrationHandler; import miscutil.core.handler.registration.RegistrationHandler; import miscutil.core.lib.CORE; import miscutil.core.lib.LoadedMods; @@ -30,11 +32,7 @@ public class UtilsItems { Utils.LOG_WARNING("Found: "+em1.toString()); if (em1 != null){ em = em1; - } - else { - em = null; - return null; - } + } if (em != null ){ ItemStack returnStack = new ItemStack(em,1); return returnStack; @@ -211,7 +209,12 @@ public class UtilsItems { try { GameRegistry.addRecipe(new ShapedOreRecipe(resultItem.copy(), (Object[]) validSlots.toArray())); Utils.LOG_INFO("Success! Added a recipe for "+resultItem.toString()); - RegistrationHandler.recipesSuccess++; + if (!COMPAT_HANDLER.areInitItemsLoaded){ + RegistrationHandler.recipesSuccess++; + } + else { + LateRegistrationHandler.recipesSuccess++; + } } catch(NullPointerException | ClassCastException k){ k.getMessage(); @@ -219,7 +222,12 @@ public class UtilsItems { k.printStackTrace(); k.getLocalizedMessage(); Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+resultItem.getUnlocalizedName()); - RegistrationHandler.recipesFailed++; + if (!COMPAT_HANDLER.areInitItemsLoaded){ + RegistrationHandler.recipesFailed++; + } + else { + LateRegistrationHandler.recipesFailed++; + } } } @@ -251,19 +259,22 @@ public class UtilsItems { Utils.LOG_ERROR("_______"); - String lineOne = a+b+c; Utils.LOG_ERROR("|"+a+"|"+b+"|"+c+"|"); Utils.LOG_ERROR("_______"); - String lineTwo = d+e+f; Utils.LOG_ERROR("|"+d+"|"+e+"|"+f+"|"); Utils.LOG_ERROR("_______"); - String lineThree = g+h+i; Utils.LOG_ERROR("|"+g+"|"+h+"|"+i+"|"); Utils.LOG_ERROR("_______"); - validSlots.add(0, lineOne); - validSlots.add(1, lineTwo); - validSlots.add(2, lineThree); + validSlots.add(0, a); + validSlots.add(1, b); + validSlots.add(2, c); + validSlots.add(3, d); + validSlots.add(4, e); + validSlots.add(5, f); + validSlots.add(6, g); + validSlots.add(7, h); + validSlots.add(8, i); try { //GameRegistry.addRecipe(new ShapelessOreRecipe(Output, outputAmount), (Object[]) validSlots.toArray()); @@ -393,6 +404,7 @@ public class UtilsItems { } public static void recipeBuilder(Object[] array, ItemStack outPut) { + Utils.LOG_SPECIFIC_WARNING("object Array - recipeBuilder", "Attempting to build a recipe using an object array as an input, splitting it, then running the normal recipeBuilder() method.", 396); Object a=null; Object b=null; Object c=null; @@ -402,7 +414,7 @@ public class UtilsItems { Object g=null; Object h=null; Object i=null; - for(int z =0; z < array.length; z++){ + for(int z =0; z <= array.length; z++){ array[z].toString(); switch(z) { diff --git a/src/Java/miscutil/core/util/recipe/RECIPES_GREGTECH.java b/src/Java/miscutil/core/util/recipe/RECIPES_GREGTECH.java new file mode 100644 index 0000000000..b6f6e778de --- /dev/null +++ b/src/Java/miscutil/core/util/recipe/RECIPES_GREGTECH.java @@ -0,0 +1,85 @@ +package miscutil.core.util.recipe; + +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.util.GT_OreDictUnificator; +import miscutil.core.lib.CORE; +import miscutil.core.util.Utils; +import miscutil.core.util.UtilsItems; + +public class RECIPES_GREGTECH { + + public static void run(){ + Utils.LOG_INFO("Loading Recipes through GregAPI for Industrial Multiblocks."); + execute(); + } + + private static void execute(){ + cokeOvenRecipes(); + assemblerRecipes(); + + } + + private static void cokeOvenRecipes(){ + Utils.LOG_INFO("Loading Recipes for Industrial Coking Oven."); + + try { + + //GT Logs to Charcoal Recipe + //With Sulfuric Acid + CORE.RA.addCokeOvenRecipe( + GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 2L), //Input 1 + GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), //Input 2 + Materials.SulfuricAcid.getFluid(20L), //Fluid Input + Materials.Creosote.getFluid(175L), //Fluid Output + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 2L), //Item Output + 800, //Time in ticks + 30); //EU + }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} + try { + + //Coal -> Coke Recipe + //With Sulfuric Acid + CORE.RA.addCokeOvenRecipe( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 2L), //Input 1 + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 1L), //Input 2 + Materials.SulfuricAcid.getFluid(60L), //Fluid Input + Materials.Creosote.getFluid(250L), //Fluid Output + UtilsItems.getItemStack("Railcraft:fuel.coke", 2), //Item Output + 600, //Time in ticks + 120); //EU + }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} + + try { + //GT Logs to Charcoal Recipe + //Without Sulfuric Acid + CORE.RA.addCokeOvenRecipe( + GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 2L), //Input 1 + GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), //Input 2 + Materials.SaltWater.getFluid(85L), //Fluid Input + Materials.Creosote.getFluid(145L), //Fluid Output + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 2L), //Item Output + 1200, //Time in ticks + 30); //EU + }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} + + try { + //Coal -> Coke Recipe + //Without Sulfuric Acid + CORE.RA.addCokeOvenRecipe( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 2L), //Input 1 + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 1L), //Input 2 + Materials.SaltWater.getFluid(185L), //Fluid Input + Materials.Creosote.getFluid(200L), //Fluid Output + UtilsItems.getItemStack("Railcraft:fuel.coke", 2), //Item Output + 900, //Time in ticks + 120); //EU + }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} + } + + private static void assemblerRecipes(){ + //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6L), ItemList.Casing_Turbine.get(1L, new Object[0]), ItemList.Casing_Turbine2.get(1L, new Object[0]), 50, 16); + //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6L), ItemList.Casing_Turbine.get(1L, new Object[0]), ItemList.Casing_Turbine3.get(1L, new Object[0]), 50, 16); + + } +} \ No newline at end of file diff --git a/src/Java/miscutil/core/util/recipe/RECIPES_MTWRAPPER.java b/src/Java/miscutil/core/util/recipe/RECIPES_MTWRAPPER.java new file mode 100644 index 0000000000..e30b3f1c04 --- /dev/null +++ b/src/Java/miscutil/core/util/recipe/RECIPES_MTWRAPPER.java @@ -0,0 +1,113 @@ +package miscutil.core.util.recipe; + +import java.util.ArrayList; + +import miscutil.core.util.Utils; +import miscutil.core.util.UtilsItems; +import miscutil.core.util.wrapper.var; +import net.minecraft.item.ItemStack; + +public class RECIPES_MTWRAPPER { + + public static int MT_RECIPES_LOADED = 0; + public static int MT_RECIPES_FAILED = 0; + + static var chestWood = new var("minecraft:chest>"); + static var slabWood = new var("ore:slabWood>"); + static var gemNetherQuartz = new var("ore:gemNetherQuartz>"); + static var glass = new var("ore:blockGlass>"); + static var sensorDaylight = new var("minecraft:daylight_detector>"); + static var blazeRod = new var("minecraft:blaze_rod>"); + static var saw = new var("ore:craftingToolSaw>"); + static var logWood = new var("ore:logWood>"); + static var button = new var("minecraft:stone_button>"); + static var stoneBlock = new var("minecraft:stone>"); + + public static void run(){ + /*addShaped(button.getStack(2), + null, stoneBlock, null, + null, stoneBlock, null, + null, null, null);*/ + /*addShaped(stoneStick.getStack(1), + stoneBlock, null, null, + stoneBlock, null, null, + null, null, null);*/ + addShaped(chestWood.getStack(2), + logWood, logWood, logWood, + logWood, null, logWood, + logWood, logWood, logWood); + addShaped(chestWood.getStack(4), + logWood, logWood, logWood, + logWood, saw, logWood, + logWood, logWood, logWood); + //Recipe Fixes + //remove(sensorDaylight); + addShaped(sensorDaylight.getStack(1), + glass, glass, glass, + gemNetherQuartz, gemNetherQuartz, gemNetherQuartz, + slabWood, slabWood, slabWood); + /*addShaped(ironBars .getStack( 8), + null, "", null, + "", "", "", + "", "", "");*/ + } + + + public static void addShaped(Object item_Output, + Object item_1, Object item_2, Object item_3, + Object item_4, Object item_5, Object item_6, + Object item_7, Object item_8, Object item_9){ + + + /* + * + * var item_1, var item_2, var item_3, + var item_4, var item_5, var item_6, + var item_7, var item_8, var item_9 + * + * + */ + + ItemStack outputItem = UtilsItems.getCorrectStacktype(item_Output, 1); + + ArrayList validSlots = new ArrayList(); + String a,b,c,d,e,f,g,h,i; + if (item_1 == null){ a = " ";} else { a = "1";validSlots.add('1');validSlots.add(item_1);} + if (item_2 == null){ b = " ";} else { b = "2";validSlots.add('2');validSlots.add(item_2);} + if (item_3 == null){ c = " ";} else { c = "3";validSlots.add('3');validSlots.add(item_3);} + if (item_4 == null){ d = " ";} else { d = "4";validSlots.add('4');validSlots.add(item_4);} + if (item_5 == null){ e = " ";} else { e = "5";validSlots.add('5');validSlots.add(item_5);} + if (item_6 == null){ f = " ";} else { f = "6";validSlots.add('6');validSlots.add(item_6);} + if (item_7 == null){ g = " ";} else { g = "7";validSlots.add('7');validSlots.add(item_7);} + if (item_8 == null){ h = " ";} else { h = "8";validSlots.add('8');validSlots.add(item_8);} + if (item_9 == null){ i = " ";} else { i = "9";validSlots.add('9');validSlots.add(item_9);} + + String lineOne = a+b+c; + String lineTwo = d+e+f; + String lineThree = g+h+i; + validSlots.add(0, lineOne); + validSlots.add(1, lineTwo); + validSlots.add(2, lineThree); + + try { + UtilsItems.recipeBuilder((Object[]) validSlots.toArray(), outputItem.copy()); + MT_RECIPES_LOADED++; + } + catch(NullPointerException | ClassCastException k){ + k.getMessage(); + k.getClass(); + k.printStackTrace(); + k.getLocalizedMessage(); + Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+((var) item_Output).getsanitizedName()); + MT_RECIPES_FAILED++; + } + } + + public static void addShapeless(){ + + } + + + +} + diff --git a/src/Java/miscutil/core/util/recipe/RECIPES_Machines.java b/src/Java/miscutil/core/util/recipe/RECIPES_Machines.java new file mode 100644 index 0000000000..9d324e69f0 --- /dev/null +++ b/src/Java/miscutil/core/util/recipe/RECIPES_Machines.java @@ -0,0 +1,458 @@ +package miscutil.core.util.recipe; + +import gregtech.api.enums.ItemList; +import miscutil.core.lib.LoadedMods; +import miscutil.core.util.Utils; +import miscutil.core.util.UtilsItems; +import miscutil.gregtech.api.enums.GregtechItemList; +import net.minecraft.item.ItemStack; + +public class RECIPES_Machines { + + //Outputs + //static ItemStack RECIPE_BufferCore_ULV = new ItemStack(GregtechEnergyBuffer.itemBufferCore); + static ItemStack RECIPE_SteamCondenser = GregtechItemList.Condensor_MAX.get(1); + static ItemStack RECIPE_IronBlastFurnace = GregtechItemList.Machine_Iron_BlastFurnace.get(1); + static ItemStack RECIPE_IronPlatedBricks = GregtechItemList.Casing_IronPlatedBricks.get(1); + static ItemStack RECIPE_Buffer_ULV = GregtechItemList.Energy_Buffer_1by1_ULV.get(1); + static ItemStack RECIPE_Buffer_LV = GregtechItemList.Energy_Buffer_1by1_LV.get(1); + static ItemStack RECIPE_Buffer_MV = GregtechItemList.Energy_Buffer_1by1_MV.get(1); + static ItemStack RECIPE_Buffer_HV = GregtechItemList.Energy_Buffer_1by1_HV.get(1); + static ItemStack RECIPE_Buffer_EV = GregtechItemList.Energy_Buffer_1by1_EV.get(1); + static ItemStack RECIPE_Buffer_IV = GregtechItemList.Energy_Buffer_1by1_IV.get(1); + static ItemStack RECIPE_Buffer_LuV = GregtechItemList.Energy_Buffer_1by1_LuV.get(1); + static ItemStack RECIPE_Buffer_ZPM = GregtechItemList.Energy_Buffer_1by1_ZPM.get(1); + static ItemStack RECIPE_Buffer_UV = GregtechItemList.Energy_Buffer_1by1_UV.get(1); + static ItemStack RECIPE_Buffer_MAX = GregtechItemList.Energy_Buffer_1by1_MAX.get(1); + //Industrial Centrifuge + static ItemStack RECIPE_IndustrialCentrifugeController = GregtechItemList.Industrial_Centrifuge.get(1); + static ItemStack RECIPE_IndustrialCentrifugeCasing = GregtechItemList.Casing_Centrifuge1.get(1); + //Industrial Coke Oven + static ItemStack RECIPE_IndustrialCokeOvenController = GregtechItemList.Industrial_CokeOven.get(1); + static ItemStack RECIPE_IndustrialCokeOvenFrame = GregtechItemList.Casing_CokeOven.get(1); + static ItemStack RECIPE_IndustrialCokeOvenCasingA = GregtechItemList.Casing_CokeOven_Coil1.get(1); + static ItemStack RECIPE_IndustrialCokeOvenCasingB = GregtechItemList.Casing_CokeOven_Coil2.get(1); + + + //Buffer Cores + static ItemStack RECIPE_BufferCore_ULV = UtilsItems.getItemStack("miscutils:item.itemBufferCore1", 1); + static ItemStack RECIPE_BufferCore_LV = UtilsItems.getItemStack("miscutils:item.itemBufferCore2", 1); + static ItemStack RECIPE_BufferCore_MV = UtilsItems.getItemStack("miscutils:item.itemBufferCore3", 1); + static ItemStack RECIPE_BufferCore_HV = UtilsItems.getItemStack("miscutils:item.itemBufferCore4", 1); + static ItemStack RECIPE_BufferCore_EV = UtilsItems.getItemStack("miscutils:item.itemBufferCore5", 1); + static ItemStack RECIPE_BufferCore_IV = UtilsItems.getItemStack("miscutils:item.itemBufferCore6", 1); + static ItemStack RECIPE_BufferCore_LuV = UtilsItems.getItemStack("miscutils:item.itemBufferCore7", 1); + static ItemStack RECIPE_BufferCore_ZPM = UtilsItems.getItemStack("miscutils:item.itemBufferCore8", 1); + static ItemStack RECIPE_BufferCore_UV = UtilsItems.getItemStack("miscutils:item.itemBufferCore9", 1); + static ItemStack RECIPE_BufferCore_MAX = UtilsItems.getItemStack("miscutils:item.itemBufferCore10", 1); + + + //Wire + static String wireTier1 = "wireGt08Lead"; + static String wireTier2 = "wireGt08Tin"; + static String wireTier3 = "wireGt08Copper"; + static String wireTier4 = "wireGt08Gold"; + static String wireTier5 = "wireGt08Aluminium"; + static String wireTier6 = "wireGt08Tungsten"; + static String wireTier7 = "wireGt08Osmium"; + static String wireTier8 = "wireGt08Naquadah"; + static String wireTier9 = "wireGt08Superconductor"; + static String wireTier10 = "wireGt16Superconductor"; + + //Wire + static String cableTier1 = "cableGt04Lead"; + static String cableTier2 = "cableGt04Tin"; + static String cableTier3 = "cableGt04Copper"; + static String cableTier4 = "cableGt04Gold"; + static String cableTier5 = "cableGt04Aluminium"; + static String cableTier6 = "cableGt04Tungsten"; + static String cableTier7 = "cableGt04Osmium"; + static String cableTier8 = "cableGt04Naquadah"; + static String cableTier9 = "cableGt04NiobiumTitanium"; + static String cableTier10 = "cableGt08NiobiumTitanium"; + + + //Plates + static String plateTier1 = "plateLead"; + static String plateTier2 = "plateTin"; + static String plateTier3 = "plateCopper"; + static String plateTier4 = "plateGold"; + static String plateTier5 = "plateAluminium"; + static String plateTier6 = "plateThorium"; + static String plateTier7 = "plateTungsten"; + static String plateTier8 = "plateTungstenSteel"; + static String plateTier9 = "plateOsmium"; + static String plateTier10 = "plateNaquadah"; + static String plateTier11 = "plateNeutronium"; + + //rods + static String rodTier1 = "stickLead"; + static String rodTier2 = "stickTin"; + static String rodTier3 = "stickCopper"; + static String rodTier4 = "stickGold"; + static String rodTier5 = "stickAluminium"; + static String rodTier6 = "stickThorium"; + static String rodTier7 = "stickTungsten"; + static String rodTier8 = "stickTungstenSteel"; + static String rodTier9 = "stickOsmium"; + static String rodTier10 = "stickNaquadah"; + static String rodTier11 = "stickNeutronium"; + + + //Machine Casings + static ItemStack machineCasing_ULV = ItemList.Casing_ULV.get(1); + static ItemStack machineCasing_LV = ItemList.Casing_LV.get(1); + static ItemStack machineCasing_MV = ItemList.Casing_MV.get(1); + static ItemStack machineCasing_HV = ItemList.Casing_HV.get(1); + static ItemStack machineCasing_EV = ItemList.Casing_EV.get(1); + static ItemStack machineCasing_IV = ItemList.Casing_IV.get(1); + static ItemStack machineCasing_LuV = ItemList.Casing_LuV.get(1); + static ItemStack machineCasing_ZPM = ItemList.Casing_ZPM.get(1); + static ItemStack machineCasing_UV = ItemList.Casing_UV.get(1); + static ItemStack machineCasing_MAX = ItemList.Casing_MAX.get(1); + + //Gearbox Casings + static ItemStack gearboxCasing_Tier_1 = ItemList.Casing_Gearbox_Bronze.get(1); + static ItemStack gearboxCasing_Tier_2 = ItemList.Casing_Gearbox_Steel.get(1); + static ItemStack gearboxCasing_Tier_3 = ItemList.Casing_Gearbox_Titanium.get(1); + static ItemStack gearboxCasing_Tier_4 = ItemList.Casing_Gearbox_TungstenSteel.get(1); + + //Cables + static String cableGt02Electrum = "cableGt02Electrum"; + + + //Plates + static String plateElectricalSteel= "plateElectricalSteel"; + static String plateEnergeticAlloy= "plateEnergeticAlloy"; + static String plateCobalt = "plateCobalt"; + static String plateBronze = "plateBronze"; + static String plateSteel = "plateSteel"; + + //Pipes + static String pipeLargeCopper="pipeLargeCopper"; + static String pipeHugeSteel="pipeHugeSteel"; + static String pipeHugeStainlessSteel="pipeHugeStainlessSteel"; + static String pipeHugeTitanium="pipeHugeTitanium"; + + //Lava Boiler + static ItemStack boiler_Coal = ItemList.Machine_Bronze_Boiler.get(1); + static ItemStack blockBricks = UtilsItems.getItemStack("minecraft:brick_block", 1); + + //Batteries + static String batteryBasic = "batteryBasic"; + static String batteryAdvanced = "batteryAdvanced"; + static String batteryElite = "batteryElite"; + static String batteryMaster = "batteryMaster"; + static String batteryUltimate = "batteryUltimate"; + + //Circuits + static String circuitPrimitive = "circuitPrimitive"; + static String circuitBasic = "circuitBasic"; + static String circuitGood = "circuitGood"; + static String circuitAdvanced = "circuitAdvanced"; + static String circuitData = "circuitData"; + static String circuitElite = "circuitElite"; + static String circuitMaster = "circuitMaster"; + static String circuitUltimate = "circuitUltimate"; + + //Machine Components + static ItemStack electricMotor_LV = ItemList.Electric_Motor_LV.get(1); + static ItemStack electricMotor_MV = ItemList.Electric_Motor_MV.get(1); + static ItemStack electricMotor_HV = ItemList.Electric_Motor_HV.get(1); + static ItemStack electricMotor_EV = ItemList.Electric_Motor_EV.get(1); + static ItemStack electricMotor_IV = ItemList.Electric_Motor_IV.get(1); + static ItemStack electricPump_LV = ItemList.Electric_Pump_LV.get(1); + static ItemStack electricPump_MV = ItemList.Electric_Pump_MV.get(1); + static ItemStack electricPump_HV = ItemList.Electric_Pump_HV.get(1); + static ItemStack electricPump_EV = ItemList.Electric_Pump_EV.get(1); + static ItemStack electricPump_IV = ItemList.Electric_Pump_IV.get(1); + static ItemStack electricPiston_LV = ItemList.Electric_Piston_LV.get(1); + static ItemStack electricPiston_MV = ItemList.Electric_Piston_MV.get(1); + static ItemStack electricPiston_HV = ItemList.Electric_Piston_HV.get(1); + static ItemStack electricPiston_EV = ItemList.Electric_Piston_EV.get(1); + static ItemStack electricPiston_IV = ItemList.Electric_Piston_IV.get(1); + static ItemStack robotArm_LV = ItemList.Robot_Arm_LV.get(1); + static ItemStack robotArm_MV = ItemList.Robot_Arm_MV.get(1); + static ItemStack robotArm_HV = ItemList.Robot_Arm_HV.get(1); + static ItemStack robotArm_EV = ItemList.Robot_Arm_EV.get(1); + static ItemStack robotArm_IV = ItemList.Robot_Arm_IV.get(1); + static ItemStack conveyorModule_LV = ItemList.Conveyor_Module_LV.get(1); + static ItemStack conveyorModule_MV = ItemList.Conveyor_Module_MV.get(1); + static ItemStack conveyorModule_HV = ItemList.Conveyor_Module_HV.get(1); + static ItemStack conveyorModule_EV = ItemList.Conveyor_Module_EV.get(1); + static ItemStack conveyorModule_IV = ItemList.Conveyor_Module_IV.get(1); + static ItemStack emitter_LV = ItemList.Emitter_LV.get(1); + static ItemStack emitter_MV = ItemList.Emitter_MV.get(1); + static ItemStack emitter_HV = ItemList.Emitter_HV.get(1); + static ItemStack emitter_EV = ItemList.Emitter_EV.get(1); + static ItemStack emitter_IV = ItemList.Emitter_IV.get(1); + static ItemStack fieldGenerator_LV = ItemList.Field_Generator_LV.get(1); + static ItemStack fieldGenerator_MV = ItemList.Field_Generator_MV.get(1); + static ItemStack fieldGenerator_HV = ItemList.Field_Generator_HV.get(1); + static ItemStack fieldGenerator_EV = ItemList.Field_Generator_EV.get(1); + static ItemStack fieldGenerator_IV = ItemList.Field_Generator_IV.get(1); + static ItemStack sensor_LV = ItemList.Sensor_LV.get(1); + static ItemStack sensor_MV = ItemList.Sensor_MV.get(1); + static ItemStack sensor_HV = ItemList.Sensor_HV.get(1); + static ItemStack sensor_EV = ItemList.Sensor_EV.get(1); + static ItemStack sensor_IV = ItemList.Sensor_IV.get(1); + + //Misc + static ItemStack INPUT_RCCokeOvenBlock = UtilsItems.getItemStackWithMeta(LoadedMods.Railcraft, "Railcraft:machine.alpha", "Coke_Oven_RC", 7, 1); + + + + //RobotArm, Conveyor, Emitter, Sensor, Field Generator + + + public static final void RECIPES_LOAD(){ + run(); + Utils.LOG_INFO("Loading Recipes for the Various machine blocks."); + } + + private static void run(){ + //Staballoy Dust - TEMP + UtilsItems.recipeBuilder("dustTitanium", "dustUranium", "dustUranium", + "dustUranium", "dustUranium", "dustUranium", + "dustUranium", "dustUranium", "dustUranium", + RECIPES_Shapeless.dustStaballoy); + + //Buffer Core + UtilsItems.recipeBuilder( + plateTier1, cableTier1, plateTier1, + circuitPrimitive, batteryBasic, circuitPrimitive, + plateTier1, cableTier1, plateTier1, + RECIPE_BufferCore_ULV); + UtilsItems.recipeBuilder( + plateTier2, cableTier2, plateTier2, + circuitBasic, batteryBasic, circuitBasic, + plateTier2, cableTier2, plateTier2, + RECIPE_BufferCore_LV); + UtilsItems.recipeBuilder( + plateTier3, cableTier3, plateTier3, + circuitGood, batteryAdvanced, circuitGood, + plateTier3, cableTier3, plateTier3, + RECIPE_BufferCore_MV); + UtilsItems.recipeBuilder( + plateTier4, cableTier4, plateTier4, + circuitAdvanced, batteryAdvanced, circuitAdvanced, + plateTier4, cableTier4, plateTier4, + RECIPE_BufferCore_HV); + UtilsItems.recipeBuilder( + plateTier5, cableTier5, plateTier5, + circuitData, batteryElite, circuitData, + plateTier5, cableTier5, plateTier5, + RECIPE_BufferCore_EV); + + UtilsItems.recipeBuilder( + plateTier6, cableTier6, plateTier6, + circuitData, batteryElite, circuitElite, + plateTier6, cableTier6, plateTier6, + RECIPE_BufferCore_IV); + UtilsItems.recipeBuilder( + plateTier7, cableTier7, plateTier7, + circuitElite, batteryMaster, circuitElite, + plateTier7, cableTier7, plateTier7, + RECIPE_BufferCore_LuV); + UtilsItems.recipeBuilder( + plateTier8, cableTier8, plateTier8, + circuitMaster, batteryMaster, circuitMaster, + plateTier8, cableTier8, plateTier8, + RECIPE_BufferCore_ZPM); + UtilsItems.recipeBuilder( + plateTier9, cableTier9, plateTier9, + circuitMaster, batteryUltimate, circuitUltimate, + plateTier9, cableTier9, plateTier9, + RECIPE_BufferCore_UV); + UtilsItems.recipeBuilder( + plateTier10, cableTier10, plateTier10, + circuitUltimate, batteryUltimate, circuitUltimate, + plateTier10, cableTier10, plateTier10, + RECIPE_BufferCore_MAX); + + + + + + + + + + + + + //Battery Buffer #1 + UtilsItems.recipeBuilder( + wireTier1, RECIPE_BufferCore_ULV, wireTier1, + wireTier1, machineCasing_ULV, wireTier1, + circuitPrimitive, null, circuitPrimitive, + RECIPE_Buffer_ULV); + + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier2, RECIPE_BufferCore_LV, wireTier2, + wireTier2, machineCasing_LV, wireTier2, + circuitPrimitive, circuitBasic, circuitPrimitive, + RECIPE_Buffer_LV); + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier3, RECIPE_BufferCore_MV, wireTier3, + wireTier3, machineCasing_MV, wireTier3, + circuitBasic, circuitGood, circuitBasic, + RECIPE_Buffer_MV); + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier4, RECIPE_BufferCore_HV, wireTier4, + wireTier4, machineCasing_HV, wireTier4, + circuitGood, circuitAdvanced, circuitGood, + RECIPE_Buffer_HV); + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier5, RECIPE_BufferCore_EV, wireTier5, + wireTier5, machineCasing_EV, wireTier5, + circuitAdvanced, circuitElite, circuitAdvanced, + RECIPE_Buffer_EV); + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier6, RECIPE_BufferCore_IV, wireTier6, + wireTier6, machineCasing_IV, wireTier6, + circuitElite, circuitMaster, circuitElite, + RECIPE_Buffer_IV); + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier7, RECIPE_BufferCore_LuV, wireTier7, + wireTier7, machineCasing_LuV, wireTier7, + circuitMaster, circuitElite, circuitMaster, + RECIPE_Buffer_LuV); + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier8, RECIPE_BufferCore_ZPM, wireTier8, + wireTier8, machineCasing_ZPM, wireTier8, + circuitMaster, circuitUltimate, circuitMaster, + RECIPE_Buffer_ZPM); + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier9, RECIPE_BufferCore_UV, wireTier9, + wireTier9, machineCasing_UV, wireTier9, + circuitUltimate, circuitMaster, circuitUltimate, + RECIPE_Buffer_UV); + //Battery Buffer + UtilsItems.recipeBuilder( + wireTier10, RECIPE_BufferCore_MAX, wireTier10, + wireTier10, machineCasing_MAX, wireTier10, + circuitUltimate, plateTier11, circuitUltimate, + RECIPE_Buffer_MAX); + + + //Steam Condenser + UtilsItems.recipeBuilder( + pipeLargeCopper, pipeHugeSteel, pipeLargeCopper, + plateEnergeticAlloy, electricPump_HV, plateEnergeticAlloy, + plateEnergeticAlloy, pipeLargeCopper, plateEnergeticAlloy, + RECIPE_SteamCondenser); + + //Iron BF + UtilsItems.recipeBuilder( + "plateDoubleAnyIron", "craftingFurnace", "plateDoubleAnyIron", + boiler_Coal, machineCasing_ULV, boiler_Coal, + "plateDoubleAnyIron", "bucketLava", "plateDoubleAnyIron", + RECIPE_IronBlastFurnace); + + //Iron plated Bricks + UtilsItems.recipeBuilder( + "plateAnyIron", RECIPES_Tools.craftingToolHardHammer, "plateAnyIron", + "plateAnyIron", blockBricks, "plateAnyIron", + "plateAnyIron", RECIPES_Tools.craftingToolWrench, "plateAnyIron", + RECIPE_IronPlatedBricks); + + + + + //Industrial Centrifuge + UtilsItems.recipeBuilder( + circuitElite, pipeHugeStainlessSteel, circuitElite, + plateTier6, electricPump_EV, plateTier6, + plateTier8, machineCasing_EV, plateTier8, + RECIPE_IndustrialCentrifugeController); + + //Centrifuge Casing + UtilsItems.recipeBuilder( + plateTier6, "stickElectrum", plateTier6, + plateTier8, "stickElectrum", plateTier8, + plateTier6, "stickElectrum", plateTier6, + RECIPE_IndustrialCentrifugeCasing); + + //Industrial Coke Oven + UtilsItems.recipeBuilder( + plateCobalt, circuitAdvanced, plateCobalt, + machineCasing_HV, INPUT_RCCokeOvenBlock, machineCasing_HV, + plateCobalt, circuitAdvanced, plateCobalt, + RECIPE_IndustrialCokeOvenController); + + //Coke Oven Frame Casing + UtilsItems.recipeBuilder( + plateTier8, rodTier8, plateTier8, + rodTier8, "frameGtCobalt", rodTier8, + plateTier8, rodTier8, plateTier8, + RECIPE_IndustrialCokeOvenFrame); + + //Coke Oven Coil 1 + UtilsItems.recipeBuilder( + plateBronze, plateBronze, plateBronze, + "frameGtBronze", gearboxCasing_Tier_1, "frameGtBronze", + plateBronze, plateBronze, plateBronze, + RECIPE_IndustrialCokeOvenCasingA); + + //Coke Oven Coil 2 + UtilsItems.recipeBuilder( + plateSteel, plateSteel, plateSteel, + "frameGtSteel", gearboxCasing_Tier_2, "frameGtSteel", + plateSteel, plateSteel, plateSteel, + RECIPE_IndustrialCokeOvenCasingB); + + + + + + + + + + + + + + + + + + + + + + Utils.LOG_INFO("Done loading recipes for the Various machine blocks."); + + + + + + + + + + + + + + + + + + + + + + + + } +} diff --git a/src/Java/miscutil/core/util/recipe/RECIPES_Shapeless.java b/src/Java/miscutil/core/util/recipe/RECIPES_Shapeless.java new file mode 100644 index 0000000000..5b09f9a3a0 --- /dev/null +++ b/src/Java/miscutil/core/util/recipe/RECIPES_Shapeless.java @@ -0,0 +1,41 @@ +package miscutil.core.util.recipe; + +import gregtech.api.enums.ItemList; +import miscutil.core.lib.LoadedMods; +import miscutil.core.util.Utils; +import miscutil.core.util.UtilsItems; +import net.minecraft.item.ItemStack; + +public class RECIPES_Shapeless { + + static ItemStack dustStaballoy = UtilsItems.getItemStackWithMeta(LoadedMods.Gregtech, "gregtech:gt.metaitem.01", "Staballoy Dust", 2319, 1); + + //Circuits + static String circuitPrimitive = "circuitPrimitive"; + static String circuitBasic = "circuitBasic"; + static String circuitGood = "circuitGood"; + static String circuitAdvanced = "circuitAdvanced"; + static String circuitData = "circuitData"; + static String circuitElite = "circuitElite"; + static String circuitMaster = "circuitMaster"; + static String circuitUltimate = "circuitUltimate"; + static ItemStack gearboxCasing_Tier_1 = ItemList.Casing_Gearbox_Bronze.get(1); + + public static final void RECIPES_LOAD(){ + //run(); + Utils.LOG_INFO("Loading Shapeless Recipes."); + } + + private static void run(){ + UtilsItems.shapelessBuilder(dustStaballoy, + "dustTitanium", "dustUranium", "dustUranium", + "dustUranium", "dustUranium", "dustUranium", + "dustUranium", "dustUranium", "dustUranium"); + + UtilsItems.shapelessBuilder(gearboxCasing_Tier_1, + circuitPrimitive, circuitPrimitive, circuitPrimitive, + circuitPrimitive, circuitPrimitive, circuitPrimitive, + circuitPrimitive, circuitPrimitive, circuitPrimitive); + } + +} diff --git a/src/Java/miscutil/core/util/recipe/RECIPES_Tools.java b/src/Java/miscutil/core/util/recipe/RECIPES_Tools.java new file mode 100644 index 0000000000..c4db32fc3f --- /dev/null +++ b/src/Java/miscutil/core/util/recipe/RECIPES_Tools.java @@ -0,0 +1,176 @@ +package miscutil.core.util.recipe; + +import miscutil.core.item.ModItems; +import miscutil.core.util.UtilsItems; +import net.minecraft.block.Block; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraftforge.oredict.OreDictionary; + +public class RECIPES_Tools { + + //Outputs + static ItemStack RECIPE_StaballoyPickaxe = new ItemStack(ModItems.itemStaballoyPickaxe); + static ItemStack RECIPE_StaballoyAxe = new ItemStack(ModItems.itemStaballoyAxe); + static ItemStack RECIPE_SandstoneHammer = new ItemStack(ModItems.itemSandstoneHammer); + static ItemStack RECIPE_StaballoyIngot = new ItemStack(ModItems.itemIngotStaballoy); + static ItemStack RECIPE_SandStone = new ItemStack(Blocks.sandstone, 2); + static ItemStack RECIPE_Sand = new ItemStack(Blocks.sand, 4); + + static ItemStack RECIPE_DivisionSigil = new ItemStack(UtilsItems.getItem("ExtraUtilities:divisionSigil")); + + //MC Items + static Item Apple = Items.apple; + + //MC Blocks + static Block CobbleStone = Blocks.cobblestone; + static Block Dirt = Blocks.dirt; + static Block Sand = Blocks.sand; + static Block Gravel = Blocks.gravel; + static Block Sandstone = Blocks.sandstone; + + //null + static String empty = " "; + + //Batteries + static String batteryBasic = "batteryBasic"; + static String batteryAdvanced = "batteryAdvanced"; + static String batteryElite = "batteryElite"; + static String batteryMaster = "batteryMaster"; + static String batteryUltimate = "batteryUltimate"; + + //Circuits + static String circuitPrimitive = "circuitPrimitive"; + static String circuitBasic = "circuitBasic"; + static String circuitGood = "circuitGood"; + static String circuitAdvanced = "circuitAdvanced"; + static String circuitElite = "circuitElite"; + static String circuitMaster = "circuitMaster"; + static String circuitUltimate = "circuitUltimate"; + + //Cables + static String cableGt01Electrum = "cableGt01Electrum"; + static String cableGt02Electrum = "cableGt02Electrum"; + static String cableGt01RedstoneAlloy = "cableGt01RedstoneAlloy"; + static String cableGt02RedstoneAlloy = "cableGt02RedstoneAlloy"; + static String cableGt01Copper = "cableGt01Copper"; + static String cableGt02Copper = "cableGt02Copper"; + static String cableGt01AnnealedCopper = "cableGt01AnnealedCopper"; + static String cableGt02AnnealedCopper = "cableGt02AnnealedCopper"; + + //Rods + static String stickStaballoy= "stickStaballoy"; + static String stickTitanium= "stickTitanium"; + static String stickIron= "stickIron"; + static String stickGold= "stickGold"; + static String stickSilver= "stickSilver"; + static String stickSteel= "stickSteel"; + static String stickBronze= "stickBronze"; + static String stickTungsten= "stickTungsten"; + static String stickRedAlloy= "stickRedAlloy"; + static String stickInvar= "stickInvar"; + static String stickElectrum= "stickElectrum"; + static String stickElectricalSteel= "stickElectricalSteel"; + + //Plates + static String plateStaballoy= "plateStaballoy"; + static String plateTitanium= "plateTitanium"; + static String plateIron= "plateIron"; + static String plateGold= "plateGold"; + static String plateSilver= "plateSilver"; + static String plateSteel= "plateSteel"; + static String plateBronze= "plateBronze"; + static String plateTungsten= "plateTungsten"; + static String plateRedAlloy= "plateRedAlloy"; + static String plateInvar= "plateInvar"; + static String plateElectrum= "plateElectrum"; + static String plateElectricalSteel= "plateElectricalSteel"; + + //Ingots + static String ingotStaballoy= "ingotStaballoy"; + static String ingotTitanium= "ingotTitanium"; + static String ingotIron= "ingotIron"; + static String ingotGold= "ingotGold"; + static String ingotSilver= "ingotSilver"; + static String ingotSteel= "ingotSteel"; + static String ingotBronze= "ingotBronze"; + static String ingotTungsten= "ingotTungsten"; + static String ingotRedAlloy= "ingotRedAlloy"; + static String ingotInvar= "ingotInvar"; + static String ingotElectrum= "ingotElectrum"; + static String ingotUranium= "ingotUranium"; + static String ingotElectricalSteel= "ingotElectricalSteel"; + + //Crafting Tools + static String craftingToolHardHammer = "craftingToolHardHammer"; + static String craftingToolSoftHammer = "craftingToolSoftHammer"; + static String craftingToolFile = "craftingToolFile"; + static String craftingToolSaw = "craftingToolSaw"; + static String craftingToolPickaxe = "craftingToolPickaxe"; + static String craftingToolWrench = "craftingToolWrench"; + static String craftingToolCrowbar = "craftingToolCrowbar"; + static String craftingToolKnife = "craftingToolKnife"; + static String craftingToolScrewdriver = "craftingToolScrewdriver"; + + static ItemStack sandHammer = new ItemStack (ModItems.itemSandstoneHammer, 1, OreDictionary.WILDCARD_VALUE); + static String craftingToolSandHammer = "craftingToolSandHammer"; + + public static final void RECIPES_LOAD(){ + + //plateStaballoy = new ItemStack(ModItems.itemPlateStaballoy); + //ingotStaballoy = new ItemStack(ModItems.itemIngotStaballoy); + + //Pickaxes + run(); + + } + + private static void run(){ + //Staballoy Pickaxe + UtilsItems.recipeBuilder( + plateStaballoy, plateStaballoy, ingotStaballoy, + craftingToolFile, stickTungsten, craftingToolHardHammer, + craftingToolWrench, stickTungsten, craftingToolHardHammer, + RECIPE_StaballoyPickaxe); + + //Staballoy Axe + UtilsItems.recipeBuilder( + plateStaballoy, ingotStaballoy, craftingToolHardHammer, + plateStaballoy, stickTungsten, craftingToolHardHammer, + craftingToolFile, stickTungsten, craftingToolWrench, + RECIPE_StaballoyAxe); + + //Cobble to Sand + UtilsItems.recipeBuilder( + CobbleStone, CobbleStone, CobbleStone, + CobbleStone, sandHammer, CobbleStone, + CobbleStone, CobbleStone, CobbleStone, + RECIPE_Sand); + + //Sand to Sandstone + UtilsItems.recipeBuilder( + Sand, Sand, Sand, + Sand, sandHammer, Sand, + Sand, Sand, Sand, + RECIPE_SandStone); + + //Sandstone Hammer + UtilsItems.recipeBuilder( + plateElectrum, ingotElectrum, plateElectrum, + craftingToolScrewdriver, stickBronze, craftingToolHardHammer, + null, stickSteel, null, + RECIPE_SandstoneHammer); + + //Division Sigil + UtilsItems.recipeBuilder( + "plateNetherStar", "gemIridium", "plateNetherStar", + "plateIridium", craftingToolHardHammer, "plateIridium", + "plateNetherStar", "gemIridium", "plateNetherStar", + RECIPE_DivisionSigil); + + + } + +} diff --git a/src/Java/miscutil/core/util/recipe/ShapedRecipeObject.java b/src/Java/miscutil/core/util/recipe/ShapedRecipeObject.java new file mode 100644 index 0000000000..5a7bd9719f --- /dev/null +++ b/src/Java/miscutil/core/util/recipe/ShapedRecipeObject.java @@ -0,0 +1,43 @@ +package miscutil.core.util.recipe; + +import miscutil.core.util.Utils; +import miscutil.core.util.UtilsItems; +import net.minecraft.item.ItemStack; + +public class ShapedRecipeObject { + + public Object object_A; + public Object object_B; + public Object object_C; + public Object object_D; + public Object object_E; + public Object object_F; + public Object object_G; + public Object object_H; + public Object object_I; + public ItemStack object_OUTPUT; + + public ShapedRecipeObject( + Object input_A,Object input_B,Object input_C, + Object input_D,Object input_E,Object input_F, + Object input_G,Object input_H,Object input_I, + Object input_Output){ + this.object_A = input_A; + this.object_B = input_B; + this.object_C = input_C; + this.object_D = input_D; + this.object_E = input_E; + this.object_F = input_F; + this.object_G = input_G; + this.object_H = input_H; + this.object_I = input_I; + ItemStack output_A = (ItemStack) input_Output; + this.object_OUTPUT = output_A; + Utils.LOG_SPECIFIC_WARNING("ShapedRecipeObject", "New object created.", 36); + } + + public void buildRecipe(){ + UtilsItems.recipeBuilder(object_A, object_B, object_C, object_D, object_E, object_F, object_G, object_H, object_I, object_OUTPUT); + } + +} -- cgit