aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/kubatech/loaders/RecipeLoader.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/kubatech/loaders/RecipeLoader.java')
-rw-r--r--src/main/java/kubatech/loaders/RecipeLoader.java150
1 files changed, 60 insertions, 90 deletions
diff --git a/src/main/java/kubatech/loaders/RecipeLoader.java b/src/main/java/kubatech/loaders/RecipeLoader.java
index 5df6f8aa4f..62f3219c07 100644
--- a/src/main/java/kubatech/loaders/RecipeLoader.java
+++ b/src/main/java/kubatech/loaders/RecipeLoader.java
@@ -20,12 +20,17 @@
package kubatech.loaders;
+import static gregtech.api.enums.ItemList.FluidExtractorUHV;
+import static gregtech.api.enums.MetaTileEntityIDs.DraconicEvolutionFusionCrafterController;
+import static gregtech.api.enums.MetaTileEntityIDs.ExtremeEntityCrusherController;
+import static gregtech.api.enums.MetaTileEntityIDs.ExtremeIndustrialApiaryController;
+import static gregtech.api.enums.MetaTileEntityIDs.ExtremeIndustrialGreenhouseController;
import static gregtech.api.enums.Mods.Avaritia;
import static gregtech.api.enums.Mods.DraconicEvolution;
import static gregtech.api.enums.Mods.EnderIO;
import static gregtech.api.enums.Mods.Forestry;
-import static gregtech.api.enums.Mods.GregTech;
import static gregtech.api.enums.Mods.NewHorizonsCoreMod;
+import static gregtech.api.enums.Mods.OpenBlocks;
import static gregtech.api.enums.Mods.PamsHarvestCraft;
import static gregtech.api.recipe.RecipeMaps.benderRecipes;
import static gregtech.api.recipe.RecipeMaps.cutterRecipes;
@@ -69,8 +74,6 @@ import static kubatech.api.enums.ItemList.WhiteTeaLeaf;
import static kubatech.api.enums.ItemList.YellowTea;
import static kubatech.api.enums.ItemList.YellowTeaLeaf;
-import java.lang.reflect.InvocationTargetException;
-
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
@@ -81,7 +84,6 @@ import forestry.plugins.PluginCore;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
-import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Utility;
import ic2.core.Ic2Items;
@@ -97,29 +99,50 @@ public class RecipeLoader {
| GT_ModHandler.RecipeBits.BUFFERED
| GT_ModHandler.RecipeBits.DISMANTLEABLE;
- private static int MTEID = 14201;
- private static final int MTEIDMax = 14300;
+ public static void registerMTEs() {
+ if (EnderIO.isModLoaded()) {
+ ExtremeEntityCrusher.set(
+ new GT_MetaTileEntity_ExtremeEntityCrusher(
+ ExtremeEntityCrusherController.ID,
+ "multimachine.entitycrusher",
+ "Extreme Entity Crusher").getStackForm(1));
+ }
+
+ if (Forestry.isModLoaded()) {
+ ExtremeIndustrialApiary.set(
+ new GT_MetaTileEntity_MegaIndustrialApiary(
+ ExtremeIndustrialApiaryController.ID,
+ "multimachine.extremeapiary",
+ "Industrial Apicultural Acclimatiser and Drone Domestication Station").getStackForm(1));
+ }
+
+ ExtremeIndustrialGreenhouse.set(
+ new GT_MetaTileEntity_ExtremeIndustrialGreenhouse(
+ ExtremeIndustrialGreenhouseController.ID,
+ "multimachine.extremegreenhouse",
+ "Extreme Industrial Greenhouse").getStackForm(1));
+
+ if (DraconicEvolution.isModLoaded()) {
+ DraconicEvolutionFusionCrafter.set(
+ new GT_MetaTileEntity_DEFusionCrafter(
+ DraconicEvolutionFusionCrafterController.ID,
+ "multimachine.defusioncrafter",
+ "Draconic Evolution Fusion Crafter").getStackForm(1));
+ }
+ }
public static void addRecipes() {
- if (registerMTE(
- ExtremeEntityCrusher,
- GT_MetaTileEntity_ExtremeEntityCrusher.class,
- "multimachine.entitycrusher",
- "Extreme Entity Crusher",
- EnderIO.isModLoaded())) {
+
+ if (EnderIO.isModLoaded()) {
GT_ModHandler.addCraftingRecipe(
ItemList.ExtremeEntityCrusher.get(1),
bitsd,
new Object[] { "RCR", "CHC", "VVV", 'R', gregtech.api.enums.ItemList.Robot_Arm_EV, 'C',
OrePrefixes.circuit.get(Materials.EV), 'H', gregtech.api.enums.ItemList.Hull_EV, 'V',
- GT_ModHandler.getModItem("OpenBlocks", "vacuumhopper", 1, new ItemStack(Blocks.hopper)) });
+ GT_ModHandler.getModItem(OpenBlocks.ID, "vacuumhopper", 1, new ItemStack(Blocks.hopper)) });
}
- if (registerMTE(
- ExtremeIndustrialApiary,
- GT_MetaTileEntity_MegaIndustrialApiary.class,
- "multimachine.extremeapiary",
- "Industrial Apicultural Acclimatiser and Drone Domestication Station",
- Forestry.isModLoaded())) {
+
+ if (Forestry.isModLoaded()) {
GT_Values.RA.stdBuilder()
.metadata(RESEARCH_ITEM, gregtech.api.enums.ItemList.Machine_IndustrialApiary.get(1))
.metadata(RESEARCH_TIME, 8 * MINUTES + 20 * SECONDS)
@@ -139,81 +162,28 @@ public class RecipeLoader {
.eut(2_048_000)
.duration(5 * MINUTES)
.addTo(AssemblyLine);
+
+ GT_MetaTileEntity_ExtremeIndustrialGreenhouse
+ .addFertilizerItem(PluginCore.items.fertilizerCompound.getItemStack(1));
}
- if (registerMTEUsingID(
- 12_792,
- ExtremeIndustrialGreenhouse,
- GT_MetaTileEntity_ExtremeIndustrialGreenhouse.class,
- "multimachine.extremegreenhouse",
- "Extreme Industrial Greenhouse",
- true /* IC2 is always loaded */)) {
- GT_ModHandler.addCraftingRecipe(
- ExtremeIndustrialGreenhouse.get(1),
- bitsd,
- new Object[] { "AZA", "BRB", "AZA", 'B', gregtech.api.enums.ItemList.Casing_CleanStainlessSteel, 'R',
- GT_ModHandler.getModItem("EnderIO", "blockFarmStation", 1, new ItemStack(Items.diamond_hoe)), 'A',
- NewHorizonsCoreMod.isModLoaded()
- ? GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 1, 11104) // IV World Accelerator
- : gregtech.api.enums.ItemList.Robot_Arm_IV,
- 'Z', OrePrefixes.circuit.get(Materials.ZPM) });
-
- // Vanilla should always be loaded
- GT_MetaTileEntity_ExtremeIndustrialGreenhouse.addFertilizerItem(new ItemStack(Items.dye, 1, 15));
- // IC2 should always be loaded
- GT_MetaTileEntity_ExtremeIndustrialGreenhouse.addFertilizerItem(Ic2Items.fertilizer);
- if (Forestry.isModLoaded()) {
- GT_MetaTileEntity_ExtremeIndustrialGreenhouse
- .addFertilizerItem(PluginCore.items.fertilizerCompound.getItemStack(1));
- }
- }
- if (registerMTEUsingID(
- 5_001,
- DraconicEvolutionFusionCrafter,
- GT_MetaTileEntity_DEFusionCrafter.class,
- "multimachine.defusioncrafter",
- "Draconic Evolution Fusion Crafter",
- DraconicEvolution.isModLoaded())) {
+
+ GT_ModHandler.addCraftingRecipe(
+ ExtremeIndustrialGreenhouse.get(1),
+ bitsd,
+ new Object[] { "AZA", "BRB", "AZA", 'B', gregtech.api.enums.ItemList.Casing_CleanStainlessSteel, 'R',
+ GT_ModHandler.getModItem(EnderIO.ID, "blockFarmStation", 1, new ItemStack(Items.diamond_hoe)), 'A',
+ gregtech.api.enums.ItemList.AcceleratorIV.get(1), 'Z', OrePrefixes.circuit.get(Materials.ZPM) });
+
+ // Vanilla should always be loaded
+ GT_MetaTileEntity_ExtremeIndustrialGreenhouse.addFertilizerItem(new ItemStack(Items.dye, 1, 15));
+ // IC2 should always be loaded
+ GT_MetaTileEntity_ExtremeIndustrialGreenhouse.addFertilizerItem(Ic2Items.fertilizer);
+
+ if (DraconicEvolution.isModLoaded()) {
// Controller recipe added in TecTech
DEFCRecipes.addRecipes();
}
RegisterTeaLine();
- if (MTEID > MTEIDMax + 1) throw new RuntimeException("MTE ID's");
- }
-
- private static boolean registerMTE(ItemList item, Class<? extends MetaTileEntity> mte, String aName,
- String aNameRegional, boolean... deps) {
- if (MTEID > MTEIDMax) throw new RuntimeException("MTE ID's");
- boolean dep = registerMTEUsingID(MTEID, item, mte, aName, aNameRegional, deps);
- MTEID++;
- return dep;
- }
-
- private static boolean registerMTEUsingID(int ID, ItemList item, Class<? extends MetaTileEntity> mte, String aName,
- String aNameRegional, boolean... deps) {
- boolean dep = true;
- for (boolean b : deps) {
- if (!b) {
- dep = false;
- break;
- }
- }
- if (dep) {
- try {
- item.set(
- mte.getConstructor(int.class, String.class, String.class)
- .newInstance(ID, aName, aNameRegional)
- .getStackForm(1));
- } catch (InvocationTargetException ex) {
- Throwable original_ex = ex.getCause();
- if (original_ex instanceof RuntimeException) throw (RuntimeException) original_ex;
- throw new RuntimeException(original_ex.getMessage());
- } catch (RuntimeException ex) {
- throw ex;
- } catch (Exception ex) {
- throw new RuntimeException(ex.getMessage());
- }
- }
- return dep;
}
private static boolean lateRecipesInitialized = false;
@@ -369,7 +339,7 @@ public class RecipeLoader {
LegendaryUltimateTea.get(0),
GameRegistry.findItemStack("Avaritia", "Neutronium_Compressor", 1),
gregtech.api.enums.ItemList.Quantum_Tank_EV.get(1),
- GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 10, 11193), // UHV Fluid extractor
+ FluidExtractorUHV.get(10),
new Object[] { OrePrefixes.circuit.get(Materials.UV), 4L },
new Object[] { OrePrefixes.circuit.get(Materials.UV), 4L },
new Object[] { OrePrefixes.circuit.get(Materials.UV), 4L },