aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/loaders/oreprocessing
diff options
context:
space:
mode:
authorConnor-Colenso <52056774+Connor-Colenso@users.noreply.github.com>2023-01-25 05:22:14 +0000
committerGitHub <noreply@github.com>2023-01-25 05:22:14 +0000
commitd9f473283fa606662f57bbafdd49be37728b0eb0 (patch)
tree3797db9d52f714a5686675ba8a4b5d67c4ce6680 /src/main/java/gregtech/loaders/oreprocessing
parente197a79a0558c6ce1b116d871a71a214962a01a3 (diff)
downloadGT5-Unofficial-d9f473283fa606662f57bbafdd49be37728b0eb0.tar.gz
GT5-Unofficial-d9f473283fa606662f57bbafdd49be37728b0eb0.tar.bz2
GT5-Unofficial-d9f473283fa606662f57bbafdd49be37728b0eb0.zip
EOH materials + Allow materials to pick their processing tier (#1671)
* Begin addition of tiered material manipulation * Dwarf matter * Add hardcoded EU tiers for wider usage. * New material images etc * Nugget processing tiers * Move iron nugget to wrought iron smelting to the correct place * Add white dwarf shapes * Add white dwarf shapes * Additional retiering options for EU consumption on material part generation * White dwarf matter complete * Tier neutronium processing at ZPM * Spotless * More adjustments * Renaming files * Add new overlays for magneto material and more name adjustments * Add no recipes subtag * Spotless + name adjustment * Undo isCustom to maintain potential public variable references in addons. * Undo isCustom to maintain potential public variable references in addons. * Fix fluid registry corruption. * Add rotor EU override * Add rotor EU override * Make neutronium mass more reasonable * Add proper time adjustments to rotor (probably an old oversight) * Adjust enums to use VP rather than recalculate * Fix typos on EU usage * spotlessApply (#1672) Co-authored-by: Connor-Colenso <52056774+Connor-Colenso@users.noreply.github.com> Co-authored-by: GitHub GTNH Actions <> * Change setProcessingMaterialTierEU to accept long. * Small fix * Add space and time materials * Add new forge hammer support * Update tooltip * Expand laser engraver slots. * spotlessApply (#1673) Co-authored-by: Connor-Colenso <52056774+Connor-Colenso@users.noreply.github.com> Co-authored-by: GitHub GTNH Actions <> * Reserve texture page. * Modernise GT circuit usage * Add oversight in assembler frame recipe * Add missing MHDCSM overlay textures * Remove small and tiny MHDCSM dusts * Fix error in ingot texture * Fix NO_RECIPES not applying to frame boxes * Restore missing ingot * Add rod handles for materials * Fix frame box auto generating with NO_RECIPEs tag * recipe * Spotless * Add MOD_ID_GTPP as modid * spotlessApply (#1675) Co-authored-by: Connor-Colenso <52056774+Connor-Colenso@users.noreply.github.com> Co-authored-by: GitHub GTNH Actions <> * Remove smelting spacetime from furnace (why does this exist?) * Recipes + new storage blocks for materials * Bedrockium LuV -> EV * SpaceTime UMV -> UIV * TranscendentMetal UIV -> UEV * MagnetoThingy and dward mats UXV -> UMV * update buildscript * yeet magic number that could be * spotlessApply * Make the nanite tier 3, colen request * Up nanite tier * Comment * Change name * Change name Co-authored-by: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: adam riondy <adampoplol@gmail.com> Co-authored-by: boubou19 <miisterunknown@gmail.com>
Diffstat (limited to 'src/main/java/gregtech/loaders/oreprocessing')
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java52
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingBolt.java15
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java4
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingGear.java58
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java30
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java159
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingNugget.java25
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingPipe.java263
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java337
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingRotor.java58
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingScrew.java19
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java178
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java40
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingStickLong.java49
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingToolHead.java381
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java175
16 files changed, 1011 insertions, 832 deletions
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java
index 86630cbe08..c893d75674 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java
@@ -16,17 +16,19 @@ public class ProcessingBlock implements gregtech.api.interfaces.IOreRecipeRegist
public void registerOre(
OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
if (aMaterial != Materials.Clay && aMaterial != Materials.Basalt) {
- GT_Values.RA.addCutterRecipe(
- GT_Utility.copyAmount(1L, aStack),
- aMaterial == MaterialsBotania.Livingrock
- || aMaterial == MaterialsBotania.Livingwood
- || aMaterial == MaterialsBotania.Dreamwood
- ? GT_Utility.getIntegratedCircuit(3)
- : null,
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 9L),
- null,
- (int) Math.max(aMaterial.getMass() * 10L, 1L),
- 30);
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ GT_Values.RA.addCutterRecipe(
+ GT_Utility.copyAmount(1L, aStack),
+ aMaterial == MaterialsBotania.Livingrock
+ || aMaterial == MaterialsBotania.Livingwood
+ || aMaterial == MaterialsBotania.Dreamwood
+ ? GT_Utility.getIntegratedCircuit(3)
+ : null,
+ GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 9L),
+ null,
+ (int) Math.max(aMaterial.getMass() * 10L, 1L),
+ 30);
+ }
}
ItemStack tStack1 = GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L);
@@ -45,14 +47,17 @@ public class ProcessingBlock implements gregtech.api.interfaces.IOreRecipeRegist
GT_ModHandler.removeRecipeDelayed(
tStack3, tStack3, tStack3, tStack3, tStack3, tStack3, tStack3, tStack3, tStack3);
}
+
if (aMaterial.mStandardMoltenFluid != null) {
if (!(aMaterial == Materials.AnnealedCopper || aMaterial == Materials.WroughtIron)) {
- GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Block.get(0L),
- aMaterial.getMolten(1296L),
- GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L),
- 288,
- 8);
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ GT_Values.RA.addFluidSolidifierRecipe(
+ ItemList.Shape_Mold_Block.get(0L),
+ aMaterial.getMolten(1296L),
+ GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L),
+ 288,
+ 8);
+ }
}
}
if (GregTech_API.sRecipeFile.get(
@@ -89,10 +94,15 @@ public class ProcessingBlock implements gregtech.api.interfaces.IOreRecipeRegist
if (tStack1 != null)
GT_ModHandler.addShapelessCraftingRecipe(tStack1, new Object[] {OrePrefixes.block.get(aMaterial)});
}
- if (!OrePrefixes.block.isIgnored(aMaterial))
- GT_ModHandler.addCompressionRecipe(
- GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 9L),
- GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L));
+
+ if (!OrePrefixes.block.isIgnored(aMaterial)) {
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ GT_ModHandler.addCompressionRecipe(
+ GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 9L),
+ GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L));
+ }
+ }
+
switch (aMaterial.mName) {
case "Mercury":
System.err.println(
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingBolt.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingBolt.java
index 17ba07917f..1234d3fc53 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingBolt.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingBolt.java
@@ -3,6 +3,7 @@ package gregtech.loaders.oreprocessing;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.SubTag;
+import gregtech.api.enums.Tier;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Utility;
import gregtech.common.GT_Proxy;
@@ -16,12 +17,14 @@ public class ProcessingBolt implements gregtech.api.interfaces.IOreRecipeRegistr
@Override
public void registerOre(
OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- if ((aMaterial.mUnificatable)
- && (aMaterial.mMaterialInto == aMaterial)
- && !aMaterial.contains(SubTag.NO_WORKING)) {
- GT_ModHandler.addCraftingRecipe(GT_Utility.copyAmount(2L, aStack), GT_Proxy.tBits, new Object[] {
- "s ", " X", 'X', OrePrefixes.stick.get(aMaterial)
- });
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ if ((aMaterial.mUnificatable)
+ && (aMaterial.mMaterialInto == aMaterial)
+ && !aMaterial.contains(SubTag.NO_WORKING)) {
+ GT_ModHandler.addCraftingRecipe(GT_Utility.copyAmount(2L, aStack), GT_Proxy.tBits, new Object[] {
+ "s ", " X", 'X', OrePrefixes.stick.get(aMaterial)
+ });
+ }
}
}
}
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java
index 7a85572b5b..ae25bcee98 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java
@@ -1,5 +1,7 @@
package gregtech.loaders.oreprocessing;
+import static gregtech.api.util.GT_Utility.calculateRecipeEU;
+
import gregtech.api.GregTech_API;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Materials;
@@ -22,7 +24,7 @@ public class ProcessingFoil implements IOreRecipeRegistrator {
GT_Utility.copyAmount(1L, GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L)),
GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, 4L),
(int) Math.max(aMaterial.getMass(), 1L),
- 24);
+ calculateRecipeEU(aMaterial, 24));
GregTech_API.registerCover(
aStack, TextureFactory.of(aMaterial.mIconSet.mTextures[70], aMaterial.mRGBa, false), null);
}
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingGear.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingGear.java
index d05d2188b7..f5f9a1688a 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingGear.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingGear.java
@@ -1,5 +1,7 @@
package gregtech.loaders.oreprocessing;
+import static gregtech.api.util.GT_Utility.calculateRecipeEU;
+
import gregtech.api.enums.*;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
@@ -27,7 +29,7 @@ public class ProcessingGear implements gregtech.api.interfaces.IOreRecipeRegistr
aMaterial.getMolten(576L),
GT_OreDictUnificator.get(aPrefix, aMaterial, 1L),
128,
- 8);
+ calculateRecipeEU(aMaterial, 8));
}
if (aMaterial.mUnificatable
&& (aMaterial.mMaterialInto == aMaterial)
@@ -62,18 +64,20 @@ public class ProcessingGear implements gregtech.api.interfaces.IOreRecipeRegistr
});
break;
default:
- GT_ModHandler.addCraftingRecipe(
- GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial, 1L),
- GT_Proxy.tBits,
- new Object[] {
- "SPS",
- "PwP",
- "SPS",
- 'P',
- OrePrefixes.plate.get(aMaterial),
- 'S',
- OrePrefixes.stick.get(aMaterial)
- });
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ GT_ModHandler.addCraftingRecipe(
+ GT_OreDictUnificator.get(OrePrefixes.gearGt, aMaterial, 1L),
+ GT_Proxy.tBits,
+ new Object[] {
+ "SPS",
+ "PwP",
+ "SPS",
+ 'P',
+ OrePrefixes.plate.get(aMaterial),
+ 'S',
+ OrePrefixes.stick.get(aMaterial)
+ });
+ }
}
}
break;
@@ -85,7 +89,7 @@ public class ProcessingGear implements gregtech.api.interfaces.IOreRecipeRegistr
aMaterial.getMolten(144L),
GT_Utility.copyAmount(1L, aStack),
16,
- 8);
+ calculateRecipeEU(aMaterial, 8));
}
if (aMaterial.mUnificatable
&& (aMaterial.mMaterialInto == aMaterial)
@@ -104,18 +108,20 @@ public class ProcessingGear implements gregtech.api.interfaces.IOreRecipeRegistr
new Object[] {"P ", " f", 'P', OrePrefixes.stoneSmooth});
break;
default:
- GT_ModHandler.addCraftingRecipe(
- GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, aMaterial, 1L),
- GT_Proxy.tBits,
- new Object[] {
- " S ",
- "hPx",
- " S ",
- 'S',
- OrePrefixes.stick.get(aMaterial),
- 'P',
- OrePrefixes.plate.get(aMaterial)
- });
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ GT_ModHandler.addCraftingRecipe(
+ GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, aMaterial, 1L),
+ GT_Proxy.tBits,
+ new Object[] {
+ " S ",
+ "hPx",
+ " S ",
+ 'S',
+ OrePrefixes.stick.get(aMaterial),
+ 'P',
+ OrePrefixes.plate.get(aMaterial)
+ });
+ }
}
}
break;
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java
index 411309f396..507a015950 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java
@@ -1,5 +1,7 @@
package gregtech.loaders.oreprocessing;
+import static gregtech.api.util.GT_Utility.calculateRecipeEU;
+
import gregtech.api.GregTech_API;
import gregtech.api.enums.*;
import gregtech.api.util.GT_ModHandler;
@@ -54,46 +56,48 @@ public class ProcessingGem
GT_Utility.copyAmount(1L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L),
(int) Math.max(aMaterialMass, 1L),
- 16);
+ calculateRecipeEU(aMaterial, 16));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(1L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L),
(int) Math.max(aMaterialMass * 2L, 1L),
- 24);
+ calculateRecipeEU(aMaterial, 24));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(2L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L),
(int) Math.max(aMaterialMass * 2L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(3L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L),
(int) Math.max(aMaterialMass * 3L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(4L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L),
(int) Math.max(aMaterialMass * 4L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(5L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L),
(int) Math.max(aMaterialMass * 5L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(9L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L),
(int) Math.max(aMaterialMass * 9L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
}
if (aNoWorking) {
- GT_Values.RA.addLatheRecipe(
- GT_Utility.copyAmount(1L, aStack),
- GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1L),
- GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 2L),
- (int) Math.max(aMaterialMass, 1L),
- 16);
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ GT_Values.RA.addLatheRecipe(
+ GT_Utility.copyAmount(1L, aStack),
+ GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1L),
+ GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 2L),
+ (int) Math.max(aMaterialMass, 1L),
+ calculateRecipeEU(aMaterial, 16));
+ }
} else {
if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial)) {
GT_ModHandler.addCraftingRecipe(
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java
index 88995c0e0b..bd98e6a162 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java
@@ -1,5 +1,7 @@
package gregtech.loaders.oreprocessing;
+import static gregtech.api.util.GT_Utility.calculateRecipeEU;
+
import gregtech.api.GregTech_API;
import gregtech.api.enums.*;
import gregtech.api.util.GT_ModHandler;
@@ -42,7 +44,7 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist
aMaterial.getMolten(144L),
GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L),
32,
- 8);
+ calculateRecipeEU(aMaterial, 8));
}
}
GT_RecipeRegistrator.registerReverseFluidSmelting(aStack, aMaterial, aPrefix.mMaterialAmount, null);
@@ -71,47 +73,49 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist
}
if (!aNoSmashing) {
- GT_Values.RA.addForgeHammerRecipe(
- GT_Utility.copyAmount(3L, aStack),
- GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 2L),
- (int) Math.max(aMaterialMass, 1L),
- 16);
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ GT_Values.RA.addForgeHammerRecipe(
+ GT_Utility.copyAmount(3L, aStack),
+ GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 2L),
+ (int) Math.max(aMaterialMass, 1L),
+ calculateRecipeEU(aMaterial, 16));
+ }
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(1L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L),
(int) Math.max(aMaterialMass, 1L),
- 24);
+ calculateRecipeEU(aMaterial, 24));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(2L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L),
(int) Math.max(aMaterialMass * 2L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(3L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L),
(int) Math.max(aMaterialMass * 3L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(4L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L),
(int) Math.max(aMaterialMass * 4L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(5L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L),
(int) Math.max(aMaterialMass * 5L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(9L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L),
(int) Math.max(aMaterialMass * 9L, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(1L, aStack),
GT_Utility.getIntegratedCircuit(10),
GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, 4L),
(int) Math.max(aMaterialMass * 2L, 1L),
- 24);
+ calculateRecipeEU(aMaterial, 24));
}
break;
@@ -121,19 +125,23 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist
GT_Utility.copyAmount(1L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L),
(int) Math.max(aMaterialMass, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(2L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L),
(int) Math.max(aMaterialMass * 2L, 1L),
- 96);
- if (aSpecialRecipeReq
- && GregTech_API.sRecipeFile.get(
- ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) {
- GT_ModHandler.addCraftingRecipe(
- GT_OreDictUnificator.get(OrePrefixes.ingotDouble, aMaterial, 1L),
- GT_Proxy.tBits,
- new Object[] {"I", "I", "h", 'I', OrePrefixes.ingot.get(aMaterial)});
+ calculateRecipeEU(aMaterial, 96));
+
+ // Enable crafting with hammer if tier is < IV.
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ if (aSpecialRecipeReq
+ && GregTech_API.sRecipeFile.get(
+ ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) {
+ GT_ModHandler.addCraftingRecipe(
+ GT_OreDictUnificator.get(OrePrefixes.ingotDouble, aMaterial, 1L),
+ GT_Proxy.tBits,
+ new Object[] {"I", "I", "h", 'I', OrePrefixes.ingot.get(aMaterial)});
+ }
}
}
break;
@@ -143,27 +151,29 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist
GT_Utility.copyAmount(1L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L),
(int) Math.max(aMaterialMass, 1L),
- 96);
+ calculateRecipeEU(aMaterial, 96));
GT_Values.RA.addBenderRecipe(
GT_Utility.copyAmount(3L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L),
(int) Math.max(aMaterialMass * 3L, 1L),
- 96);
- if (aSpecialRecipeReq
- && GregTech_API.sRecipeFile.get(
- ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) {
- GT_ModHandler.addCraftingRecipe(
- GT_OreDictUnificator.get(OrePrefixes.ingotTriple, aMaterial, 1L),
- GT_Proxy.tBits,
- new Object[] {
- "I",
- "B",
- "h",
- 'I',
- OrePrefixes.ingotDouble.get(aMaterial),
- 'B',
- OrePrefixes.ingot.get(aMaterial)
- });
+ calculateRecipeEU(aMaterial, 96));
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ if (aSpecialRecipeReq
+ && GregTech_API.sRecipeFile.get(
+ ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) {
+ GT_ModHandler.addCraftingRecipe(
+ GT_OreDictUnificator.get(OrePrefixes.ingotTriple, aMaterial, 1L),
+ GT_Proxy.tBits,
+ new Object[] {
+ "I",
+ "B",
+ "h",
+ 'I',
+ OrePrefixes.ingotDouble.get(aMaterial),
+ 'B',
+ OrePrefixes.ingot.get(aMaterial)
+ });
+ }
}
}
break;
@@ -173,22 +183,26 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist
GT_Utility.copyAmount(1L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L),
(int) Math.max(aMaterialMass, 1L),
- 96);
- if (aSpecialRecipeReq
- && GregTech_API.sRecipeFile.get(
- ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) {
- GT_ModHandler.addCraftingRecipe(
- GT_OreDictUnificator.get(OrePrefixes.ingotQuadruple, aMaterial, 1L),
- GT_Proxy.tBits,
- new Object[] {
- "I",
- "B",
- "h",
- 'I',
- OrePrefixes.ingotTriple.get(aMaterial),
- 'B',
- OrePrefixes.ingot.get(aMaterial)
- });
+ calculateRecipeEU(aMaterial, 96));
+
+ // If tier < IV add manual crafting.
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ if (aSpecialRecipeReq
+ && GregTech_API.sRecipeFile.get(
+ ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) {
+ GT_ModHandler.addCraftingRecipe(
+ GT_OreDictUnificator.get(OrePrefixes.ingotQuadruple, aMaterial, 1L),
+ GT_Proxy.tBits,
+ new Object[] {
+ "I",
+ "B",
+ "h",
+ 'I',
+ OrePrefixes.ingotTriple.get(aMaterial),
+ 'B',
+ OrePrefixes.ingot.get(aMaterial)
+ });
+ }
}
}
break;
@@ -198,22 +212,25 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist
GT_Utility.copyAmount(1L, aStack),
GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L),
(int) Math.max(aMaterialMass, 1L),
- 96);
- if (aSpecialRecipeReq
- && GregTech_API.sRecipeFile.get(
- ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) {
- GT_ModHandler.addCraftingRecipe(
- GT_OreDictUnificator.get(OrePrefixes.ingotQuintuple, aMaterial, 1L),
- GT_Proxy.tBits,
- new Object[] {
- "I",
- "B",
- "h",
- 'I',
- OrePrefixes.ingotQuadruple.get(aMaterial),
- 'B',
- OrePrefixes.ingot.get(aMaterial)
- });
+ calculateRecipeEU(aMaterial, 96));
+
+ if (aMaterial.getProcessingMaterialTierEU() < Tier.IV) {
+ if (aSpecialRecipeReq
+ && GregTech_API.sRecipeFile.get(
+ ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) {
+ GT_ModHandler.addCraftingRecipe(
+ GT_OreDictUnificator.get(OrePrefixes.ingotQuintuple, aMaterial, 1L),
+ GT_Proxy.tBits,
+ new Object[] {
+ "I",
+ "B",
+ "h",
+ 'I',
+ OrePrefixes.ingotQuadruple.get(aMaterial),
+ 'B',
+ OrePrefixes.ingot.get(aMaterial)
+ });
+ }
}
}
break;
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingNugget.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingNugget.java
index b1a73e19b5..7e2dfbd439 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingNugget.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingNugget.java
@@ -1,5 +1,7 @@
package gregtech.loaders.oreprocessing;
+import static gregtech.api.util.GT_Utility.calculateRecipeEU;
+
import gregtech.api.enums.*;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
@@ -15,10 +17,7 @@ public class ProcessingNugget implements gregtech.api.interfaces.IOreRecipeRegis
@Override
public void registerOre(
OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- if (aMaterial == Materials.Iron)
- GT_ModHandler.addSmeltingRecipe(
<