aboutsummaryrefslogtreecommitdiff
path: root/src/Java/miscutil/core/util/recipe
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-06-17 16:55:21 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-06-17 16:55:21 +1000
commit92b359cbee7aeca68bf4fa2a1c9530e777f6ed11 (patch)
tree9a8b43617b2bbfb71b96ff240491d83ace1b5b0b /src/Java/miscutil/core/util/recipe
parentb96d8f61d1550d61f432290431ebf8a96da252f2 (diff)
downloadGT5-Unofficial-92b359cbee7aeca68bf4fa2a1c9530e777f6ed11.tar.gz
GT5-Unofficial-92b359cbee7aeca68bf4fa2a1c9530e777f6ed11.tar.bz2
GT5-Unofficial-92b359cbee7aeca68bf4fa2a1c9530e777f6ed11.zip
~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.
Diffstat (limited to 'src/Java/miscutil/core/util/recipe')
-rw-r--r--src/Java/miscutil/core/util/recipe/RECIPES_GREGTECH.java85
-rw-r--r--src/Java/miscutil/core/util/recipe/RECIPES_MTWRAPPER.java113
-rw-r--r--src/Java/miscutil/core/util/recipe/RECIPES_Machines.java458
-rw-r--r--src/Java/miscutil/core/util/recipe/RECIPES_Shapeless.java41
-rw-r--r--src/Java/miscutil/core/util/recipe/RECIPES_Tools.java176
-rw-r--r--src/Java/miscutil/core/util/recipe/ShapedRecipeObject.java43
6 files changed, 916 insertions, 0 deletions
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, "<ore:craftingToolWrench>", null,
+ "<ore:stickAnyIron>", "<ore:stickAnyIron>", "<ore:stickAnyIron>",
+ "<ore:stickAnyIron>", "<ore:stickAnyIron>", "<ore:stickAnyIron>");*/
+ }
+
+
+ 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<Object> validSlots = new ArrayList<Object>();
+ 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);
+ }
+
+}