aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/item
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus/core/item')
-rw-r--r--src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java4
-rw-r--r--src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java486
2 files changed, 483 insertions, 7 deletions
diff --git a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java
index 4acbcccf52..88f9bb29a5 100644
--- a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java
+++ b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java
@@ -244,7 +244,7 @@ public class GenericChem extends ItemPackage {
ItemStack aAcidCell = ItemUtils.getItemStackOfAmountFromOreDict("cellHydrochloricAcid", 1);
- GT_Values.RA.addChemicalRecipe(
+ CORE.RA.addChemicalRecipe(
ELEMENT.getInstance().CHLORINE.getCell(1),
GT_Utility.getIntegratedCircuit(1),
ELEMENT.getInstance().HYDROGEN.getFluid(1000),
@@ -253,7 +253,7 @@ public class GenericChem extends ItemPackage {
60,
8);
- GT_Values.RA.addChemicalRecipe(
+ CORE.RA.addChemicalRecipe(
ELEMENT.getInstance().HYDROGEN.getCell(1),
GT_Utility.getIntegratedCircuit(1),
ELEMENT.getInstance().CHLORINE.getFluid(1000),
diff --git a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java
index ff6576d87e..388a407fa8 100644
--- a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java
+++ b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java
@@ -4,8 +4,14 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
+import cpw.mods.fml.common.event.FMLLoadCompleteEvent;
import gregtech.api.enums.GT_Values;
+import gregtech.api.util.GT_Recipe;
+import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
+import gregtech.api.util.GT_Utility;
import gregtech.api.util.Recipe_GT;
+import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.api.objects.data.AutoMap;
import gtPlusPlus.api.objects.minecraft.ItemPackage;
import gtPlusPlus.core.item.base.BaseItemComponent;
import gtPlusPlus.core.lib.CORE;
@@ -14,6 +20,7 @@ import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.minecraft.FluidUtils;
import gtPlusPlus.core.util.minecraft.ItemUtils;
import gtPlusPlus.core.util.minecraft.MaterialUtils;
+import gtPlusPlus.xmod.gregtech.common.StaticFields59;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.Fluid;
@@ -48,6 +55,11 @@ public class RocketFuels extends ItemPackage {
public static Item Ammonium_Nitrate_Dust;
public static Item Formaldehyde_Catalyst;
+ public static ItemStack Formaldehyde_Catalyst_Stack;
+
+ public RocketFuels() {
+ super(true);
+ }
public static void createKerosene(){
@@ -185,7 +197,7 @@ public class RocketFuels extends ItemPackage {
CORE.RA.addChemicalPlantRecipe(
new ItemStack[] {
CI.getNumberedBioCircuit(21),
- ItemUtils.getSimpleStack(Formaldehyde_Catalyst, 1),
+ ItemUtils.getSimpleStack(Formaldehyde_Catalyst, 0),
},
new FluidStack[] {
FluidUtils.getFluidStack("oxygen", 16000),
@@ -223,7 +235,7 @@ public class RocketFuels extends ItemPackage {
CORE.RA.addChemicalPlantRecipe(
new ItemStack[] {
CI.getNumberedBioCircuit(21),
- ItemUtils.getSimpleStack(Formaldehyde_Catalyst, 1),
+ ItemUtils.getSimpleStack(Formaldehyde_Catalyst, 0),
},
new FluidStack[] {
FluidUtils.getFluidStack("fluid.hydrazine", 2000),
@@ -374,8 +386,8 @@ public class RocketFuels extends ItemPackage {
20 * 45,
480,
3);
-
-
+
+
// Monomethylhydrazine_Plus_Nitric_Acid
CORE.RA.addChemicalPlantRecipe(
new ItemStack[] {
@@ -395,7 +407,7 @@ public class RocketFuels extends ItemPackage {
20 * 60,
240,
3);
-
+
}
@Override
@@ -432,6 +444,7 @@ public class RocketFuels extends ItemPackage {
@Override
public void items() {
Formaldehyde_Catalyst = ItemUtils.generateSpecialUseDusts("FormaldehydeCatalyst", "Formaldehyde Catalyst", "Fe16V1", Utils.rgbtoHexValue(25, 5, 25))[0];
+ Formaldehyde_Catalyst_Stack = ItemUtils.getSimpleStack(Formaldehyde_Catalyst);
}
@Override
@@ -542,6 +555,469 @@ public class RocketFuels extends ItemPackage {
}
+ @Override
+ public boolean onLoadComplete(FMLLoadCompleteEvent event) {
+
+ Logger.INFO("Trying to remove GT recipes for '1,1dimethylhydrazine' && 'rocket_fuel' if they exist.");
+ /*if (FluidRegistry.isFluidRegistered("1,1dimethylhydrazine")) {
+
+ // Try Remove recipes for GT/EIO Rocket Fuel Cells
+ if (FluidRegistry.isFluidRegistered("rocket_fuel")) {
+
+ // Old Recipe
+ if (MaterialUtils.doesMaterialExist("NitrogenDioxide")) {
+ GT_Recipe aOldRecipe = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellNitrogenDioxide", 1),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogen", 3),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("air", 500)
+ },
+ 388);
+ boolean aDidRemove = removeRecipe(aOldRecipe, GT_Recipe_Map.sChemicalRecipes);
+ Logger.INFO("Removed Old Recipe for Rocket Fuel: "+aDidRemove);
+ }
+
+ // Simple Recipes
+ if (MaterialUtils.doesMaterialExist("Ammonia") && MaterialUtils.doesMaterialExist("Methanol")) {
+
+ GT_Recipe aSimpleRecipe1 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellAmmonia", 3),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellMethanol", 4),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("chlorine", 1000)
+ },
+ 480);
+ GT_Recipe aSimpleRecipe2 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChlorine", 1),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellMethanol", 4),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("ammonia", 3000)
+ },
+ 480);
+ GT_Recipe aSimpleRecipe3 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellAmmonia", 3),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChlorine", 1),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("methanol", 4000)
+ },
+ 480);
+
+ boolean aDidRemove1 = removeRecipe(aSimpleRecipe1, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove2 = removeRecipe(aSimpleRecipe2, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove3 = removeRecipe(aSimpleRecipe3, GT_Recipe_Map.sChemicalRecipes);
+ Logger.INFO("Removed Simple Recipe 1 for Rocket Fuel: "+aDidRemove1);
+ Logger.INFO("Removed Simple Recipe 2 for Rocket Fuel: "+aDidRemove2);
+ Logger.INFO("Removed Simple Recipe 3 for Rocket Fuel: "+aDidRemove3);
+ }
+
+
+ // Complex Recipes I
+ if (MaterialUtils.doesMaterialExist("Dimethylhydrazine") && MaterialUtils.doesMaterialExist("DinitrogenTetroxide")) {
+
+ GT_Recipe aAdvRecipe1 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDimethylhydrazine", 1),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("dinitrogentetroxide", 1000)
+ },
+ 16);
+ GT_Recipe aAdvRecipe2 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDinitrogenTetroxide", 1),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("dimethylhydrazine", 1000)
+ },
+ 16);
+
+ GT_Recipe aAdvRecipe3 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDimethylhydrazine", 2),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("oxygen", 1000)
+ },
+ 16);
+ GT_Recipe aAdvRecipe4 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellOxygen", 1),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("dimethylhydrazine", 2000)
+ },
+ 16);
+
+ boolean aDidRemove1 = removeRecipe(aAdvRecipe1, GT_Recipe_Map.sMixerRecipes);
+ boolean aDidRemove2 = removeRecipe(aAdvRecipe2, GT_Recipe_Map.sMixerRecipes);
+ boolean aDidRemove3 = removeRecipe(aAdvRecipe3, GT_Recipe_Map.sMixerRecipes);
+ boolean aDidRemove4 = removeRecipe(aAdvRecipe4, GT_Recipe_Map.sMixerRecipes);
+ Logger.INFO("Removed Complex Recipe 1 for Rocket Fuel: "+aDidRemove1);
+ Logger.INFO("Removed Complex Recipe 2 for Rocket Fuel: "+aDidRemove2);
+ Logger.INFO("Removed Complex Recipe 3 for Rocket Fuel: "+aDidRemove3);
+ Logger.INFO("Removed Complex Recipe 4 for Rocket Fuel: "+aDidRemove4);
+ }
+ }
+
+
+ // Complex Recipes II
+ if (MaterialUtils.doesMaterialExist("Dimethylhydrazine")) {
+
+ GT_Recipe aAdvRecipe1 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDimethylhydrazine", 2),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("oxygen", 1000)
+ },
+ 16);
+ GT_Recipe aAdvRecipe2 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellOxygen", 1),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("dimethylhydrazine", 2000)
+ },
+ 16);
+
+ boolean aDidRemove1 = removeRecipe(aAdvRecipe1, GT_Recipe_Map.sMixerRecipes);
+ boolean aDidRemove2 = removeRecipe(aAdvRecipe2, GT_Recipe_Map.sMixerRecipes);
+ Logger.INFO("Removed Complex Recipe 5 for Rocket Fuel: "+aDidRemove1);
+ Logger.INFO("Removed Complex Recipe 6 for Rocket Fuel: "+aDidRemove2);
+ }
+
+ if (MaterialUtils.doesMaterialExist("Chloramine") && MaterialUtils.doesMaterialExist("Dimethylamine")) {
+ GT_Recipe aSimpleRecipe1 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChloramine", 2),
+ GT_Utility.getIntegratedCircuit(1)
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("dimethylamine", 5000)
+ },
+ 480);
+ GT_Recipe aSimpleRecipe2 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDimethylamine", 5),
+ GT_Utility.getIntegratedCircuit(1)
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("chloramine", 2000)
+ },
+ 16);
+
+
+
+ GT_Recipe aAdvRecipe1 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChloramine", 2),
+ CI.emptyCells(4)
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("dimethylamine", 5000)
+ },
+ 480);
+ GT_Recipe aAdvRecipe2 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDimethylamine", 5),
+ CI.emptyCells(1)
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("chloramine", 2000)
+ },
+ 16);
+ GT_Recipe aAdvRecipe3 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChloramine", 2),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDimethylamine", 5),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("chloramine", 2000)
+ },
+ 480);
+
+ boolean aDidRemove1 = removeRecipe(aSimpleRecipe1, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove2 = removeRecipe(aSimpleRecipe2, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove3 = removeRecipe(aAdvRecipe1, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove4 = removeRecipe(aAdvRecipe2, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove5 = removeRecipe(aAdvRecipe3, GT_Recipe_Map.sChemicalRecipes);
+ Logger.INFO("Removed Complex Recipe 1 for 1,1dimethylhydrazine: "+aDidRemove1);
+ Logger.INFO("Removed Complex Recipe 2 for 1,1dimethylhydrazine: "+aDidRemove2);
+ Logger.INFO("Removed Complex Recipe 3 for 1,1dimethylhydrazine: "+aDidRemove3);
+ Logger.INFO("Removed Complex Recipe 4 for 1,1dimethylhydrazine: "+aDidRemove4);
+ Logger.INFO("Removed Complex Recipe 5 for 1,1dimethylhydrazine: "+aDidRemove5);
+
+ }
+
+ if (MaterialUtils.doesMaterialExist("Chloramine") && MaterialUtils.doesMaterialExist("Dimethylamine")) {
+ GT_Recipe aSimpleRecipe1 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChloramine", 1),
+ GT_Utility.getIntegratedCircuit(1)
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("dimethylamine", 1000)
+ },
+ 480);
+ GT_Recipe aSimpleRecipe2 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDimethylamine", 1),
+ GT_Utility.getIntegratedCircuit(1)
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("chloramine", 1000)
+ },
+ 16);
+
+
+
+ GT_Recipe aAdvRecipe1 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChloramine", 1),
+ GT_Utility.getIntegratedCircuit(11)
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("dimethylamine", 1000)
+ },
+ 480);
+ GT_Recipe aAdvRecipe2 = getHalfBakedRecipe(
+ new ItemStack[] {
+ ItemUtils.getItemStackOfAmountFromOreDict("cellDimethylamine", 1),
+ GT_Utility.getIntegratedCircuit(11)
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("chloramine", 1000)
+ },
+ 16);
+
+ boolean aDidRemove1 = removeRecipe(aSimpleRecipe1, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove2 = removeRecipe(aSimpleRecipe2, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove3 = removeRecipe(aAdvRecipe1, GT_Recipe_Map.sChemicalRecipes);
+ boolean aDidRemove4 = removeRecipe(aAdvRecipe2, GT_Recipe_Map.sChemicalRecipes);
+ Logger.INFO("Removed Complex Recipe 5 for 1,1dimethylhydrazine: "+aDidRemove1);
+ Logger.INFO("Removed Complex Recipe 6 for 1,1dimethylhydrazine: "+aDidRemove2);
+ Logger.INFO("Removed Complex Recipe 7 for 1,1dimethylhydrazine: "+aDidRemove3);
+ Logger.INFO("Removed Complex Recipe 8 for 1,1dimethylhydrazine: "+aDidRemove4);
+
+ }
+
+ if (MaterialUtils.doesMaterialExist("HypochlorousAcid") && MaterialUtils.doesMaterialExist("Ammonia") && MaterialUtils.doesMaterialExist("Methanol")) {
+
+ GT_Recipe aAdvRecipe1 = getHalfBakedRecipe(
+ new ItemStack[] {
+ GT_Utility.getIntegratedCircuit(24),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("hypochlorousacid", 3000),
+ FluidUtils.getFluidStack("ammonia", 8000),
+ FluidUtils.getFluidStack("methanol", 12000)
+ },
+ 480);
+
+ GT_Recipe aAdvRecipe2 = getHalfBakedRecipe(
+ new ItemStack[] {
+ GT_Utility.getIntegratedCircuit(24),
+ },
+ new FluidStack[] {
+ FluidUtils.getFluidStack("hypochlorousacid", 1000),
+ FluidUtils.getFluidStack("ammonia", 1000),
+ FluidUtils.getFluidStack("methanol", 2000)
+ },
+ 480);
+
+ boolean aDidRemove1 = removeRecipe(aAdvRecipe1, StaticFields59.getLargeChemicalReactorRecipeMap());
+ boolean aDidRemove2 = removeRecipe(aAdvRecipe2, StaticFields59.getLargeChemicalReactorRecipeMap());
+ Logger.INFO("Removed Complex Recipe 9 for 1,1dimethylhydrazine: "+aDidRemove1);
+ Logger.INFO("Removed Complex Recipe 10 for 1,1dimethylhydrazine: "+aDidRemove2);
+
+
+ }
+ }*/
+
+ // Try Butcher recipes manually
+
+ //1,1Dimethylhydrazine
+ if (FluidRegistry.isFluidRegistered("1,1dimethylhydrazine")) {
+ Logger.INFO("Making sure all Chemical Reactor recipes for 1,1dimethylhydrazine have been removed.");
+ AutoMap<GT_Recipe> aToRemoveSingle = new AutoMap<GT_Recipe>();
+ ItemStack aUnsymCell = ItemUtils.getItemStackOfAmountFromOreDict("cell1,1Dimethylhydrazine", 1);
+ FluidStack aUnsymFluid = FluidUtils.getFluidStack("1,1dimethylhydrazine", 1);
+ recipe : for (GT_Recipe aRecipeSingleBlock : GT_Recipe_Map.sChemicalRecipes.mRecipeList) {
+ if (aRecipeSingleBlock != null && aRecipeSingleBlock.mEnabled) {
+ if (aRecipeSingleBlock.mOutputs != null && aRecipeSingleBlock.mOutputs.length > 0) {
+ for (ItemStack aOutputItem : aRecipeSingleBlock.mOutputs) {
+ ItemStack aTemp = aOutputItem.copy();
+ aTemp.stackSize = 1;
+ if (GT_Utility.areStacksEqual(aTemp, aUnsymCell)) {
+ aToRemoveSingle.add(aRecipeSingleBlock);
+ continue recipe;
+ }
+ }
+ }
+ if (aRecipeSingleBlock.mFluidOutputs != null && aRecipeSingleBlock.mFluidOutputs.length > 0) {
+ for (FluidStack aOutput : aRecipeSingleBlock.mFluidOutputs) {
+ if (GT_Utility.areFluidsEqual(aOutput, aUnsymFluid)) {
+ aToRemoveSingle.add(aRecipeSingleBlock);
+ continue recipe;
+ }
+ }
+ }
+ }
+ }
+ // Handle Multi Also
+ AutoMap<GT_Recipe> aToRemoveMulti = new AutoMap<GT_Recipe>();
+ recipe : for (GT_Recipe aRecipeSingleBlock : StaticFields59.getLargeChemicalReactorRecipeMap().mRecipeList) {
+ if (aRecipeSingleBlock != null && aRecipeSingleBlock.mEnabled) {
+ if (aRecipeSingleBlock.mOutputs != null && aRecipeSingleBlock.mOutputs.length > 0) {
+ for (ItemStack aOutputItem : aRecipeSingleBlock.mOutputs) {
+ ItemStack aTemp = aOutputItem.copy();
+ aTemp.stackSize = 1;
+ if (GT_Utility.areStacksEqual(aTemp, aUnsymCell)) {
+ aToRemoveMulti.add(aRecipeSingleBlock);
+ continue recipe;
+ }
+ }
+ }
+ if (aRecipeSingleBlock.mFluidOutputs != null && aRecipeSingleBlock.mFluidOutputs.length > 0) {
+ for (FluidStack aOutput : aRecipeSingleBlock.mFluidOutputs) {
+ if (GT_Utility.areFluidsEqual(aOutput, aUnsymFluid)) {
+ aToRemoveMulti.add(aRecipeSingleBlock);
+ continue recipe;
+ }
+ }
+ }
+ }
+ }
+ if (!aToRemoveSingle.isEmpty()) {
+ Logger.INFO("Found "+aToRemoveSingle.size()+" single block recipes, removing by force.");
+ for (GT_Recipe remove : aToRemoveSingle) {
+ GT_Recipe_Map.sChemicalRecipes.mRecipeList.remove(remove);
+ }
+ }
+ if (!aToRemoveMulti.isEmpty()) {
+ Logger.INFO("Found "+aToRemoveSingle.size()+" multiblock recipes, removing by force.");
+ for (GT_Recipe remove : aToRemoveMulti) {
+ StaticFields59.getLargeChemicalReactorRecipeMap().mRecipeList.remove(remove);
+ }
+ }
+ }
+
+
+ if (FluidRegistry.isFluidRegistered("rocket_fuel")) {
+ Logger.INFO("Making sure all Mixer recipes for rocket_fuel have been removed.");
+ AutoMap<GT_Recipe> aToRemoveSingle = new AutoMap<GT_Recipe>();
+ FluidStack aRocketFluid = FluidUtils.getFluidStack("rocket_fuel", 1);
+ recipe : for (GT_Recipe aRecipeSingleBlock : GT_Recipe_Map.sMixerRecipes.mRecipeList) {
+ if (aRecipeSingleBlock != null && aRecipeSingleBlock.mEnabled) {
+ if (aRecipeSingleBlock.mFluidOutputs != null && aRecipeSingleBlock.mFluidOutputs.length > 0) {
+ for (FluidStack aOutput : aRecipeSingleBlock.mFluidOutputs) {
+ if (GT_Utility.areFluidsEqual(aOutput, aRocketFluid)) {
+ aToRemoveSingle.add(aRecipeSingleBlock);
+ continue recipe;
+ }
+ }
+ }
+ }
+ }
+ if (!aToRemoveSingle.isEmpty()) {
+ Logger.INFO("Found "+aToRemoveSingle.size()+" recipes, removing by force.");
+ for (GT_Recipe remove : aToRemoveSingle) {
+ GT_Recipe_Map.sMixerRecipes.mRecipeList.remove(remove);
+ }
+ aToRemoveSingle.clear();
+ }
+
+ Logger.INFO("Making sure all Chemical Reactor recipes for rocket_fuel have been removed.");
+ recipe : for (GT_Recipe aRecipeSingleBlock : GT_Recipe_Map.sChemicalRecipes.mRecipeList) {
+ if (aRecipeSingleBlock != null && aRecipeSingleBlock.mEnabled) {
+ if (aRecipeSingleBlock.mFluidOutputs != null && aRecipeSingleBlock.mFluidOutputs.length > 0) {
+ for (FluidStack aOutput : aRecipeSingleBlock.mFluidOutputs) {
+ if (GT_Utility.areFluidsEqual(aOutput, aRocketFluid)) {
+ aToRemoveSingle.add(aRecipeSingleBlock);
+ continue recipe;
+ }
+ }
+ }
+ }
+ }
+ // Handle Multi Also
+ AutoMap<GT_Recipe> aToRemoveMulti = new AutoMap<GT_Recipe>();
+ recipe : for (GT_Recipe aRecipeSingleBlock : StaticFields59.getLargeChemicalReactorRecipeMap().mRecipeList) {
+ if (aRecipeSingleBlock != null && aRecipeSingleBlock.mEnabled) {
+ if (aRecipeSingleBlock.mFluidOutputs != null && aRecipeSingleBlock.mFluidOutputs.length > 0) {
+ for (FluidStack aOutput : aRecipeSingleBlock.mFluidOutputs) {
+ if (GT_Utility.areFluidsEqual(aOutput, aRocketFluid)) {
+ aToRemoveMulti.add(aRecipeSingleBlock);
+ continue recipe;
+ }
+ }
+ }
+ }
+ }
+ if (!aToRemoveSingle.isEmpty()) {
+ Logger.INFO("Found "+aToRemoveSingle.size()+" single block recipes, removing by force.");
+ for (GT_Recipe remove : aToRemoveSingle) {
+ GT_Recipe_Map.sChemicalRecipes.mRecipeList.remove(remove);
+ }
+ }
+ if (!aToRemoveMulti.isEmpty()) {
+ Logger.INFO("Found "+aToRemoveSingle.size()+" multiblock recipes, removing by force.");
+ for (GT_Recipe remove : aToRemoveMulti) {
+ StaticFields59.getLargeChemicalReactorRecipeMap().mRecipeList.remove(remove);
+ }
+ }
+
+ }
+
+
+
+ Logger.INFO("Finished clean-up of GT Rocket Fuel Recipes.");
+ return true;
+ }
+
+ private static Recipe_GT getHalfBakedRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, int aEU) {
+ return new Recipe_GT(false, aInputs, null, null, null, aFluidInputs, null, 0, aEU, 0);
+
+ }
+
+ public static boolean removeRecipe(GT_Recipe aRecipe, GT_Recipe_Map aMap) {
+ if (aMap != GT_Recipe_Map.sChemicalRecipes) {
+ GT_Recipe aFoundRecipe = aMap.findRecipe(null, false, true, aRecipe.mEUt, aRecipe.mFluidInputs, aRecipe.mInputs);
+ boolean aSingle = false;
+ if (aFoundRecipe != null) {
+ Logger.INFO("Found Single Block Recipe, removing.");
+ aSingle = aMap.mRecipeList.remove(aFoundRecipe);
+ Logger.INFO("Success? "+aSingle);
+ }
+ return aSingle;
+ }
+ else {
+ GT_Recipe aFoundRecipe = aMap.findRecipe(null, false, true, aRecipe.mEUt, aRecipe.mFluidInputs, aRecipe.mInputs);
+ GT_Recipe aFoundRecipe2 = StaticFields59.getLargeChemicalReactorRecipeMap().findRecipe(null, false, true, aRecipe.mEUt, aRecipe.mFluidInputs, aRecipe.mInputs);
+ boolean aSingle = false;
+ boolean aMulti = false;
+ if (aFoundRecipe != null) {
+ Logger.INFO("Found Single Block Recipe, removing.");
+ aSingle = GT_Recipe_Map.sChemicalRecipes.mRecipeList.remove(aFoundRecipe);
+ Logger.INFO("Success? "+aSingle);
+ }
+ if (aFoundRecipe2 != null) {
+ Logger.INFO("Found Multiblock Recipe, removing.");
+ aMulti = StaticFields59.getLargeChemicalReactorRecipeMap().mRecipeList.remove(aFoundRecipe2);
+ Logger.INFO("Success? "+aSingle);
+ }
+ return aSingle && aMulti;
+ }
+ }
+
}