aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech
diff options
context:
space:
mode:
authorMaya <10861407+serenibyss@users.noreply.github.com>2024-09-21 18:12:13 -0500
committerGitHub <noreply@github.com>2024-09-21 23:12:13 +0000
commit93966f7709e765b8be05b5127054046c9ac3bce0 (patch)
treebdb7f7af6e5341e99d34c6fd3f6dc8db96245b59 /src/main/java/gregtech
parent3858b65bd722efb7c005ee2a8547c700298da053 (diff)
downloadGT5-Unofficial-93966f7709e765b8be05b5127054046c9ac3bce0.tar.gz
GT5-Unofficial-93966f7709e765b8be05b5127054046c9ac3bce0.tar.bz2
GT5-Unofficial-93966f7709e765b8be05b5127054046c9ac3bce0.zip
Add NO_ORE_PROCESSING subtag (#3252)
Diffstat (limited to 'src/main/java/gregtech')
-rw-r--r--src/main/java/gregtech/api/enums/SubTag.java4
-rw-r--r--src/main/java/gregtech/common/GTProxy.java82
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java5
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java5
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java4
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java4
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java4
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java4
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java4
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java5
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingRawOre.java4
11 files changed, 85 insertions, 40 deletions
diff --git a/src/main/java/gregtech/api/enums/SubTag.java b/src/main/java/gregtech/api/enums/SubTag.java
index 6d0a1a5277..a21197d1b1 100644
--- a/src/main/java/gregtech/api/enums/SubTag.java
+++ b/src/main/java/gregtech/api/enums/SubTag.java
@@ -104,6 +104,10 @@ public final class SubTag implements ICondition<ISubTagContainer> {
*/
public static final SubTag NO_SMELTING = getNewSubTag("NO_SMELTING");
/**
+ * This Material cannot have its Ore and associated prefixes processed, and must be handled manually.
+ */
+ public static final SubTag NO_ORE_PROCESSING = getNewSubTag("NO_ORE_PROCESSING");
+ /**
* This Material can be molten into a Fluid
*/
public static final SubTag SMELTING_TO_FLUID = getNewSubTag("SMELTING_TO_FLUID");
diff --git a/src/main/java/gregtech/common/GTProxy.java b/src/main/java/gregtech/common/GTProxy.java
index b5854ea2eb..659c626e2f 100644
--- a/src/main/java/gregtech/common/GTProxy.java
+++ b/src/main/java/gregtech/common/GTProxy.java
@@ -1257,46 +1257,48 @@ public abstract class GTProxy implements IGTMod, IFuelHandler {
GTLog.out.println("GTMod: Adding Tool Usage Crafting Recipes for OreDict Items.");
for (Materials aMaterial : Materials.values()) {
if ((aMaterial.mUnificatable) && (aMaterial.mMaterialInto == aMaterial)) {
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.crushedCentrifuged.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.crystalline.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.crystal.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.crushedPurified.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.cleanGravel.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.reduced.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.clump.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.shard.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.crushed.get(aMaterial) });
- GTModHandler.addCraftingRecipe(
- GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L),
- tBits,
- new Object[] { "h", "X", 'X', OrePrefixes.dirtyGravel.get(aMaterial) });
+ if (!aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.crushedCentrifuged.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.crystalline.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.crystal.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.crushedPurified.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.cleanGravel.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.reduced.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.clump.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.shard.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.crushed.get(aMaterial) });
+ GTModHandler.addCraftingRecipe(
+ GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L),
+ tBits,
+ new Object[] { "h", "X", 'X', OrePrefixes.dirtyGravel.get(aMaterial) });
+ }
GTModHandler.addCraftingRecipe(
GTOreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 4L),
tBits,
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java
index ed80d04e99..1f303ad0da 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java
@@ -12,6 +12,7 @@ import net.minecraft.item.ItemStack;
import gregtech.api.enums.GTValues;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.SubTag;
import gregtech.api.util.GTOreDictUnificator;
import gregtech.api.util.GTUtility;
@@ -25,6 +26,10 @@ public class ProcessingCrushedOre implements gregtech.api.interfaces.IOreRecipeR
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
switch (aPrefix) {
case crushedCentrifuged -> {
GTValues.RA.stdBuilder()
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java
index 435573420d..fcdfdcf7cf 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java
@@ -10,6 +10,7 @@ import net.minecraft.item.ItemStack;
import gregtech.api.enums.GTValues;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.SubTag;
import gregtech.api.util.GTOreDictUnificator;
import gregtech.api.util.GTUtility;
@@ -23,6 +24,10 @@ public class ProcessingCrystallized implements gregtech.api.interfaces.IOreRecip
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
if (aMaterial.mMacerateInto == null) {
return;
}
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java
index a09cc2ca44..22a0964f34 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java
@@ -30,6 +30,10 @@ public class ProcessingDirty implements gregtech.api.interfaces.IOreRecipeRegist
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
net.minecraft.item.ItemStack aStack) {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
GTValues.RA.stdBuilder()
.itemInputs(GTUtility.copyAmount(1, aStack))
.itemOutputs(GTOreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L))
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java
index a8912411ea..9964ea541e 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java
@@ -358,6 +358,10 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr
}
}
case dustPure, dustImpure, dustRefined -> {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
Materials tByProduct = GTUtility.selectItemInList(
aPrefix == OrePrefixes.dustRefined ? 2 : aPrefix == OrePrefixes.dustPure ? 1 : 0,
aMaterial,
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java
index 4d0b405fea..9823582212 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java
@@ -36,6 +36,10 @@ public class ProcessingOre implements gregtech.api.interfaces.IOreRecipeRegistra
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
boolean tIsRich = false;
// For Sake of god of balance!
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java
index d71b4a61f4..f0e1a04fa3 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java
@@ -43,6 +43,10 @@ public class ProcessingOrePoor implements gregtech.api.interfaces.IOreRecipeRegi
break;
}
if (aMaterial != null) {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
GTValues.RA.stdBuilder()
.itemInputs(GTUtility.copyAmount(1, aStack))
.itemOutputs(GTOreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, aMultiplier))
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java
index 315bdcd6dd..e42ebc1f74 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java
@@ -34,6 +34,10 @@ public class ProcessingOreSmelting implements gregtech.api.interfaces.IOreRecipe
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
GTModHandler.removeFurnaceSmelting(aStack);
if (!aMaterial.contains(SubTag.NO_SMELTING)) {
if ((aMaterial.mBlastFurnaceRequired) || (aMaterial.mDirectSmelting.mBlastFurnaceRequired)) {
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java
index 40adf386f8..82c16f81da 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java
@@ -9,6 +9,7 @@ import net.minecraft.item.ItemStack;
import gregtech.api.enums.GTValues;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.SubTag;
import gregtech.api.util.GTOreDictUnificator;
import gregtech.api.util.GTUtility;
@@ -23,6 +24,10 @@ public class ProcessingPure implements gregtech.api.interfaces.IOreRecipeRegistr
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
GTValues.RA.stdBuilder()
.itemInputs(GTUtility.copyAmount(1, aStack))
.itemOutputs(GTOreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L))
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingRawOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingRawOre.java
index 902c46bd0b..c930d9c304 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingRawOre.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingRawOre.java
@@ -30,6 +30,10 @@ public class ProcessingRawOre implements gregtech.api.interfaces.IOreRecipeRegis
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ if (aMaterial.contains(SubTag.NO_ORE_PROCESSING)) {
+ return;
+ }
+
if (aMaterial == Materials.Oilsands) {
GTValues.RA.stdBuilder()
.itemInputs(GTUtility.copyAmount(1, aStack))