aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorchochem <40274384+chochem@users.noreply.github.com>2023-05-16 18:19:57 +0100
committerGitHub <noreply@github.com>2023-05-16 19:19:57 +0200
commit686a78b8df700bc69849b36da30cdbcf72513e60 (patch)
treebea4074d74eb45fd8ba3a013975870665526ef94 /src/main
parent7a8a216576456b72ca747caf1608e36a360db474 (diff)
downloadGT5-Unofficial-686a78b8df700bc69849b36da30cdbcf72513e60.tar.gz
GT5-Unofficial-686a78b8df700bc69849b36da30cdbcf72513e60.tar.bz2
GT5-Unofficial-686a78b8df700bc69849b36da30cdbcf72513e60.zip
more Ra2 recipe conversions and some small fixes/improvements in GT recipe generation (#1994)
* oredict plate recipes * oredict dust recipes * ore processing recycling recipes * shaping recipes * more fixes * fixes * 2 fixes * remove unnecessary qualifications
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java80
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java469
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java13
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java324
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingRecycling.java24
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java994
6 files changed, 1223 insertions, 681 deletions
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java
index 8c66a2262c..1f33a3c7bc 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java
@@ -18,6 +18,7 @@ import gregtech.api.interfaces.IOreRecipeRegistrator;
import gregtech.api.objects.MaterialStack;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_RecipeBuilder;
import gregtech.api.util.GT_Utility;
public class ProcessingCell implements IOreRecipeRegistrator {
@@ -103,20 +104,21 @@ public class ProcessingCell implements IOreRecipeRegistrator {
// Electrolyzer recipe
{
if (GT_Utility.getFluidForFilledItem(aStack, true) == null) {
- int capsuleCount = tCapsuleCount <= 0L ? 0 : (int) tCapsuleCount;
- ItemStack cells = capsuleCount <= 0 ? null
- : ItemList.Cell_Empty.get(capsuleCount);
// dust stuffed cell e.g. Phosphate, Phosphorous Pentoxide
- GT_Values.RA.stdBuilder()
- .itemInputs(GT_Utility.copyAmount(tItemAmount, aStack), cells)
- .itemOutputs(
- tList.get(0),
- tList.size() >= 2 ? tList.get(1) : null,
- tList.size() >= 3 ? tList.get(2) : null,
- tList.size() >= 4 ? tList.get(3) : null,
- tList.size() >= 5 ? tList.get(4) : null,
- tCapsuleCount >= 0L ? tList.size() >= 6 ? tList.get(5) : null
- : ItemList.Cell_Empty.get(-tCapsuleCount))
+ GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder();
+ if (tCapsuleCount > 0L) {
+ recipeBuilder.itemInputs(
+ GT_Utility.copyAmount(tItemAmount, aStack),
+ ItemList.Cell_Empty.get(tCapsuleCount));
+ } else {
+ recipeBuilder.itemInputs(GT_Utility.copyAmount(tItemAmount, aStack));
+ }
+ if (tCapsuleCount < 0L) {
+ tList.add(ItemList.Cell_Empty.get(-tCapsuleCount));
+ }
+ ItemStack[] outputsArray = tList
+ .toArray(new ItemStack[Math.min(tList.size(), 6)]);
+ recipeBuilder.itemOutputs(outputsArray)
.noFluidInputs()
.noFluidOutputs()
.duration(Math.max(1L, Math.abs(aMaterial.getProtons() * 2L * tItemAmount)))
@@ -124,20 +126,18 @@ public class ProcessingCell implements IOreRecipeRegistrator {
.addTo(sElectrolyzerRecipes);
} else {
long tCellBalance = tCapsuleCount + tItemAmount - 1;
- int capsuleCount = tCellBalance <= 0L ? 0 : (int) tCellBalance;
- ItemStack cells = capsuleCount <= 0 ? null
- : ItemList.Cell_Empty.get(capsuleCount);
-
- GT_Values.RA.stdBuilder()
- .itemInputs(aStack, cells)
- .itemOutputs(
- tList.get(0),
- tList.size() >= 2 ? tList.get(1) : null,
- tList.size() >= 3 ? tList.get(2) : null,
- tList.size() >= 4 ? tList.get(3) : null,
- tList.size() >= 5 ? tList.get(4) : null,
- tCapsuleCount >= 0L ? tList.size() >= 6 ? tList.get(5) : null
- : tCellBalance < 0 ? ItemList.Cell_Empty.get(-tCellBalance) : null)
+ GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder();
+ if (tCellBalance > 0L) {
+ recipeBuilder.itemInputs(aStack, ItemList.Cell_Empty.get(tCellBalance));
+ } else {
+ recipeBuilder.itemInputs(GT_Utility.copyAmount(tItemAmount, aStack));
+ }
+ if (tCellBalance < 0L) {
+ tList.add(ItemList.Cell_Empty.get(-tCellBalance));
+ }
+ ItemStack[] outputsArray = tList
+ .toArray(new ItemStack[Math.min(tList.size(), 6)]);
+ recipeBuilder.itemOutputs(outputsArray)
.noFluidInputs()
.noFluidOutputs()
.duration(Math.max(1L, Math.abs(aMaterial.getProtons() * 8L * tItemAmount)))
@@ -147,19 +147,19 @@ public class ProcessingCell implements IOreRecipeRegistrator {
}
}
if ((aMaterial.mExtraData & 0x2) != 0) {
- ItemStack emptyCells = tCapsuleCount > 0 ? ItemList.Cell_Empty.get(tCapsuleCount)
- : null;
-
- GT_Values.RA.stdBuilder()
- .itemInputs(GT_Utility.copyAmount(tItemAmount, aStack), emptyCells)
- .itemOutputs(
- tList.get(0),
- tList.size() >= 2 ? tList.get(1) : null,
- tList.size() >= 3 ? tList.get(2) : null,
- tList.size() >= 4 ? tList.get(3) : null,
- tList.size() >= 5 ? tList.get(4) : null,
- tCapsuleCount >= 0L ? tList.size() >= 6 ? tList.get(5) : null
- : ItemList.Cell_Empty.get(-tCapsuleCount))
+ GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder();
+ if (tCapsuleCount > 0L) {
+ recipeBuilder.itemInputs(
+ GT_Utility.copyAmount(tItemAmount, aStack),
+ ItemList.Cell_Empty.get(tCapsuleCount));
+ } else {
+ recipeBuilder.itemInputs(GT_Utility.copyAmount(tItemAmount, aStack));
+ }
+ if (tCapsuleCount < 0L) {
+ tList.add(ItemList.Cell_Empty.get(-tCapsuleCount));
+ }
+ ItemStack[] outputsArray = tList.toArray(new ItemStack[Math.min(tList.size(), 6)]);
+ recipeBuilder.itemOutputs(outputsArray)
.noFluidInputs()
.noFluidOutputs()
.duration(Math.max(1L, Math.abs(aMaterial.getMass() * 2L * tItemAmount)))
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java
index 804bded008..7ca1f0cb15 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java
@@ -1,19 +1,35 @@
package gregtech.loaders.oreprocessing;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCannerRecipes;
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.sElectroMagneticSeparatorRecipes;
import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sImplosionRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.MINUTES;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+import static gregtech.api.util.GT_RecipeConstants.FUEL_TYPE;
+import static gregtech.api.util.GT_RecipeConstants.FUEL_VALUE;
import java.util.ArrayList;
+import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
-import gregtech.api.enums.*;
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.MaterialsUEVplus;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.SubTag;
+import gregtech.api.enums.TierEU;
import gregtech.api.objects.MaterialStack;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_RecipeBuilder;
+import gregtech.api.util.GT_RecipeConstants;
import gregtech.api.util.GT_RecipeRegistrator;
import gregtech.api.util.GT_Utility;
@@ -33,17 +49,29 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr
ItemStack aStack) {
switch (aPrefix) {
case dust -> {
- if (aMaterial.mFuelPower > 0) GT_Values.RA
- .addFuel(GT_Utility.copyAmount(1L, aStack), null, aMaterial.mFuelPower, aMaterial.mFuelType);
- if (GT_Utility.getFluidForFilledItem(GT_OreDictUnificator.get(OrePrefixes.cell, aMaterial, 1L), true)
- == null)
- GT_Values.RA.addCannerRecipe(
- aStack,
- ItemList.Cell_Empty.get(1L),
- GT_OreDictUnificator.get(OrePrefixes.cell, aMaterial, 1L),
- null,
- 100,
- 1);
+ if (aMaterial.mFuelPower > 0) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack))
+ .noItemOutputs()
+ .noFluidInputs()
+ .noFluidOutputs()
+ .metadata(FUEL_VALUE, aMaterial.mFuelPower)
+ .metadata(FUEL_TYPE, aMaterial.mFuelType)
+ .duration(0)
+ .eut(0)
+ .addTo(GT_RecipeConstants.Fuel);
+ }
+ if ((GT_Utility.getFluidForFilledItem(GT_OreDictUnificator.get(OrePrefixes.cell, aMaterial, 1L), true)
+ == null) && (GT_OreDictUnificator.get(OrePrefixes.cell, aMaterial, 1L) != null)) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(aStack, ItemList.Cell_Empty.get(1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(5 * SECONDS)
+ .eut(1)
+ .addTo(sCannerRecipes);
+ }
if (!aMaterial.mBlastFurnaceRequired) {
GT_RecipeRegistrator.registerReverseFluidSmelting(aStack, aMaterial, aPrefix.mMaterialAmount, null);
if (aMaterial.mSmeltInto.mArcSmeltInto != aMaterial) {
@@ -141,9 +169,9 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr
if (tDustStack != null) {
tDustStack.stackSize = ((int) (tDustStack.stackSize * tDensityMultiplier));
while ((tDustStack.stackSize > 64) && (tList.size() < 6)
- && (tCapsuleCount + GT_ModHandler.getCapsuleCellContainerCount(tDustStack) * 64
+ && (tCapsuleCount + GT_ModHandler.getCapsuleCellContainerCount(tDustStack) * 64L
<= 64L)) {
- tCapsuleCount += GT_ModHandler.getCapsuleCellContainerCount(tDustStack) * 64;
+ tCapsuleCount += GT_ModHandler.getCapsuleCellContainerCount(tDustStack) * 64L;
tList.add(GT_Utility.copyAmount(64L, tDustStack));
tDustStack.stackSize -= 64;
}
@@ -174,71 +202,91 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr
}
}
if ((aMaterial.mExtraData & 0x1) != 0) {
- ItemStack cells = tCapsuleCount > 0L ? ItemList.Cell_Empty.get(tCapsuleCount) : null;
-
- GT_Values.RA.stdBuilder()
- .itemInputs(GT_Utility.copyAmount(tItemAmount, aStack), cells)
- .itemOutputs(
- tList.size() < 1 ? null : tList.get(0),
- tList.size() < 2 ? null : tList.get(1),
- tList.size() < 3 ? null : tList.get(2),
- tList.size() < 4 ? null : tList.get(3),
- tList.size() < 5 ? null : tList.get(4),
- tList.size() < 6 ? null : tList.get(5))
- .noFluidInputs()
- .fluidOutputs(tFluid)
- .duration(Math.max(1L, Math.abs(aMaterial.getProtons() * 2L * tItemAmount)))
- .eut(Math.min(4, tList.size()) * 30)
- .addTo(sElectrolyzerRecipes);
+ if (tList.size() > 0 || tFluid != null) {
+ GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder();
+ if (tCapsuleCount > 0L) {
+ recipeBuilder.itemInputs(
+ GT_Utility.copyAmount(tItemAmount, aStack),
+ ItemList.Cell_Empty.get(tCapsuleCount));
+ } else {
+ recipeBuilder.itemInputs(GT_Utility.copyAmount(tItemAmount, aStack));
+ }
+ if (tList.size() > 0) {
+ ItemStack[] outputsArray = tList.toArray(new ItemStack[Math.min(tList.size(), 6)]);
+ recipeBuilder.itemOutputs(outputsArray);
+ } else {
+ recipeBuilder.noItemOutputs();
+ }
+ recipeBuilder.noFluidInputs();
+ if (tFluid != null) {
+ recipeBuilder.fluidOutputs(tFluid);
+ } else {
+ recipeBuilder.noFluidOutputs();
+ }
+ recipeBuilder
+ .duration(Math.max(1L, Math.abs(aMaterial.getProtons() * 2L * tItemAmount)))
+ .eut(Math.min(4, tList.size()) * 30)
+ .addTo(sElectrolyzerRecipes);
+ }
}
if ((aMaterial.mExtraData & 0x2) != 0) {
- GT_Values.RA.stdBuilder()
- .itemInputs(
- GT_Utility.copyAmount(tItemAmount, aStack),
- tCapsuleCount > 0L ? ItemList.Cell_Empty.get(tCapsuleCount) : null)
- .itemOutputs(
- tList.size() < 1 ? null : tList.get(0),
- tList.size() < 2 ? null : tList.get(1),
- tList.size() < 3 ? null : tList.get(2),
- tList.size() < 4 ? null : tList.get(3),
- tList.size() < 5 ? null : tList.get(4),
- tList.size() < 6 ? null : tList.get(5))
- .noFluidInputs()
- .fluidOutputs(tFluid)
- .duration(Math.max(1L, Math.abs(aMaterial.getMass() * 4L * tItemAmount)))
- .eut(Math.min(4, tList.size()) * 5)
- .addTo(sCentrifugeRecipes);
+ if (tList.size() > 0 || tFluid != null) {
+ GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder();
+ if (tCapsuleCount > 0L) {
+ recipeBuilder.itemInputs(
+ GT_Utility.copyAmount(tItemAmount, aStack),
+ ItemList.Cell_Empty.get(tCapsuleCount));
+ } else {
+ recipeBuilder.itemInputs(GT_Utility.copyAmount(tItemAmount, aStack));
+ }
+ if (tList.size() > 0) {
+ ItemStack[] outputsArray = tList.toArray(new ItemStack[Math.min(tList.size(), 6)]);
+ recipeBuilder.itemOutputs(outputsArray);
+ } else {
+ recipeBuilder.noItemOutputs();
+ }
+ recipeBuilder.noFluidInputs();
+ if (tFluid != null) {
+ recipeBuilder.fluidOutputs(tFluid);
+ } else {
+ recipeBuilder.noFluidOutputs();
+ }
+ recipeBuilder.duration(Math.max(1L, Math.abs(aMaterial.getMass() * 4L * tItemAmount)))
+ .eut(Math.min(4, tList.size()) * 5)
+ .addTo(sCentrifugeRecipes);
+ }
}
}
}
- if (aMaterial.contains(SubTag.CRYSTALLISABLE)) {
- GT_Values.RA.addAutoclaveRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_Utility.getIntegratedCircuit(1),
- Materials.Water.getFluid(200L),
- GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L),
- 7000,
- 2000,
- 24,
- false);
- GT_Values.RA.addAutoclaveRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_Utility.getIntegratedCircuit(2),
- GT_ModHandler.getDistilledWater(100L),
- GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L),
- 9000,
- 1500,
- 24,
- false);
- GT_Values.RA.addAutoclaveRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_Utility.getIntegratedCircuit(3),
- Materials.Void.getMolten(36L),
- GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L),
- 10000,
- 1200,
- 24,
- false);
+ if (aMaterial.contains(SubTag.CRYSTALLISABLE)
+ && GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L))
+ .outputChances(7000)
+ .fluidInputs(Materials.Water.getFluid(200L))
+ .noFluidOutputs()
+ .duration(1 * MINUTES + 40 * SECONDS)
+ .eut(24)
+ .addTo(sAutoclaveRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(2))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L))
+ .outputChances(9000)
+ .fluidInputs(GT_ModHandler.getDistilledWater(100L))
+ .noFluidOutputs()
+ .duration(1 * MINUTES + 15 * SECONDS)
+ .eut(24)
+ .addTo(sAutoclaveRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(3))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L))
+ .outputChances(10000)
+ .fluidInputs(Materials.Void.getMolten(36L))
+ .noFluidOutputs()
+ .duration(1 * MINUTES)
+ .eut(24)
+ .addTo(sAutoclaveRecipes);
}
switch (aMaterial.mName) {
case "NULL":
@@ -282,12 +330,50 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr
GT_Utility.copyAmount(1L, aStack),
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L));
break;
- case "Diamond":
- GT_Values.RA.addImplosionRecipe(
- GT_Utility.copyAmount(4L, aStack),
- 32,
- ItemList.IC2_Industrial_Diamond.get(3L),
- GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 16L));
+ case "Diamond": {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), ItemList.Block_Powderbarrel.get(64))
+ .itemOutputs(
+ ItemList.IC2_Industrial_Diamond.get(3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 16L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.copyAmount(4L, aStack),
+ GT_ModHandler.getIC2Item("dynamite", 16, null))
+ .itemOutputs(
+ ItemList.IC2_Industrial_Diamond.get(3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 16L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), new ItemStack(Blocks.tnt, 32))
+ .itemOutputs(
+ ItemList.IC2_Industrial_Diamond.get(3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 16L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), GT_ModHandler.getIC2Item("industrialTnt", 8))
+ .itemOutputs(
+ ItemList.IC2_Industrial_Diamond.get(3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 16L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ }
break;
case "Opal":
case "Olivine":
@@ -298,12 +384,50 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr
case "Topaz":
case "BlueTopaz":
case "Tanzanite":
- case "Amethyst":
- GT_Values.RA.addImplosionRecipe(
- GT_Utility.copyAmount(4L, aStack),
- 24,
- GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
- GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 12L));
+ case "Amethyst": {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), ItemList.Block_Powderbarrel.get(48))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 12L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.copyAmount(4L, aStack),
+ GT_ModHandler.getIC2Item("dynamite", 12, null))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 12L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), new ItemStack(Blocks.tnt, 24))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 12L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), GT_ModHandler.getIC2Item("industrialTnt", 6))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 12L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ }
break;
case "FoolsRuby":
case "GarnetRed":
@@ -313,12 +437,50 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr
case "Monazite":
case "Forcicium":
case "Forcillium":
- case "Force":
- GT_Values.RA.addImplosionRecipe(
- GT_Utility.copyAmount(4L, aStack),
- 16,
- GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
- GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 8L));
+ case "Force": {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), ItemList.Block_Powderbarrel.get(32))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 8L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.copyAmount(4L, aStack),
+ GT_ModHandler.getIC2Item("dynamite", 8, null))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 8L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), new ItemStack(Blocks.tnt, 16))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 8L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), GT_ModHandler.getIC2Item("industrialTnt", 4))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 3L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 8L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ }
}
}
case dustPure, dustImpure, dustRefined -> {
@@ -327,63 +489,78 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr
aMaterial,
aMaterial.mOreByProducts);
if (aPrefix == OrePrefixes.dustPure) {
- if (aMaterial.contains(SubTag.ELECTROMAGNETIC_SEPERATION_GOLD))
- GT_Values.RA.addElectromagneticSeparatorRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L),
- GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Gold, 1L),
- GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 1L),
- new int[] { 10000, 4000, 2000 },
- 400,
- 24);
- if (aMaterial.contains(SubTag.ELECTROMAGNETIC_SEPERATION_IRON))
- GT_Values.RA.addElectromagneticSeparatorRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L),
- GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Iron, 1L),
- GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 1L),
- new int[] { 10000, 4000, 2000 },
- 400,
- 24);
+ if (aMaterial.contains(SubTag.ELECTROMAGNETIC_SEPERATION_GOLD)) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Gold, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 1L))
+ .outputChances(10000, 4000, 2000)
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(20 * SECONDS)
+ .eut(24)
+ .addTo(sElectroMagneticSeparatorRecipes);
+ }
+ if (aMaterial.contains(SubTag.ELECTROMAGNETIC_SEPERATION_IRON)) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Iron, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 1L))
+ .outputChances(10000, 4000, 2000)
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(20 * SECONDS)
+ .eut(24)
+ .addTo(sElectroMagneticSeparatorRecipes);
+ }
if (aMaterial.contains(SubTag.ELECTROMAGNETIC_SEPERATION_NEODYMIUM)) {
- GT_Values.RA.addElectromagneticSeparatorRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L),
- GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Neodymium, 1L),
- GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Neodymium, 1L),
- new int[] { 10000, 4000, 2000 },
- 400,
- 24);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Neodymium, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Neodymium, 1L))
+ .outputChances(10000, 4000, 2000)
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(20 * SECONDS)
+ .eut(24)
+ .addTo(sElectroMagneticSeparatorRecipes);
}
}
- if (aMaterial.contains(SubTag.CRYSTALLISABLE)) {
- GT_Values.RA.addAutoclaveRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_Utility.getIntegratedCircuit(1),
- Materials.Water.getFluid(200L),
- GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L),
- 9000,
- 2000,
- 24,
- false);
- GT_Values.RA.addAutoclaveRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_Utility.getIntegratedCircuit(2),
- GT_ModHandler.getDistilledWater(100L),
- GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L),
- 9500,
- 1500,
- 24,
- false);
- GT_Values.RA.addAutoclaveRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_Utility.getIntegratedCircuit(3),
- Materials.Void.getMolten(36L),
- GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L),
- 10000,
- 1200,
- 24,
- false);
+ if (aMaterial.contains(SubTag.CRYSTALLISABLE)
+ && GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L))
+ .outputChances(9000)
+ .fluidInputs(Materials.Water.getFluid(200L))
+ .noFluidOutputs()
+ .duration(1 * MINUTES + 40 * SECONDS)
+ .eut(24)
+ .addTo(sAutoclaveRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(2))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L))
+ .outputChances(9500)
+ .fluidInputs(GT_ModHandler.getDistilledWater(100L))
+ .noFluidOutputs()
+ .duration(1 * MINUTES + 15 * SECONDS)
+ .eut(24)
+ .addTo(sAutoclaveRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(3))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L))
+ .outputChances(10000)
+ .fluidInputs(Materials.Void.getMolten(36L))
+ .noFluidOutputs()
+ .duration(1 * MINUTES)
+ .eut(24)
+ .addTo(sAutoclaveRecipes);
}
ItemStack tImpureStack = GT_OreDictUnificator.get(
OrePrefixes.dustTiny,
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java
index 809ce8894f..0af641d35c 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java
@@ -9,7 +9,6 @@ import java.util.ArrayList;
import net.minecraft.item.ItemStack;
import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.SubTag;
@@ -161,8 +160,7 @@ public class ProcessingOre implements gregtech.api.interfaces.IOreRecipeRegistra
null,
null,
GT_Utility.mul(aMultiplier * 3 * aMaterial.mSmeltingMultiplier, tSmeltInto),
- ItemList.TE_Slag
- .get(1L, GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L)),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L),
tSmeltInto.stackSize * 500,
120,
1500);
@@ -172,8 +170,7 @@ public class ProcessingOre implements gregtech.api.interfaces.IOreRecipeRegistra
null,
null,
GT_Utility.mul(aMultiplier * 3 * aMaterial.mSmeltingMultiplier, tSmeltInto),
- ItemList.TE_Slag
- .get(1L, GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L)),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L),
tSmeltInto.stackSize * 500,
120,
1500);
@@ -186,8 +183,7 @@ public class ProcessingOre implements gregtech.api.interfaces.IOreRecipeRegistra
null,
null,
GT_Utility.mul(aMultiplier * 2 * aMaterial.mSmeltingMultiplier, tSmeltInto),
- ItemList.TE_Slag
- .get(1L, GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L)),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L),
tSmeltInto.stackSize * 500,
120,
1500);
@@ -197,8 +193,7 @@ public class ProcessingOre implements gregtech.api.interfaces.IOreRecipeRegistra
null,
null,
GT_Utility.mul(aMultiplier * 2 * aMaterial.mSmeltingMultiplier, tSmeltInto),
- ItemList.TE_Slag
- .get(1L, GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L)),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L),
tSmeltInto.stackSize * 500,
120,
1500);
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java
index a874d9991d..dd4d950676 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java
@@ -3,11 +3,21 @@ package gregtech.loaders.oreprocessing;
import static gregtech.api.enums.ConfigCategories.Recipes.harderrecipes;
import static gregtech.api.enums.GT_Values.L;
import static gregtech.api.enums.GT_Values.NI;
-import static gregtech.api.enums.GT_Values.RA;
import static gregtech.api.enums.GT_Values.W;
import static gregtech.api.util.GT_ModHandler.RecipeBits.BUFFERED;
import static gregtech.api.util.GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes;
import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sImplosionRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.MINUTES;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+import static gregtech.api.util.GT_RecipeBuilder.TICKS;
+import static gregtech.api.util.GT_RecipeConstants.FUEL_TYPE;
+import static gregtech.api.util.GT_RecipeConstants.FUEL_VALUE;
import static gregtech.api.util.GT_Utility.calculateRecipeEU;
import static gregtech.common.GT_Proxy.tBits;
@@ -17,10 +27,19 @@ import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import gregtech.api.GregTech_API;
-import gregtech.api.enums.*;
+import gregtech.api.enums.ConfigCategories;
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.SubTag;
+import gregtech.api.enums.TextureSet;
+import gregtech.api.enums.TierEU;
+import gregtech.api.enums.ToolDictNames;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_RecipeConstants;
import gregtech.api.util.GT_RecipeRegistrator;
import gregtech.api.util.GT_Utility;
@@ -81,18 +100,28 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L));
if (aMaterial.mFuelPower > 0) {
- RA.addFuel(GT_Utility.copyAmount(1L, aStack), NI, aMaterial.mFuelPower, aMaterial.mFuelType);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack))
+ .noItemOutputs()
+ .noFluidInputs()
+ .noFluidOutputs()
+ .metadata(FUEL_VALUE, aMaterial.mFuelPower)
+ .metadata(FUEL_TYPE, aMaterial.mFuelType)
+ .duration(0)
+ .eut(0)
+ .addTo(GT_RecipeConstants.Fuel);
}
if (aMaterial.mStandardMoltenFluid != null
&& !(aMaterial == Materials.AnnealedCopper || aMaterial == Materials.WroughtIron)) {
-
- RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Plate.get(0L),
- aMaterial.getMolten(L),
- aMaterial.getPlates(1),
- 32,
- calculateRecipeEU(aMaterial, 8));
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Plate.get(0L))
+ .itemOutputs(aMaterial.getPlates(1))
+ .fluidInputs(aMaterial.getMolten(L))
+ .noFluidOutputs()
+ .duration(1 * SECONDS + 12 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8))
+ .addTo(sFluidSolidficationRecipes);
}
GT_ModHandler.addCraftingRecipe(
@@ -205,14 +234,16 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
.addTo(sBenderRecipes);
} else {
-
- RA.addAssemblerRecipe(
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 2L),
- GT_Utility.getIntegratedCircuit(2),
- Materials.Glue.getFluid(10L),
- GT_Utility.copyAmount(1L, aStack),
- 64,
- 8);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 2L),
+ GT_Utility.getIntegratedCircuit(2))
+ .itemOutputs(GT_Utility.copyAmount(1L, aStack))
+ .fluidInputs(Materials.Glue.getFluid(10L))
+ .noFluidOutputs()
+ .duration(3 * SECONDS + 4 * TICKS)
+ .eut(8)
+ .addTo(sAssemblerRecipes);
}
}
@@ -271,21 +302,60 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
.addTo(sBenderRecipes);
} else {
-
- RA.addAssemblerRecipe(
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 3L),
- GT_Utility.getIntegratedCircuit(3),
- Materials.Glue.getFluid(20L),
- GT_Utility.copyAmount(1L, aStack),
- 96,
- 8);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 3L),
+ GT_Utility.getIntegratedCircuit(3))
+ .itemOutputs(GT_Utility.copyAmount(1L, aStack))
+ .fluidInputs(Materials.Glue.getFluid(20L))
+ .noFluidOutputs()
+ .duration(4 * SECONDS + 16 * TICKS)
+ .eut(8)
+ .addTo(sAssemblerRecipes);
}
- RA.addImplosionRecipe(
- GT_Utility.copyAmount(1L, aStack),
- 2,
- GT_OreDictUnificator.get(OrePrefixes.compressed, aMaterial, 1L),
- GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L));
+ if (GT_OreDictUnificator.get(OrePrefixes.compressed, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Block_Powderbarrel.get(4))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.compressed, aMaterial, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_ModHandler.getIC2Item("dynamite", 1, null))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.compressed, aMaterial, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), new ItemStack(Blocks.tnt, 2))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.compressed, aMaterial, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_ModHandler.getIC2Item("industrialTnt", 1))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.compressed, aMaterial, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sImplosionRecipes);
+ }
}
private void registerPlateQuadruple(final Materials aMaterial, final ItemStack aStack, final boolean aNoSmashing,
@@ -295,12 +365,6 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
GT_ModHandler.removeRecipeByOutputDelayed(aStack);
- if (!aNoWorking) RA.addCNCRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial, 1L),
- (int) Math.max(aMaterialMass * 2L, 1L),
- 30);
-
if (!aNoSmashing) {
if (GregTech_API.sRecipeFile.get(
@@ -339,14 +403,16 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
.addTo(sBenderRecipes);
} else {
-
- RA.addAssemblerRecipe(
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L),
- GT_Utility.getIntegratedCircuit(4),
- Materials.Glue.getFluid(30L),
- GT_Utility.copyAmount(1L, aStack),
- 128,
- 8);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L),
+ GT_Utility.getIntegratedCircuit(4))
+ .itemOutputs(GT_Utility.copyAmount(1L, aStack))
+ .fluidInputs(Materials.Glue.getFluid(30L))
+ .noFluidOutputs()
+ .duration(6 * SECONDS + 8 * TICKS)
+ .eut(8)
+ .addTo(sAssemblerRecipes);
}
}
@@ -395,14 +461,16 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
.addTo(sBenderRecipes);
} else {
-
- RA.addAssemblerRecipe(
- gregtech.api.util.GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 5L),
- ItemList.Circuit_Integrated.getWithDamage(0L, 5L),
- Materials.Glue.getFluid(40L),
- GT_Utility.copyAmount(1L, aStack),
- 160,
- 8);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 5L),
+ GT_Utility.getIntegratedCircuit(5))
+ .itemOutputs(GT_Utility.copyAmount(1L, aStack))
+ .fluidInputs(Materials.Glue.getFluid(40L))
+ .noFluidOutputs()
+ .duration(8 * SECONDS)
+ .eut(8)
+ .addTo(sAssemblerRecipes);
}
}
@@ -434,13 +502,14 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
GT_ModHandler.removeRecipeByOutputDelayed(aStack);
if (aMaterial.mStandardMoltenFluid != null) {
-
- RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Casing.get(0L),
- aMaterial.getMolten(L / 2),
- GT_OreDictUnificator.get(OrePrefixes.itemCasing, aMaterial, 1L),
- 16,
- calculateRecipeEU(aMaterial, 8));
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.itemCasing, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(L / 2))
+ .noFluidOutputs()
+ .duration(16 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8))
+ .addTo(sFluidSolidficationRecipes);
}
if (aMaterial.mUnificatable && aMaterial.mMaterialInto == aMaterial
@@ -462,27 +531,77 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
}
}
- RA.addAlloySmelterRecipe(
- GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 2L),
- ItemList.Shape_Mold_Casing.get(0L),
- GT_Utility.copyAmount(3L, aStack),
- 128,
- calculateRecipeEU(aMaterial, 15));
-
- RA.addCutterRecipe(
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L),
- GT_OreDictUnificator.get(OrePrefixes.itemCasing, aMaterial, 2L),
- NI,
- (int) Math.max(aMaterial.getMass(), 1L),
- calculateRecipeEU(aMaterial, 16));
-
- RA.addExtruderRecipe(
- GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L),
- ItemList.Shape_Extruder_Casing.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.itemCasing, aMaterial, 2L),
- (int) Math.max(aMaterial.getMass(), 1L),
- calculateRecipeEU(aMaterial, 45));
+ if (GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 2L),
+ ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_Utility.copyAmount(3L, aStack))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(6 * SECONDS + 8 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 15))
+ .addTo(sAlloySmelterRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L),
+ ItemList.Shape_Extruder_Casing.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.itemCasing, aMaterial, 2L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterial.getMass(), 1L)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 45))
+ .addTo(sExtruderRecipes);
+ }
+
+ if (GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.itemCasing, aMaterial, 2L))
+ .fluidInputs(
+ Materials.Water.getFluid(
+ Math.max(
+ 4,
+ Math.min(
+ 1000,
+ ((int) Math.max(aMaterial.getMass(), 1L)) * (calculateRecipeEU(aMaterial, 16)) / 320))))
+ .noFluidOutputs()
+ .duration(2 * ((int) Math.max(aMaterial.getMass(), 1L)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 16))
+ .addTo(sCutterRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.itemCasing, aMaterial, 2L))
+ .fluidInputs(
+ GT_ModHandler.getDistilledWater(
+ Math.max(
+ 3,
+ Math.min(
+ 750,
+ ((int) Math.max(aMaterial.getMass(), 1L)) * (calculateRecipeEU(aMaterial, 16)) / 426))))
+ .noFluidOutputs()
+ .duration(2 * ((int) Math.max(aMaterial.getMass(), 1L)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 16))
+ .addTo(sCutterRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.itemCasing, aMaterial, 2L))
+ .fluidInputs(
+ Materials.Lubricant.getFluid(
+ Math.max(
+ 1,
+ Math.min(
+ 250,
+ ((int) Math.max(aMaterial.getMass(), 1L)) * (calculateRecipeEU(aMaterial, 16))
+ / 1280))))
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterial.getMass(), 1L)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 16))
+ .addTo(sCutterRecipes);
+ }
GT_RecipeRegistrator.registerReverseFluidSmelting(aStack, aMaterial, aPrefix.mMaterialAmount, null);
}
@@ -490,26 +609,31 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist
switch (aOreDictName) {
case "plateAlloyCarbon" -> {
- RA.addAssemblerRecipe(
- GT_ModHandler.getIC2Item("generator", 1L),
- GT_Utility.copyAmount(4L, aStack),
- GT_ModHandler.getIC2Item("windMill", 1L),
- 6400,
- 8);
- GT_ModHandler.addAlloySmelterRecipe(
- GT_Utility.copyAmount(1L, aStack),
- new ItemStack(Blocks.glass, 3, W),
- GT_ModHandler.getIC2Item("reinforcedGlass", 4L),
- 400,
- 4,
- false);
- GT_ModHandler.addAlloySmelterRecipe(
- GT_Utility.copyAmount(1L, aStack),
- Materials.Glass.getDust(3),
- GT_ModHandler.getIC2Item("reinforcedGlass", 4L),
- 400,
- 4,
- false);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_ModHandler.getIC2Item("generator", 1L), GT_Utility.copyAmount(4L, aStack))
+ .itemOutputs(GT_ModHandler.getIC2Item("windMill", 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(5 * MINUTES + 20 * SECONDS)
+ .eut(8)
+ .addTo(sAssemblerRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), new ItemStack(Blocks.glass, 3, W))
+ .itemOutputs(GT_ModHandler.getIC2Item("reinforcedGlass", 4L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(20 * SECONDS)
+ .eut(4)
+ .addTo(sAlloySmelterRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), Materials.Glass.getDust(3))
+ .itemOutputs(GT_ModHandler.getIC2Item("reinforcedGlass", 4L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(20 * SECONDS)
+ .eut(4)
+ .addTo(sAlloySmelterRecipes);
}
case "plateAlloyAdvanced" -> {
GT_ModHandler.addAlloySmelterRecipe(
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingRecycling.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingRecycling.java
index 4f19d285ac..45c549351c 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingRecycling.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingRecycling.java
@@ -1,5 +1,8 @@
package gregtech.loaders.oreprocessing;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCannerRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.TICKS;
+
import net.minecraft.item.ItemStack;
import gregtech.api.enums.GT_Values;
@@ -21,13 +24,18 @@ public class ProcessingRecycling implements gregtech.api.interfaces.IOreRecipeRe
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
if ((aMaterial != Materials.Empty) && (GT_Utility.getFluidForFilledItem(aStack, true) == null)
- && !aMaterial.contains(SubTag.SMELTING_TO_FLUID))
- GT_Values.RA.addCannerRecipe(
- aStack,
- null,
- GT_Utility.getContainerItem(aStack, true),
- GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, aPrefix.mMaterialAmount / 3628800L),
- (int) Math.max(aMaterial.getMass() / 2L, 1L),
- 2);
+ && !aMaterial.contains(SubTag.SMELTING_TO_FLUID)
+ && (GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L) != null)) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(aStack)
+ .itemOutputs(
+ GT_Utility.getContainerItem(aStack, true),
+ GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, aPrefix.mMaterialAmount / 3628800L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterial.getMass() / 2L, 1L)) * TICKS)
+ .eut(2)
+ .addTo(sCannerRecipes);
+ }
}
}
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java
index ae96f0eea9..fcefe6fb88 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java
@@ -1,5 +1,10 @@
package gregtech.loaders.oreprocessing;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+import static gregtech.api.util.GT_RecipeBuilder.TICKS;
import static gregtech.api.util.GT_Utility.calculateRecipeEU;
import net.minecraft.init.Blocks;
@@ -37,440 +42,673 @@ public class ProcessingShaping implements gregtech.api.interfaces.IOreRecipeRegi
return;
}
- if (!OrePrefixes.block.isIgnored(aMaterial.mSmeltInto)) {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(9L, aStack),
- ItemList.Shape_Extruder_Block.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.block, aMaterial.mSmeltInto, tAmount),
- 10 * tAmount,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
+ if (!OrePrefixes.block.isIgnored(aMaterial.mSmeltInto)
+ && (GT_OreDictUnificator.get(OrePrefixes.block, aMaterial.mSmeltInto, 1L) != null)) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(9L, aStack), ItemList.Shape_Extruder_Block.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((10 * tAmount) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
// Allow creation of alloy smelter recipes for material recycling if < IV tier.
if (tTrueVoltage < TierEU.IV) {
- GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(9L, aStack),
- ItemList.Shape_Mold_Block.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.block, aMaterial.mSmeltInto, tAmount),
- 5 * tAmount,
- calculateRecipeEU(aMaterial, 4 * tVoltageMultiplier));
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(9L, aStack), ItemList.Shape_Mold_Block.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((5 * tAmount) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 4 * tVoltageMultiplier))
+ .addTo(sAlloySmelterRecipes);
}
}
- if (((aPrefix != OrePrefixes.ingot) || (aMaterial != aMaterial.mSmeltInto))) {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Ingot.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial.mSmeltInto, tAmount),
- 10,
- calculateRecipeEU(aMaterial, 4 * tVoltageMultiplier));
+ if ((aPrefix != OrePrefixes.ingot || aMaterial != aMaterial.mSmeltInto)
+ && GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Ingot.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(10 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 4 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
}
-
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Pipe_Tiny.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.pipeTiny, aMaterial.mSmeltInto, tAmount * 2),
- 4 * tAmount,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
-
- if (!(aMaterial == Materials.Redstone || aMaterial == Materials.Glowstone)) {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Pipe_Small.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.pipeSmall, aMaterial.mSmeltInto, tAmount),
- 8 * tAmount,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
-
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(3L, aStack),
- ItemList.Shape_Extruder_Pipe_Medium.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.pipeMedium, aMaterial.mSmeltInto, tAmount),
- 24 * tAmount,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
-
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(6L, aStack),
- ItemList.Shape_Extruder_Pipe_Large.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.pipeLarge, aMaterial.mSmeltInto, tAmount),
- 48 * tAmount,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeTiny, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Pipe_Tiny.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeTiny, aMaterial.mSmeltInto, tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((4 * tAmount) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeSmall, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Pipe_Small.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeSmall, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((8 * tAmount) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeMedium, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(3L, aStack), ItemList.Shape_Extruder_Pipe_Medium.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeMedium, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((24 * tAmount) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeLarge, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(6L, aStack), ItemList.Shape_Extruder_Pipe_Large.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeLarge, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((48 * tAmount) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeHuge, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(12L, aStack), ItemList.Shape_Extruder_Pipe_Huge.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeHuge, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((96 * tAmount) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Plate.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Small_Gear.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(6L, aStack), ItemList.Shape_Extruder_Turbine_Blade.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
}
-
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(12L, aStack),
- ItemList.Shape_Extruder_Pipe_Huge.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.pipeHuge, aMaterial.mSmeltInto, tAmount),
- 96 * tAmount,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Plate.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L),
- ItemList.Shape_Extruder_Small_Gear.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(6L, aStack),
- ItemList.Shape_Extruder_Turbine_Blade.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
if (!(aMaterial == Materials.AnnealedCopper || aMaterial == Materials.WroughtIron)) {
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Ring.get(0L),
- aMaterial.getMolten(36L),
- GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial, 1L),
- 100,
- calculateRecipeEU(aMaterial, 4 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Screw.get(0L),
- aMaterial.getMolten(18L),
- GT_OreDictUnificator.get(OrePrefixes.screw, aMaterial, 1L),
- 50,
- calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Rod.get(0L),
- aMaterial.getMolten(72L),
- GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1L),
- 150,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Bolt.get(0L),
- aMaterial.getMolten(18L),
- GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial, 1L),
- 50,
- calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Round.get(0L),
- aMaterial.getMolten(18L),
- GT_OreDictUnificator.get(OrePrefixes.round, aMaterial, 1L),
- 50,
- calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Rod_Long.get(0L),
- aMaterial.getMolten(144L),
- GT_OreDictUnificator.get(OrePrefixes.stickLong, aMaterial, 1L),
- 300,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Turbine_Blade.get(0L),
- aMaterial.getMolten(864L),
- GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 1L),
- 400,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Pipe_Tiny.get(0L),
- aMaterial.getMolten(72L),
- GT_OreDictUnificator.get(OrePrefixes.pipeTiny, aMaterial, 1L),
- 20,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Pipe_Small.get(0L),
- aMaterial.getMolten(144L),
- GT_OreDictUnificator.get(OrePrefixes.pipeSmall, aMaterial, 1L),
- 40,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Pipe_Medium.get(0L),
- aMaterial.getMolten(432L),
- GT_OreDictUnificator.get(OrePrefixes.pipeMedium, aMaterial, 1L),
- 80,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Pipe_Large.get(0L),
- aMaterial.getMolten(864L),
- GT_OreDictUnificator.get(OrePrefixes.pipeLarge, aMaterial, 1L),
- 160,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Pipe_Huge.get(0L),
- aMaterial.getMolten(1728L),
- GT_OreDictUnificator.get(OrePrefixes.pipeHuge, aMaterial, 1L),
- 320,
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Ring.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(36L))
+ .noFluidOutputs()
+ .duration(5 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 4 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.screw, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Screw.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(18L))
+ .noFluidOutputs()
+ .duration(2 * SECONDS + 10 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Rod.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(72L))
+ .noFluidOutputs()
+ .duration(7 * SECONDS + 10 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Bolt.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(18L))
+ .noFluidOutputs()
+ .duration(2 * SECONDS + 10 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.round, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Round.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.round, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(18L))
+ .noFluidOutputs()
+ .duration(2 * SECONDS + 10 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.stickLong, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Rod_Long.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.stickLong, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(144L))
+ .noFluidOutputs()
+ .duration(15 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Turbine_Blade.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(864L))
+ .noFluidOutputs()
+ .duration(20 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeTiny, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Pipe_Tiny.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeTiny, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(72L))
+ .noFluidOutputs()
+ .duration(1 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeSmall, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Pipe_Small.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeSmall, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(144L))
+ .noFluidOutputs()
+ .duration(2 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeMedium, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Pipe_Medium.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeMedium, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(432L))
+ .noFluidOutputs()
+ .duration(4 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeLarge, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Pipe_Large.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeLarge, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(864L))
+ .noFluidOutputs()
+ .duration(8 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.pipeHuge, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(ItemList.Shape_Mold_Pipe_Huge.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeHuge, aMaterial, 1L))
+ .fluidInputs(aMaterial.getMolten(1728L))
+ .noFluidOutputs()
+ .duration(16 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sFluidSolidficationRecipes);
+ }
}
if (tAmount * 2 <= 64) {
if (!(aMaterial == Materials.Aluminium)) {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Rod.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.mSmeltInto, tAmount * 2),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 6 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Rod.get(0L))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.mSmeltInto, tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 6 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
} else {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Rod.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.mSmeltInto, tAmount * 2),
- 200,
- calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Rod.get(0L))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.mSmeltInto, tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(10 * SECONDS)
+ .eut(calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ }
+ }
+ if (tAmount * 2 <= 64) {
+ if (GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Wire.get(0L))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial.mSmeltInto, tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 6 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ }
+ if (tAmount * 8 <= 64) {
+ if (GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Bolt.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial.mSmeltInto, tAmount * 8))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
}
}
- if (tAmount * 2 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Wire.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial.mSmeltInto, tAmount * 2),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 6 * tVoltageMultiplier));
- if (tAmount * 8 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Bolt.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial.mSmeltInto, tAmount * 8),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
if (tAmount * 4 <= 64) {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Ring.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial.mSmeltInto, tAmount * 4),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 6 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Ring.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial.mSmeltInto, tAmount * 4))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 6 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
if ((aMaterial.mUnificatable) && (aMaterial.mMaterialInto == aMaterial)
- && !aMaterial.contains(SubTag.NO_SMASHING))
-
+ && !aMaterial.contains(SubTag.NO_SMASHING)) {
// If material tier < IV then add manual recipe.
- if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) {
+ if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV
+ && GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial, 1L) != null) {
GT_ModHandler.addCraftingRecipe(
GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial, 1L),
GT_Proxy.tBits,
new Object[] { "h ", "fX", 'X', OrePrefixes.stick.get(aMaterial) });
}
+ }
}
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Extruder_Sword.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(3L, aStack),
- ItemList.Shape_Extruder_Pickaxe.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 3L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Shovel.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 1L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(3L, aStack),
- ItemList.Shape_Extruder_Axe.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 3L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Extruder_Hoe.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(6L, aStack),
- ItemList.Shape_Extruder_Hammer.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.toolHeadHammer, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 6L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Extruder_File.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.toolHeadFile, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Extruder_Saw.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.toolHeadSaw, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(4L, aStack),
- ItemList.Shape_Extruder_Gear.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 5L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Extruder_Sword.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(3L, aStack), ItemList.Shape_Extruder_Pickaxe.get(0L))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 3L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Shovel.get(0L))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 1L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(3L, aStack), ItemList.Shape_Extruder_Axe.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 3L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Extruder_Hoe.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.toolHeadHammer, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(6L, aStack), ItemList.Shape_Extruder_Hammer.get(0L))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.toolHeadHammer, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 6L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.toolHeadFile, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Extruder_File.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.toolHeadFile, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.toolHeadSaw, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Extruder_Saw.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.toolHeadSaw, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
+ if (GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(4L, aStack), ItemList.Shape_Extruder_Gear.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 5L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 8 * tVoltageMultiplier))
+ .addTo(sExtruderRecipes);
+ }
if (!(aMaterial == Materials.StyreneButadieneRubber || aMaterial == Materials.Silicone)) {
if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) {
- GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Mold_Plate.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Mold_Plate.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier))
+ .addTo(sAlloySmelterRecipes);
+ }
}
} else {
// If tier < IV then add ability to turn ingots into plates via alloy smelter.
if (tTrueVoltage < TierEU.IV) {
- GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Mold_Plate.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 2L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Mold_Plate.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 2L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier))
+ .addTo(sAlloySmelterRecipes);
+ }
}
}
// If tier < IV then add ability to turn ingots into gears via alloy smelter.
if (tTrueVoltage < TierEU.IV) {
- GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(8L, aStack),
- ItemList.Shape_Mold_Gear.get(0L),
- GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial.mSmeltInto, tAmount),
- (int) Math.max(aMaterialMass * 10L * tAmount, tAmount),
- calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier));
+ if (GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial.mSmeltInto, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(8L, aStack), ItemList.Shape_Mold_Gear.get(0L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial.mSmeltInto, tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) Math.max(aMaterialMass * 10L * tAmount, tAmount)) * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 2 * tVoltageMultiplier))
+ .addTo(sAlloySmelterRecipes);
+ }
}
switch (aMaterial.mSmeltInto.mName) {
case "Glass" -> {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Bottle.get(0L),
- new ItemStack(Items.glass_bottle, 1),
- tAmount * 32,
- 16);
- GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Mold_Bottle.get(0L),
- new ItemStack(Items.glass_bottle, 1),
- tAmount * 64,
- 4);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Bottle.get(0L))
+ .itemOutputs(new ItemStack(Items.glass_bottle, 1))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 32) * TICKS)
+ .eut(16)
+ .addTo(sExtruderRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Mold_Bottle.get(0L))
+ .itemOutputs(new ItemStack(Items.glass_bottle, 1))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 64) * TICKS)
+ .eut(4)
+ .addTo(sAlloySmelterRecipes);
}
case "Steel" -> {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Cell.get(0L),
- ItemList.Cell_Empty.get(tAmount),
- tAmount * 128,
- 30);
- if (tAmount * 2 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingadviron", tAmount * 2),
- tAmount * 32,
- 3 * tVoltageMultiplier);
- if (tAmount * 2 <= 64) GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Mold_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingadviron", tAmount * 3),
- tAmount * 128,
- 1 * tVoltageMultiplier);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Cell.get(0L))
+ .itemOutputs(ItemList.Cell_Empty.get(tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sExtruderRecipes);
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingadviron", tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 32) * TICKS)
+ .eut(3 * tVoltageMultiplier)
+ .addTo(sExtruderRecipes);
+ }
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingadviron", tAmount * 3))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(1 * tVoltageMultiplier)
+ .addTo(sAlloySmelterRecipes);
+ }
}
case "Iron", "WroughtIron" -> {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Cell.get(0L),
- GT_ModHandler.getIC2Item("fuelRod", tAmount),
- tAmount * 128,
- 30);
- if (tAmount * 2 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingiron", tAmount * 2),
- tAmount * 32,
- 3 * tVoltageMultiplier);
- if (tAmount * 2 <= 64) GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Mold_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingiron", tAmount * 3),
- tAmount * 128,
- 1 * tVoltageMultiplier);
- if (tAmount * 31 <= 64) GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(31L, aStack),
- ItemList.Shape_Mold_Anvil.get(0L),
- new ItemStack(Blocks.anvil, 1, 0),
- tAmount * 512,
- 4 * tVoltageMultiplier);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Cell.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("fuelRod", tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sExtruderRecipes);
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingiron", tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 32) * TICKS)
+ .eut(3 * tVoltageMultiplier)
+ .addTo(sExtruderRecipes);
+ }
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingiron", tAmount * 3))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(1 * tVoltageMultiplier)
+ .addTo(sAlloySmelterRecipes);
+ }
+ if (tAmount * 31 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(31L, aStack), ItemList.Shape_Mold_Anvil.get(0L))
+ .itemOutputs(new ItemStack(Blocks.anvil, 1, 0))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 512) * TICKS)
+ .eut(4 * tVoltageMultiplier)
+ .addTo(sAlloySmelterRecipes);
+ }
}
case "Tin" -> {
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Extruder_Cell.get(0L),
- ItemList.Cell_Empty.get(tAmount),
- tAmount * 128,
- 30);
- if (tAmount * 2 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingtin", tAmount * 2),
- tAmount * 32,
- 3 * tVoltageMultiplier);
- if (tAmount * 2 <= 64) GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Mold_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingtin", tAmount * 3),
- tAmount * 128,
- 1 * tVoltageMultiplier);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Extruder_Cell.get(0L))
+ .itemOutputs(ItemList.Cell_Empty.get(tAmount))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sExtruderRecipes);
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingtin", tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 32) * TICKS)
+ .eut(3 * tVoltageMultiplier)
+ .addTo(sExtruderRecipes);
+ }
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingtin", tAmount * 3))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(1 * tVoltageMultiplier)
+ .addTo(sAlloySmelterRecipes);
+ }
}
case "Lead" -> {
- if (tAmount * 2 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Casing.get(0L),
- GT_ModHandler.getIC2Item("casinglead", tAmount * 2),
- tAmount * 32,
- 3 * tVoltageMultiplier);
- if (tAmount * 2 <= 64) GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Mold_Casing.get(0L),
- GT_ModHandler.getIC2Item("casinglead", tAmount * 3),
- tAmount * 128,
- 1 * tVoltageMultiplier);
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casinglead", tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 32) * TICKS)
+ .eut(3 * tVoltageMultiplier)
+ .addTo(sExtruderRecipes);
+ }
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casinglead", tAmount * 3))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(1 * tVoltageMultiplier)
+ .addTo(sAlloySmelterRecipes);
+ }
}
case "Copper", "AnnealedCopper" -> {
- if (tAmount * 2 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingcopper", tAmount * 2),
- tAmount * 32,
- 3 * tVoltageMultiplier);
- if (tAmount * 2 <= 64) GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Mold_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingcopper", tAmount * 3),
- tAmount * 128,
- 1 * tVoltageMultiplier);
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingcopper", tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 32) * TICKS)
+ .eut(3 * tVoltageMultiplier)
+ .addTo(sExtruderRecipes);
+ }
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingcopper", tAmount * 3))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(1 * tVoltageMultiplier)
+ .addTo(sAlloySmelterRecipes);
+ }
}
case "Bronze" -> {
- if (tAmount * 2 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingbronze", tAmount * 2),
- tAmount * 32,
- 3 * tVoltageMultiplier);
- if (tAmount * 2 <= 64) GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Mold_Casing.get(0L),
- GT_ModHandler.getIC2Item("casingbronze", tAmount * 3),
- tAmount * 128,
- 1 * tVoltageMultiplier);
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingbronze", tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 32) * TICKS)
+ .eut(3 * tVoltageMultiplier)
+ .addTo(sExtruderRecipes);
+ }
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casingbronze", tAmount * 3))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(1 * tVoltageMultiplier)
+ .addTo(sAlloySmelterRecipes);
+ }
}
case "Gold" -> {
- if (tAmount * 2 <= 64) GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Casing.get(0L),
- GT_ModHandler.getIC2Item("casinggold", tAmount * 2),
- tAmount * 32,
- 3 * tVoltageMultiplier);
- if (tAmount * 2 <= 64) GT_Values.RA.addAlloySmelterRecipe(
- GT_Utility.copyAmount(2L, aStack),
- ItemList.Shape_Mold_Casing.get(0L),
- GT_ModHandler.getIC2Item("casinggold", tAmount * 3),
- tAmount * 128,
- 1 * tVoltageMultiplier);
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casinggold", tAmount * 2))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 32) * TICKS)
+ .eut(3 * tVoltageMultiplier)
+ .addTo(sExtruderRecipes);
+ }
+ if (tAmount * 2 <= 64) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Shape_Mold_Casing.get(0L))
+ .itemOutputs(GT_ModHandler.getIC2Item("casinggold", tAmount * 3))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(1 * tVoltageMultiplier)
+ .addTo(sAlloySmelterRecipes);
+ }
+ }
+ case "Polytetrafluoroethylene" -> {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_Utility.copyAmount(1L, aStack), ItemList.Shape_Extruder_Cell.get(0L))
+ .itemOutputs(ItemList.Cell_Empty.get(tAmount * 4))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration((tAmount * 128) * TICKS)
+ .eut(TierEU.RECIPE_LV)
+ .addTo(sExtruderRecipes);
}
- case "Polytetrafluoroethylene" -> // Recipe for cells from PTFE, why is it here?
- GT_Values.RA.addExtruderRecipe(
- GT_Utility.copyAmount(1L, aStack),
- ItemList.Shape_Extruder_Cell.get(0L),
- ItemList.Cell_Empty.get(tAmount * 4),
- tAmount * 128,
- 30);
}
}
}