aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorchochem <40274384+chochem@users.noreply.github.com>2023-09-10 01:00:27 +0100
committerGitHub <noreply@github.com>2023-09-10 01:00:27 +0100
commit87f5c9648088ad8c5683f0d9ce99fadcd8052aad (patch)
treed07647838351577700a43259368f547e0eba34e0 /src
parent9cff98e7429fb320edbcc1d88b8f897b1fbf35da (diff)
downloadGT5-Unofficial-87f5c9648088ad8c5683f0d9ce99fadcd8052aad.tar.gz
GT5-Unofficial-87f5c9648088ad8c5683f0d9ce99fadcd8052aad.tar.bz2
GT5-Unofficial-87f5c9648088ad8c5683f0d9ce99fadcd8052aad.zip
Ra2ify gt++ Part 1 (#739)
* another deprecation * agrichem ra2 * dehydrator coils * nuclear chem * general recipes * generic chem RA2 and NO,NO2 cleanup * start with gregtech recipes * another deprecation * more gregtech recipes * dont deprecate ABS yet, was just a mistake * gregtech recipes * even more gregtech recipes * finish assembler recipes * fuels and fluid extraction * centrifuge and mixer * chem recipes * compression and maceration * remove duplicate bending * blast furnace (remove a broken one) * AL recipes * distilling * baseitemingots * bee recipes and some cleanup * coke things * random one * cryo and pyro
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gtPlusPlus/core/item/ModItems.java8
-rw-r--r--src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java11
-rw-r--r--src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java7
-rw-r--r--src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java148
-rw-r--r--src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java476
-rw-r--r--src/main/java/gtPlusPlus/core/item/chemistry/NuclearChem.java33
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java1438
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java73
-rw-r--r--src/main/java/gtPlusPlus/core/util/reflect/AddGregtechRecipe.java1
-rw-r--r--src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java8
-rw-r--r--src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java137
-rw-r--r--src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java9
-rw-r--r--src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java11
-rw-r--r--src/main/java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java16
-rw-r--r--src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java16
-rw-r--r--src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java39
-rw-r--r--src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java119
17 files changed, 1012 insertions, 1538 deletions
diff --git a/src/main/java/gtPlusPlus/core/item/ModItems.java b/src/main/java/gtPlusPlus/core/item/ModItems.java
index 45dc15b3f2..f85e18b8d6 100644
--- a/src/main/java/gtPlusPlus/core/item/ModItems.java
+++ b/src/main/java/gtPlusPlus/core/item/ModItems.java
@@ -4,6 +4,8 @@ import static gregtech.api.enums.Mods.Forestry;
import static gregtech.api.enums.Mods.GTPlusPlus;
import static gregtech.api.enums.Mods.GregTech;
import static gregtech.api.enums.Mods.Thaumcraft;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.TICKS;
import static gtPlusPlus.core.creative.AddToCreativeTab.tabMisc;
import net.minecraft.item.EnumRarity;
@@ -700,7 +702,9 @@ public final class ModItems {
temp1,
null,
true);
- GT_Values.RA.addFluidExtractionRecipe(temp2, null, new FluidStack(fluidFertBasic, 36), 10000, 5, 16);
+ GT_Values.RA.stdBuilder().itemInputs(temp2).noItemOutputs().noFluidInputs()
+ .fluidOutputs(new FluidStack(fluidFertBasic, 36)).duration(5 * TICKS).eut(16)
+ .addTo(sFluidExtractionRecipes);
}
fluidFertUN32 = FluidUtils.generateFluidNonMolten(
"UN32Fertiliser",
@@ -871,7 +875,7 @@ public final class ModItems {
public static void registerCustomMaterialComponents() {
// Custom GT++ Crafting Components
- /**
+ /*
* Try generate dusts for missing rare earth materials if they don't exist
*/
if (!ItemUtils.checkForInvalidItems(ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustGadolinium", 1))) {
diff --git a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java
index b180a80f2b..94a84ed27d 100644
--- a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java
+++ b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java
@@ -2,6 +2,8 @@ package gtPlusPlus.core.item.base.ingots;
import static gregtech.api.enums.Mods.GTPlusPlus;
import static gregtech.api.enums.Mods.GregTech;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.TICKS;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
@@ -12,6 +14,7 @@ import net.minecraft.world.World;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import gregtech.api.enums.GT_Values;
import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.item.base.BaseItemComponent;
import gtPlusPlus.core.lib.CORE;
@@ -51,11 +54,9 @@ public class BaseItemIngotHot extends BaseItemIngot {
private void generateRecipe() {
Logger.WARNING("Adding Vacuum Freezer recipe for a Hot Ingot of " + this.materialName + ".");
- CORE.RA.addVacuumFreezerRecipe(
- ItemUtils.getSimpleStack(this),
- this.outputIngot.copy(),
- (int) Math.max(this.componentMaterial.getMass() * 3L, 1L),
- this.componentMaterial.vVoltageMultiplier);
+ GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(this)).itemOutputs(this.outputIngot.copy())
+ .noFluidInputs().noFluidOutputs().duration(Math.max(this.componentMaterial.getMass() * 3L, 1L) * TICKS)
+ .eut(this.componentMaterial.vVoltageMultiplier).addTo(sVacuumRecipes);
}
@Override
diff --git a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java
index 222f6e9c1a..dcb9738fd4 100644
--- a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java
+++ b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java
@@ -1,6 +1,8 @@
package gtPlusPlus.core.item.base.ingots;
import static gregtech.api.enums.Mods.GTPlusPlus;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import net.minecraft.entity.Entity;
import net.minecraft.item.Item;
@@ -8,7 +10,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import cpw.mods.fml.common.registry.GameRegistry;
-import gregtech.api.util.GT_ModHandler;
+import gregtech.api.enums.GT_Values;
import gregtech.api.util.GT_OreDictUnificator;
import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.creative.AddToCreativeTab;
@@ -78,7 +80,8 @@ public class BaseItemIngot_OLD extends Item {
if ((temp != null) && !temp.equals("")) {
tempOutput = ItemUtils.getItemStackOfAmountFromOreDict(temp, 1);
if (tempOutput != null) {
- GT_ModHandler.addCompressionRecipe(tempStack, tempOutput);
+ GT_Values.RA.stdBuilder().itemInputs(tempStack).itemOutputs(tempOutput).noFluidInputs()
+ .noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes);
}
}
} else if (this.unlocalName.contains("itemHotIngot")) {
diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java b/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java
index effb10268a..1da1fb6bfc 100644
--- a/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java
+++ b/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java
@@ -3,6 +3,11 @@ package gtPlusPlus.core.item.chemistry;
import static gregtech.api.enums.Mods.BiomesOPlenty;
import static gregtech.api.enums.Mods.Forestry;
import static gregtech.api.enums.Mods.TinkerConstruct;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+import static gregtech.api.util.GT_RecipeConstants.UniversalChemical;
import java.lang.reflect.Field;
import java.util.ArrayList;
@@ -17,13 +22,15 @@ import net.minecraftforge.oredict.OreDictionary;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Materials;
-import gtPlusPlus.api.helpers.MaterialHelper;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.TierEU;
+import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_Utility;
import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.api.objects.data.AutoMap;
import gtPlusPlus.api.objects.minecraft.ItemPackage;
import gtPlusPlus.core.item.circuit.GTPP_IntegratedCircuit_Item;
import gtPlusPlus.core.lib.CORE;
-import gtPlusPlus.core.material.ELEMENT;
import gtPlusPlus.core.recipe.common.CI;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.minecraft.FluidUtils;
@@ -166,7 +173,7 @@ public class AgriculturalChem extends ItemPackage {
mAluminiumPellet = ItemUtils.simpleMetaStack(mAgrichemItem1, 17, 1);
mSodiumAluminate = ItemUtils.simpleMetaStack(mAgrichemItem1, 18, 1);
- /**
+ /*
* If It exists, don't add a new one.
*/
if (OreDictionary.doesOreNameExist("dustSodiumHydroxide_GT5U")
@@ -413,46 +420,26 @@ public class AgriculturalChem extends ItemPackage {
ItemStack aDirtDust = ItemUtils.getSimpleStack(dustDirt, 1);
// Poop Juice to Basic Slurry
- GT_Values.RA.addCentrifugeRecipe(
- CI.getNumberedCircuit(10),
- null,
- FluidUtils.getFluidStack(PoopJuice, 1000), // In
- // Fluid
- FluidUtils.getFluidStack(ManureSlurry, 250), // Out Fluid
- aDirtDust,
- aDirtDust,
- aManureByprod1,
- aManureByprod1,
- aManureByprod1,
- aManureByprod1,
- new int[] { 2000, 2000, 500, 500, 250, 250 }, // Chances
- 10 * 20, // Time
- 30); // EU
+ GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10))
+ .itemOutputs(aDirtDust, aDirtDust, aManureByprod1, aManureByprod1, aManureByprod1, aManureByprod1)
+ .outputChances(2000, 2000, 500, 500, 250, 250).fluidInputs(FluidUtils.getFluidStack(PoopJuice, 1000))
+ .fluidOutputs(FluidUtils.getFluidStack(ManureSlurry, 250)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV)
+ .addTo(sCentrifugeRecipes);
// More Efficient way to get byproducts, less Slurry
- GT_Values.RA.addCentrifugeRecipe(
- CI.getNumberedCircuit(20),
- null,
- FluidUtils.getFluidStack(PoopJuice, 1000), // In
- // Fluid
- FluidUtils.getFluidStack(ManureSlurry, 50), // Out Fluid
- aDirtDust,
- aDirtDust,
- aManureByprod1,
- aManureByprod1,
- aManureByprod2,
- aManureByprod2,
- new int[] { 4000, 3000, 1250, 1250, 675, 675 }, // Chances
- 20 * 20, // Time
- 60); // EU
+ GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(20))
+ .itemOutputs(aDirtDust, aDirtDust, aManureByprod1, aManureByprod1, aManureByprod2, aManureByprod2)
+ .outputChances(4000, 3000, 1250, 1250, 675, 675).fluidInputs(FluidUtils.getFluidStack(PoopJuice, 1000))
+ .fluidOutputs(FluidUtils.getFluidStack(ManureSlurry, 50)).duration(20 * SECONDS)
+ .eut(TierEU.RECIPE_MV / 2).addTo(sCentrifugeRecipes);
}
private static void addAdvancedSlurryRecipes() {
- ItemStack aCircuit = CI.getNumberedCircuit(10);
+ ItemStack aCircuit = GT_Utility.getIntegratedCircuit(10);
ItemStack aBone;
ItemStack aMeat;
- ItemStack aEmptyCells = CI.emptyCells(2);
+ ItemStack aEmptyCells = Materials.Empty.getCells(2);
ItemStack aInputCells = ItemUtils.getItemStackOfAmountFromOreDict("cellRawAnimalWaste", 2);
FluidStack aOutput = FluidUtils.getFluidStack(FertileManureSlurry, 1000);
@@ -462,17 +449,9 @@ public class AgriculturalChem extends ItemPackage {
for (ItemStack aMeatStack : mList_Master_Meats) {
aMeat = ItemUtils.getSimpleStack(aMeatStack, 5);
// Poop Juice to Fertile Slurry
- GT_Values.RA.addMixerRecipe(
- aCircuit,
- aBone,
- aMeat,
- aInputCells,
- aBloodStack, // Input Fluid
- aOutput, // Output Fluid
- aEmptyCells, // Output Item
- 20 * 8, // Time?
- 60 // Eu?
- );
+ GT_Values.RA.stdBuilder().itemInputs(aCircuit, aBone, aMeat, aInputCells).itemOutputs(aEmptyCells)
+ .fluidInputs(aBloodStack).fluidOutputs(aOutput).duration(8 * SECONDS)
+ .eut(TierEU.RECIPE_MV / 2).addTo(sMixerRecipes);
}
}
}
@@ -487,13 +466,14 @@ public class AgriculturalChem extends ItemPackage {
aPeat = ItemUtils.getSimpleStack(aPeatStack, 3);
for (ItemStack aMeatStack : mList_Master_Meats) {
aMeat = ItemUtils.getSimpleStack(aMeatStack, 5);
- CORE.RA.addChemicalRecipe(aPeat, aMeat, aInputFluid, null, aOutputDust, 20 * 20, 120);
+ GT_Values.RA.stdBuilder().itemInputs(aPeat, aMeat).itemOutputs(aOutputDust).fluidInputs(aInputFluid)
+ .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical);
}
-
aPeat = ItemUtils.getSimpleStack(aPeatStack, 2);
for (ItemStack aMeatStack : mList_Master_FruitVege) {
aMeat = ItemUtils.getSimpleStack(aMeatStack, 9);
- CORE.RA.addChemicalRecipe(aPeat, aMeat, aInputFluid, null, aOutputDust, 10 * 20, 120);
+ GT_Values.RA.stdBuilder().itemInputs(aPeat, aMeat).itemOutputs(aOutputDust).fluidInputs(aInputFluid)
+ .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical);
}
}
}
@@ -507,12 +487,14 @@ public class AgriculturalChem extends ItemPackage {
aPeat = ItemUtils.getSimpleStack(aPeatStack, 5);
for (ItemStack aMeatStack : mList_Master_Meats) {
aMeat = ItemUtils.getSimpleStack(aMeatStack, 7);
- CORE.RA.addChemicalRecipe(aPeat, aMeat, aInputFluid, null, aOutputDust, 10 * 20, 140);
+ GT_Values.RA.stdBuilder().itemInputs(aPeat, aMeat).itemOutputs(aOutputDust).fluidInputs(aInputFluid)
+ .noFluidOutputs().duration(10 * SECONDS).eut(140).addTo(UniversalChemical);
}
aPeat = ItemUtils.getSimpleStack(aPeatStack, 3);
for (ItemStack aMeatStack : mList_Master_FruitVege) {
aMeat = ItemUtils.getSimpleStack(aMeatStack, 12);
- CORE.RA.addChemicalRecipe(aPeat, aMeat, aInputFluid, null, aOutputDust, 5 * 20, 140);
+ GT_Values.RA.stdBuilder().itemInputs(aPeat, aMeat).itemOutputs(aOutputDust).fluidInputs(aInputFluid)
+ .noFluidOutputs().duration(5 * SECONDS).eut(140).addTo(UniversalChemical);
}
}
}
@@ -527,7 +509,7 @@ public class AgriculturalChem extends ItemPackage {
// Dehydrate Organise Fert to Normal Fert.
- /**
+ /*
* Forestry Support
*/
if (Forestry.isModLoaded()) {
@@ -558,7 +540,7 @@ public class AgriculturalChem extends ItemPackage {
}
}
- /**
+ /*
* IC2 Support
*/
aFertIC2 = ItemUtils.getItemStackFromFQRN("IC2:itemFertilizer", 1);
@@ -573,29 +555,25 @@ public class AgriculturalChem extends ItemPackage {
240);
// Dirt Production
- CORE.RA.addCompressorRecipe(
- ItemUtils.getSimpleStack(dustDirt, 9),
- ItemUtils.getSimpleStack(Blocks.dirt),
- 20 * 2,
- 8);
+ GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(dustDirt, 9))
+ .itemOutputs(ItemUtils.getSimpleStack(Blocks.dirt)).noFluidInputs().noFluidOutputs()
+ .duration(2 * SECONDS).eut(8).addTo(sCompressorRecipes);
// Centrifuge Byproducts
// Ammonium Nitrate, Phosphates, Calcium, Copper, Carbon
- GT_Values.RA.addCentrifugeRecipe(
- CI.getNumberedCircuit(20),
- ItemUtils.getSimpleStack(aManureByprod, 4),
- FluidUtils.getFluidStack("sulfuricacid", 250), // In Fluid
- FluidUtils.getFluidStack("sulfuricapatite", 50), // Out Fluid
- MaterialHelper.getDustSmall(Materials.Phosphorus, 2),
- MaterialHelper.getDustSmall(Materials.Calcium, 2),
- MaterialHelper.getDustTiny(Materials.Copper, 1),
- MaterialHelper.getDust(Materials.Carbon, 1),
- ItemUtils.getSimpleStack(dustDirt, 1),
- ItemUtils.getItemStackOfAmountFromOreDict("dustTinyAmmoniumNitrate", 1),
- new int[] { 2500, 2500, 750, 1000, 5000, 250 }, // Chances
- 20 * 20, // Time
- 60); // EU
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemUtils.getSimpleStack(aManureByprod, 4), GT_Utility.getIntegratedCircuit(20))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Phosphorus, 2L),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Calcium, 2L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Copper, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L),
+ ItemUtils.getSimpleStack(dustDirt, 1),
+ ItemUtils.getItemStackOfAmountFromOreDict("dustTinyAmmoniumNitrate", 1))
+ .outputChances(2500, 2500, 750, 1000, 5000, 250).fluidInputs(Materials.SulfuricAcid.getFluid(250))
+ .fluidOutputs(FluidUtils.getFluidStack("sulfuricapatite", 50)).duration(20 * SECONDS)
+ .eut(TierEU.RECIPE_MV / 2).addTo(sCentrifugeRecipes);
// Add Fuel Usages
CORE.RA.addSemifluidFuel(FluidUtils.getFluidStack(PoopJuice, 1000), 12);
@@ -603,20 +581,18 @@ public class AgriculturalChem extends ItemPackage {
CORE.RA.addSemifluidFuel(FluidUtils.getFluidStack(FertileManureSlurry, 1000), 32);
// Red Slurry / Tailings Processing
- GT_Values.RA.addCentrifugeRecipe(
- CI.getNumberedBioCircuit(10),
- GT_Values.NI,
- FluidUtils.getFluidStack(AgriculturalChem.RedMud, 1000),
- FluidUtils.getWater(500),
- ELEMENT.getInstance().IRON.getSmallDust(1),
- ELEMENT.getInstance().COPPER.getSmallDust(1),
- ELEMENT.getInstance().TIN.getSmallDust(1),
- ELEMENT.getInstance().SULFUR.getSmallDust(1),
- ELEMENT.getInstance().NICKEL.getTinyDust(1),
- ELEMENT.getInstance().LEAD.getTinyDust(1),
- new int[] { 3000, 3000, 2000, 2000, 1000, 1000 },
- 30 * 20,
- 30);
+ GT_Values.RA.stdBuilder().itemInputs(CI.getNumberedBioCircuit(10))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Iron, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Copper, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Tin, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Sulfur, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Nickel, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Lead, 1L))
+ .outputChances(3000, 3000, 2000, 2000, 1000, 1000)
+ .fluidInputs(FluidUtils.getFluidStack(AgriculturalChem.RedMud, 1000))
+ .fluidOutputs(Materials.Water.getFluid(500)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV)
+ .addTo(sCentrifugeRecipes);
}
@Override
diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java
index 3249b2da0e..99229211ad 100644
--- a/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java
+++ b/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java
@@ -1,5 +1,13 @@
package gtPlusPlus.core.item.chemistry;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.MINUTES;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT;
+import static gregtech.api.util.GT_RecipeConstants.FUEL_TYPE;
+import static gregtech.api.util.GT_RecipeConstants.FUEL_VALUE;
+
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@@ -12,7 +20,10 @@ import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.TextureSet;
+import gregtech.api.enums.TierEU;
import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_RecipeConstants;
import gregtech.api.util.GT_Utility;
import gtPlusPlus.api.objects.minecraft.ItemPackage;
import gtPlusPlus.core.item.chemistry.general.ItemGenericChemBase;
@@ -36,23 +47,9 @@ import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList;
public class GenericChem extends ItemPackage {
/**
- * Switches
- */
- private static boolean usingGregtechNitricOxide = false;
-
- private static boolean usingGregtechNitrogenDioxide = false;
-
- /**
* Materials
*/
- // public static final Material BAKELITE = new Material("Bakelite", MaterialState.SOLID, TextureSet.SET_DULL, new
- // short[]{90, 140, 140}, 120, 240, 23, 24, true, null, 0);//Not a GT Inherited Material
- // public static final Material NYLON = new Material("Nylon", MaterialState.SOLID, TextureSet.SET_SHINY, new
- // short[]{45, 45, 45}, 300, 600, 44, 48, true, null, 0);//Not a GT Inherited Material
- // public static final Material CARBYNE = new Material("Carbyne", MaterialState.SOLID, TextureSet.SET_DULL, new
- // short[]{25, 25, 25}, 2500, 5000, 63, 52, true, null, 0);//Not a GT Inherited Material
-
// Refined PTFE
public static final Material TEFLON = new Material(
"Teflon",
@@ -91,8 +88,6 @@ public class GenericChem extends ItemPackage {
public static Fluid Ethylanthrahydroquinone2;
public static Fluid Hydrogen_Peroxide;
public static Fluid Lithium_Peroxide;
- public static Fluid Nitric_Oxide;
- public static Fluid Nitrogen_Dioxide;
public static Fluid Carbon_Disulfide;
/**
@@ -329,24 +324,6 @@ public class GenericChem extends ItemPackage {
null,
null);
- if (FluidRegistry.isFluidRegistered("nitricoxide")) {
- Nitric_Oxide = FluidRegistry.getFluid("nitricoxide");
- usingGregtechNitricOxide = true;
- } else {
- Nitric_Oxide = FluidUtils
- .generateFluidNoPrefix("nitricoxide", "Nitric Oxide", 200, new short[] { 125, 200, 240, 100 });
- }
- if (FluidRegistry.isFluidRegistered("nitrogendioxide")) {
- Nitrogen_Dioxide = FluidRegistry.getFluid("nitrogendioxide");
- usingGregtechNitrogenDioxide = true;
- } else {
- Nitrogen_Dioxide = FluidUtils.generateFluidNoPrefix(
- "nitrogendioxide",
- "Nitrogen Dioxide",
- 200,
- new short[] { 100, 175, 255, 100 });
- }
-
// Lithium Hydroperoxide - LiOH + H2O2 → LiOOH + 2 H2O
// ItemUtils.generateSpecialUseDusts("LithiumHydroperoxide", "Lithium Hydroperoxide", "HLiO2",
// Utils.rgbtoHexValue(125, 125, 125));
@@ -398,18 +375,6 @@ public class GenericChem extends ItemPackage {
recipeHydrogenPeroxide();
recipeLithiumHydroperoxide();
recipeLithiumPeroxide();
- // The follow is using alk science, ignore them
- if (!usingGregtechNitricOxide) {
- recipeNitricOxide();
- }
- if (!usingGregtechNitrogenDioxide) {
- recipeNitrogenDioxide();
- }
-
- // Add recipes if we are not using GT's fluid.
- if (!FluidRegistry.isFluidRegistered("hydrochloricacid_gt5u")) {
- recipeHydrochloricAcid();
- }
recipeSodiumEthoxide();
recipeCarbonDisulfide();
@@ -475,15 +440,13 @@ public class GenericChem extends ItemPackage {
private void recipeCarbonDisulfide() {
- CORE.RA.addBlastRecipe(
- new ItemStack[] { ItemUtils.getItemStackOfAmountFromOreDict("fuelCoke", 8),
- ItemUtils.getItemStackOfAmountFromOreDict("dustSulfur", 16) },
- new FluidStack[] {},
- new ItemStack[] { ItemUtils.getItemStackOfAmountFromOreDict("dustDarkAsh", 1) },
- new FluidStack[] { FluidUtils.getFluidStack(Carbon_Disulfide, 4000) },
- 20 * 60 * 10,
- 30,
- 1500);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemUtils.getItemStackOfAmountFromOreDict("fuelCoke", 8),
+ GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 16L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L)).noFluidInputs()
+ .fluidOutputs(FluidUtils.getFluidStack(Carbon_Disulfide, 4000)).duration(10 * MINUTES)
+ .eut(TierEU.RECIPE_LV).metadata(COIL_HEAT, 1500).addTo(sBlastRecipes);
CORE.RA.addChemicalPlantRecipe(
new ItemStack[] { CI.getNumberedCircuit(20), ItemUtils.getSimpleStack(mBrownCatalyst, 0),
@@ -518,229 +481,29 @@ public class GenericChem extends ItemPackage {
// Burnables
// Gas Fuels
- GT_Values.RA.addFuel(ItemUtils.getItemStackOfAmountFromOreDict("cellNitrobenzene", 1), null, 1600, 1);
+ GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict("cellNitrobenzene", 1))
+ .noItemOutputs().noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 1600).metadata(FUEL_TYPE, 1)
+ .duration(0).eut(0).addTo(GT_RecipeConstants.Fuel);
}
private void recipeGrindingBallAlumina() {
- CORE.RA.addSixSlotAssemblingRecipe(
- new ItemStack[] { CI.getNumberedCircuit(10), ItemUtils.getSimpleStack(AgriculturalChem.mAlumina, 64) },
- FluidUtils.getFluidStack(GenericChem.Aniline, 4000),
- ItemUtils.getSimpleStack(mMillingBallAlumina, 8),
- 180 * 20,
- 480);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemUtils.getSimpleStack(AgriculturalChem.mAlumina, 64),
+ GT_Utility.getIntegratedCircuit(10))
+ .itemOutputs(ItemUtils.getSimpleStack(mMillingBallAlumina, 8))
+ .fluidInputs(FluidUtils.getFluidStack(GenericChem.Aniline, 4000)).noFluidOutputs().duration(3 * MINUTES)
+ .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
}
private void recipeGrindingBallSoapstone() {
- CORE.RA.addSixSlotAssemblingRecipe(
- new ItemStack[] { CI.getNumberedCircuit(10),
- ItemUtils.getItemStackOfAmountFromOreDict("dustSoapstone", 32) },
- FluidUtils.getFluidStack(AgrichemFluids.mLiquidResin, 2500),
- ItemUtils.getSimpleStack(mMillingBallSoapstone, 8),
- 120 * 20,
- 480);
- }
-
- // The follow is using alk science, ignore them
- private void recipeNitrogenDioxide() {
- ItemStack aNitricOxideCell = ItemUtils.getItemStackOfAmountFromOreDict("cellNitricOxide", 1);
- ItemStack aNitrogenDioxideCell = ItemUtils.getItemStackOfAmountFromOreDict("cellNitrogenDioxide", 1);
- GT_Values.RA.addChemicalRecipe(
- ItemUtils.getSimpleStack(aNitricOxideCell, 2),
- GT_Utility.getIntegratedCircuit(1),
- ELEMENT.getInstance().OXYGEN.getFluidStack(1000),
- FluidUtils.getFluidStack(Nitrogen_Dioxide, 3000),
- CI.emptyCells(2),
- 160);
- GT_Values.RA.addChemicalRecipe(
- ELEMENT.getInstance().OXYGEN.getCell(1),
- GT_Utility.getIntegratedCircuit(1),
- FluidUtils.getFluidStack(Nitric_Oxide, 2000),
- FluidUtils.getFluidStack(Nitrogen_Dioxide, 3000),
- CI.emptyCells(1),
- 160);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(
- ItemUtils.getSimpleStack(aNitricOxideCell, 2),
- CI.emptyCells(1),
- ELEMENT.getInstance().OXYGEN.getFluidStack(1000),
- GT_Values.NF,
- ItemUtils.getSimpleStack(aNitrogenDioxideCell, 3),
- GT_Values.NI,
- 160,
- 30);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(
- ELEMENT.getInstance().OXYGEN.getCell(1),
- CI.emptyCells(2),
- FluidUtils.getFluidStack(Nitric_Oxide, 2000),
- GT_Values.NF,
- ItemUtils.getSimpleStack(aNitrogenDioxideCell, 3),
- GT_Values.NI,
- 160,
- 30);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(
- ItemUtils.getSimpleStack(aNitricOxideCell, 2),
- ELEMENT.getInstance().OXYGEN.getCell(1),
- GT_Values.NF,
- GT_Values.NF,
- ItemUtils.getSimpleStack(aNitrogenDioxideCell, 3),
- GT_Values.NI,
- 160,
- 30);
- }
-
- // The follow is using alk science, ignore them
- private void recipeNitricOxide() {
- ItemStack aWaterCell = ItemUtils.getItemStackOfAmountFromOreDict("cellWater", 1);
- ItemStack aNitricOxideCell = ItemUtils.getItemStackOfAmountFromOreDict("cellNitricOxide", 1);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(
- MISC_MATERIALS.AMMONIA.getCell(8),
- CI.emptyCells(1),
- ELEMENT.getInstance().OXYGEN.getFluidStack(5000),
- FluidUtils.getFluidStack(Nitric_Oxide, 4000),
- ItemUtils.getSimpleStack(aWaterCell, 9),
- GT_Values.NI,
- 160,
- 30);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(
- ELEMENT.getInstance().OXYGEN.getCell(5),
- CI.emptyCells(4),
- MISC_MATERIALS.AMMONIA.getFluidStack(8000),
- FluidUtils.getFluidStack(Nitric_Oxide, 4000),
- ItemUtils.getSimpleStack(aWaterCell, 9),
- GT_Values.NI,
- 160,
- 30);
- GT_Values.RA.addChemicalRecipe(
- MISC_MATERIALS.AMMONIA.getCell(8),
- GT_Utility.getIntegratedCircuit(11),
- ELEMENT.getInstance().OXYGEN.getFluidStack(5000),
- FluidUtils.getWater(9000),
- ItemUtils.getSimpleStack(aNitricOxideCell, 4),
- CI.emptyCells(4),
- 160);
- GT_Values.RA.addChemicalRecipe(
- ELEMENT.getInstance().OXYGEN.getCell(5),
- GT_Utility.getIntegratedCircuit(11),
- MISC_MATERIALS.AMMONIA.getFluidStack(8000),
- FluidUtils.getWater(9000),
- ItemUtils.getSimpleStack(aNitricOxideCell, 4),
- CI.emptyCells(1),
- 160);
- GT_Values.RA.addChemicalRecipe(
- MISC_MATERIALS.AMMONIA.getCell(8),
- GT_Utility.getIntegratedCircuit(2),
- ELEMENT.getInstance().OXYGEN.getFluidStack(5000),
- FluidUtils.getFluidStack(Nitric_Oxide, 4000),
- CI.emptyCells(8),
- 320);
- GT_Values.RA.addChemicalRecipe(
- ELEMENT.getInstance().OXYGEN.getCell(5),
- GT_Utility.getIntegratedCircuit(2),
- MISC_MATERIALS.AMMONIA.getFluidStack(8000),
- FluidUtils.getFluidStack(Nitric_Oxide, 4000),
- CI.emptyCells(5),
- 320);
- GT_Values.RA.addChemicalRecipe(
- MISC_MATERIALS.AMMONIA.getCell(8),
- GT_Utility.getIntegratedCircuit(12),
- ELEMENT.getInstance().OXYGEN.getFluidStack(5000),
- GT_Values.NF,
- ItemUtils.getSimpleStack(aNitricOxideCell, 4),
- CI.emptyCells(4),
- 160);
- GT_Values.RA.addChemicalRecipe(
- ELEMENT.getInstance().OXYGEN.getCell(5),
- GT_Utility.getIntegratedCircuit(12),
- MISC_MATERIALS.AMMONIA.getFluidStack(8000),
- GT_Values.NF,
- ItemUtils.getSimpleStack(aNitricOxideCell, 4),
- CI.emptyCells(1),
- 160);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(
- MISC_MATERIALS.AMMONIA.getCell(8),
- ELEMENT.getInstance().OXYGEN.getCell(5),
- GT_Values.NF,
- GT_Values.NF,
- ItemUtils.getSimpleStack(aNitricOxideCell, 4),
- ItemUtils.getSimpleStack(aWaterCell, 9),
- 160,
- 30);
- GT_Values.RA.addMultiblockChemicalRecipe(
- new ItemStack[] { GT_Utility.getIntegratedCircuit(1) },
- new FluidStack[] { MISC_MATERIALS.AMMONIA.getFluidStack(8000),
- ELEMENT.getInstance().OXYGEN.getFluidStack(5000) },
- new FluidStack[] { FluidUtils.getFluidStack(Nitric_Oxide, 4000), FluidUtils.getWater(9000) },
- null,
- 160,
- 30);
- }
-
- // The follow is using alk science, ignore them
- private void recipeHydrochloricAcid() {
-
- ItemStack aAcidCell = ItemUtils.getItemStackOfAmountFromOreDict("cellHydrochloricAcid", 1);
-
- CORE.RA.addChemicalRecipe(
- ELEMENT.getInstance().CHLORINE.getCell(1),
- GT_Utility.getIntegratedCircuit(1),
- ELEMENT.getInstance().HYDROGEN.getFluidStack(1000),
- FluidUtils.getFluidStack(HydrochloricAcid, 2000),
- CI.emptyCells(1),
- 60,
- 8);
-
- CORE.RA.addChemicalRecipe(
- ELEMENT.getInstance().HYDROGEN.getCell