aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorMary <33456283+FourIsTheNumber@users.noreply.github.com>2024-09-25 16:19:07 -0400
committerGitHub <noreply@github.com>2024-09-25 22:19:07 +0200
commitd392aef3a42041ce152e2206810a638e65a493bf (patch)
treec97e76bbc828d24e85ffbce0b61a939188151640 /src/main
parent5c5d94ad6517090ca6706341d3a739b490784fef (diff)
downloadGT5-Unofficial-d392aef3a42041ce152e2206810a638e65a493bf.tar.gz
GT5-Unofficial-d392aef3a42041ce152e2206810a638e65a493bf.tar.bz2
GT5-Unofficial-d392aef3a42041ce152e2206810a638e65a493bf.zip
Fix sealed wood + more collisions (#3282)
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java45
-rw-r--r--src/main/java/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java23
-rw-r--r--src/main/java/goodgenerator/loader/NaquadahReworkRecipeLoader.java93
-rw-r--r--src/main/java/gregtech/api/recipe/RecipeMaps.java23
-rw-r--r--src/main/java/gregtech/api/util/GTForestryCompat.java11
-rw-r--r--src/main/java/gregtech/common/items/ItemDrop.java34
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java4
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java3
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java3
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingPlank.java7
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java3
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingStone.java1
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java20
-rw-r--r--src/main/java/gregtech/loaders/postload/ProcessingArrayRecipeLoader.java7
-rw-r--r--src/main/java/gregtech/loaders/postload/recipes/FermenterRecipes.java7
-rw-r--r--src/main/java/gregtech/loaders/postload/recipes/FluidSolidifierRecipes.java17
-rw-r--r--src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java28
-rw-r--r--src/main/java/gtnhlanth/loader/BotRecipes.java3
-rw-r--r--src/main/java/gtnhlanth/loader/RecipeLoader.java187
19 files changed, 58 insertions, 461 deletions
diff --git a/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java b/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java
index ab7a2167aa..bcc5d422b0 100644
--- a/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java
+++ b/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java
@@ -205,7 +205,6 @@ public class DustLoader implements IWerkstoffRunnable {
* 30,
0);
RecipeMaps.electrolyzerRecipes.add(tRecipe);
- RecipeMaps.electrolyzerNonCellRecipes.add(tRecipe);
}
if (werkstoffStats.isCentrifuge()) {
RecipeMaps.centrifugeRecipes.add(
@@ -230,28 +229,6 @@ public class DustLoader implements IWerkstoffRunnable {
.size())
* 5,
0));
- GTRecipe tRecipe = new GTRecipe(
- false,
- stOutputs.toArray(new ItemStack[0]),
- new ItemStack[] { input },
- null,
- null,
- new FluidStack[] { flOutputs.size() > 0 ? flOutputs.get(0) : null },
- null,
- (int) Math.max(
- 1L,
- Math.abs(
- werkstoffStats.getProtons() / werkstoff.getContents()
- .getValue()
- .size())),
- Math.min(
- 4,
- werkstoff.getContents()
- .getValue()
- .size())
- * 30,
- 0);
- RecipeMaps.centrifugeNonCellRecipes.add(tRecipe);
}
if (werkstoff.getGenerationFeatures()
.hasChemicalRecipes()) {
@@ -304,28 +281,6 @@ public class DustLoader implements IWerkstoffRunnable {
.size())
* 5,
0));
- GTRecipe tRecipe = new GTRecipe(
- false,
- stOutputs.toArray(new ItemStack[0]),
- new ItemStack[] { input },
- null,
- null,
- new FluidStack[] { flOutputs.size() > 0 ? flOutputs.get(0) : null },
- null,
- (int) Math.max(
- 1L,
- Math.abs(
- werkstoffStats.getProtons() / werkstoff.getContents()
- .getValue()
- .size())),
- Math.min(
- 4,
- werkstoff.getContents()
- .getValue()
- .size())
- * 30,
- 0);
- RecipeMaps.mixerNonCellRecipes.add(tRecipe);
}
}
diff --git a/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java b/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java
index a9c1143e58..299bc5d393 100644
--- a/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java
+++ b/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java
@@ -31,6 +31,7 @@ import net.minecraft.item.ItemStack;
import bartworks.API.SideReference;
import bartworks.client.textures.PrefixTextureLinker;
import bartworks.system.material.Werkstoff;
+import bartworks.system.material.WerkstoffLoader;
import bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable;
import gregtech.api.GregTechAPI;
import gregtech.api.enums.GTValues;
@@ -151,16 +152,18 @@ public class SimpleMetalLoader implements IWerkstoffRunnable {
.eut(16)
.addTo(latheRecipes);
- GTValues.RA.stdBuilder()
- .itemInputs(werkstoff.get(plate), GTUtility.getIntegratedCircuit(1))
- .itemOutputs(werkstoff.get(foil, 4))
- .duration(
- (int) Math.max(
- werkstoff.getStats()
- .getMass() * 1L,
- 1L))
- .eut(24)
- .addTo(benderRecipes);
+ if (werkstoff != WerkstoffLoader.Fluorophlogopite) {
+ GTValues.RA.stdBuilder()
+ .itemInputs(werkstoff.get(plate), GTUtility.getIntegratedCircuit(1))
+ .itemOutputs(werkstoff.get(foil, 4))
+ .duration(
+ (int) Math.max(
+ werkstoff.getStats()
+ .getMass(),
+ 1L))
+ .eut(24)
+ .addTo(benderRecipes);
+ }
GTValues.RA.stdBuilder()
.itemInputs(werkstoff.get(ingot), GTUtility.getIntegratedCircuit(10))
diff --git a/src/main/java/goodgenerator/loader/NaquadahReworkRecipeLoader.java b/src/main/java/goodgenerator/loader/NaquadahReworkRecipeLoader.java
index 1fa45ba0f3..855f3b9bbe 100644
--- a/src/main/java/goodgenerator/loader/NaquadahReworkRecipeLoader.java
+++ b/src/main/java/goodgenerator/loader/NaquadahReworkRecipeLoader.java
@@ -817,99 +817,6 @@ public class NaquadahReworkRecipeLoader {
GTLog.out.print("Centrifuge done!\n");
- // For Centrifuge (PA)
- for (GTRecipe recipe : RecipeMaps.centrifugeNonCellRecipes.getAllRecipes()) {
- ItemStack input = null;
- if (recipe.mInputs.length > 0) input = recipe.mInputs[0];
- if (!GTUtility.isStackValid(input)) continue;
-
- int[] oreDict = OreDictionary.getOreIDs(input);
- if (checkCombs && input.isItemEqual(GTBees.combs.getStackForType(CombType.DOB))) {
- GTRecipe tRecipe = recipe.copy();
- boolean modified = false;
- for (int i = 0; i < tRecipe.mOutputs.length; i++) {
- if (!GTUtility.isStackValid(tRecipe.mOutputs[i])) continue;
- if (tRecipe.mOutputs[i].isItemEqual(Materials.Naquadah.getDustTiny(1))) {
- tRecipe.mOutputs[i] = GTUtility
- .copyAmount(tRecipe.mOutputs[i].stackSize * 2L, naquadahEarth.get(OrePrefixes.dustTiny, 1));
- modified = true;
- }
- }
- if (modified) {
- GTLog.err.println("recipe edited: " + displayRecipe(tRecipe));
- reAdd.add(tRecipe);
- remove.add(recipe);
- }
- } else for (int oreDictID : oreDict) {
- String oredictName = OreDictionary.getOreName(oreDictID);
- if (!oredictName.startsWith("dustPureNaq") && !oredictName.startsWith("dustImpureNaq")
- && !oredictName.startsWith("dustSpace")
- && !oredictName.startsWith("dustNaq")) continue;
-
- GTRecipe tRecipe = recipe.copy();
- boolean modified = false;
- for (int i = 0; i < tRecipe.mOutputs.length; i++) {
- if (!GTUtility.isStackValid(tRecipe.mOutputs[i])) continue;
- if (tRecipe.mOutputs[i].isItemEqual(Materials.Naquadah.getDustTiny(1))) {
- tRecipe.mOutputs[i] = GTUtility
- .copyAmount(tRecipe.mOutputs[i].stackSize * 2, naquadahEarth.get(OrePrefixes.dustTiny, 1));
- } else if (tRecipe.mOutputs[i].isItemEqual(Materials.NaquadahEnriched.getDustTiny(1))) {
- tRecipe.mOutputs[i] = GTUtility.copyAmount(
- tRecipe.mOutputs[i].stackSize * 2,
- enrichedNaquadahEarth.get(OrePrefixes.dustTiny, 1));
- } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Naquadria.getDustTiny(1))) {
- tRecipe.mOutputs[i] = GTUtility
- .copyAmount(tRecipe.mOutputs[i].stackSize * 2, naquadriaEarth.get(OrePrefixes.dustTiny, 1));
- } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Naquadah.getDust(1))) {
- tRecipe.mOutputs[i] = GTUtility
- .copyAmount(tRecipe.mOutputs[i].stackSize * 2, naquadahEarth.get(OrePrefixes.dust, 1));
- } else if (tRecipe.mOutputs[i].isItemEqual(Materials.NaquadahEnriched.getDust(1))) {
- tRecipe.mOutputs[i] = GTUtility.copyAmount(
- tRecipe.mOutputs[i].stackSize * 2,
- enrichedNaquadahEarth.get(OrePrefixes.dust, 1));
- } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Naquadria.getDust(1))) {
- tRecipe.mOutputs[i] = GTUtility
- .copyAmount(tRecipe.mOutputs[i].stackSize * 2, naquadriaEarth.get(OrePrefixes.dust, 1));
- } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Naquadah.getDustSmall(1))) {
- tRecipe.mOutputs[i] = GTUtility
- .copyAmount(tRecipe.mOutputs[i].stackSize * 2, naquadahEarth.get(OrePrefixes.dustSmall, 1));
- } else if (tRecipe.mOutputs[i].isItemEqual(Materials.NaquadahEnriched.getDustSmall(1))) {
- tRecipe.mOutputs[i] = GTUtility.copyAmount(
- tRecipe.mOutputs[i].stackSize * 2,
- enrichedNaquadahEarth.get(OrePrefixes.dustSmall, 1));
- } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Naquadria.getDustSmall(1))) {
- tRecipe.mOutputs[i] = GTUtility.copyAmount(
- tRecipe.mOutputs[i].stackSize * 2,
- naquadriaEarth.get(OrePrefixes.dustSmall, 1));
-
- } else {
- continue;
- }
- modified = true;
- }
- if (modified) {
- GTLog.err.println("recipe edited: " + displayRecipe(tRecipe));
- reAdd.add(tRecipe);
- remove.add(recipe);
- }
- break;
-
- }
-
- }
- RecipeMaps.centrifugeNonCellRecipes.getBackend()
- .removeRecipes(remove);
- reAdd.forEach(RecipeMaps.centrifugeNonCellRecipes::add);
- RecipeMaps.centrifugeNonCellRecipes.getBackend()
- .reInit();
-
- GTLog.out.print(GoodGenerator.MOD_ID + ": Replace " + remove.size() + "! ");
-
- remove.clear();
- reAdd.clear();
-
- GTLog.out.print("Centrifuge (PA) done!\n");
-
// For Hammer
for (GTRecipe recipe : RecipeMaps.hammerRecipes.getAllRecipes()) {
ItemStack input = recipe.mInputs[0];
diff --git a/src/main/java/gregtech/api/recipe/RecipeMaps.java b/src/main/java/gregtech/api/recipe/RecipeMaps.java
index 197c15875d..7f81e58370 100644
--- a/src/main/java/gregtech/api/recipe/RecipeMaps.java
+++ b/src/main/java/gregtech/api/recipe/RecipeMaps.java
@@ -79,7 +79,6 @@ import gregtech.api.util.GTModHandler;
import gregtech.api.util.GTOreDictUnificator;
import gregtech.api.util.GTRecipe;
import gregtech.api.util.GTRecipeConstants;
-import gregtech.api.util.GTRecipeMapUtil;
import gregtech.api.util.GTUtility;
import gregtech.common.tileentities.machines.multi.purification.PurifiedWaterHelpers;
import gregtech.nei.formatter.FuelSpecialValueFormatter;
@@ -1098,25 +1097,6 @@ public final class RecipeMaps {
.maxIO(1, 1, 0, 0)
.neiSpecialInfoFormatter(FuelSpecialValueFormatter.INSTANCE)
.build();
- public static final RecipeMap<RecipeMapBackend> electrolyzerNonCellRecipes = RecipeMapBuilder
- .of("gt.recipe.largeelectrolyzer")
- .maxIO(1, 6, 1, 6)
- .disableRegisterNEI()
- .recipeEmitter(GTRecipeMapUtil::buildRecipeForMultiblock)
- .build();
- public static final RecipeMap<RecipeMapBackend> centrifugeNonCellRecipes = RecipeMapBuilder
- .of("gt.recipe.largecentrifuge")
- .maxIO(2, 6, 1, 6)
- .disableOptimize()
- .disableRegisterNEI()
- .recipeEmitter(GTRecipeMapUtil::buildRecipeForMultiblock)
- .build();
- public static final RecipeMap<RecipeMapBackend> mixerNonCellRecipes = RecipeMapBuilder.of("gt.recipe.largemixer")
- .maxIO(9, 4, 6, 4)
- .disableOptimize()
- .disableRegisterNEI()
- .recipeEmitter(GTRecipeMapUtil::buildRecipeForMultiblockNoCircuit)
- .build();
public static final RecipeMap<LargeBoilerFuelBackend> largeBoilerFakeFuels = RecipeMapBuilder
.of("gt.recipe.largeboilerfakefuels", LargeBoilerFuelBackend::new)
.maxIO(1, 1, 0, 0)
@@ -1230,9 +1210,6 @@ public final class RecipeMaps {
.build();
static {
- RecipeMaps.centrifugeRecipes.addDownstream(RecipeMaps.centrifugeNonCellRecipes.deepCopyInput());
- RecipeMaps.mixerRecipes.addDownstream(RecipeMaps.mixerNonCellRecipes.deepCopyInput());
- RecipeMaps.electrolyzerRecipes.addDownstream(RecipeMaps.electrolyzerNonCellRecipes.deepCopyInput());
RecipeMaps.dieselFuels.addDownstream(
IRecipeMap.newRecipeMap(
b -> b.build()
diff --git a/src/main/java/gregtech/api/util/GTForestryCompat.java b/src/main/java/gregtech/api/util/GTForestryCompat.java
index ca61c955c7..86eaa519e7 100644
--- a/src/main/java/gregtech/api/util/GTForestryCompat.java
+++ b/src/main/java/gregtech/api/util/GTForestryCompat.java
@@ -7,6 +7,8 @@ import static gregtech.api.util.GTRecipeBuilder.TICKS;
import java.util.Map;
+import net.minecraft.init.Items;
+import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import forestry.api.recipes.ICentrifugeRecipe;
@@ -170,10 +172,13 @@ public class GTForestryCompat {
public static void transferSqueezerRecipes() {
try {
for (ISqueezerRecipe tRecipe : RecipeManagers.squeezerManager.recipes()) {
- if ((tRecipe.getResources().length == 1) && (tRecipe.getFluidOutput() != null)
- && (tRecipe.getResources()[0] != null)) {
+ ItemStack[] resources = tRecipe.getResources();
+ if ((resources.length == 1) && (tRecipe.getFluidOutput() != null) && (resources[0] != null)) {
+ Item input = resources[0].getItem();
+ if (input == Items.pumpkin_seeds || input == Items.melon_seeds || input == Items.wheat_seeds)
+ return;
GTRecipeBuilder recipeBuilder = GTValues.RA.stdBuilder();
- recipeBuilder.itemInputs(tRecipe.getResources()[0]);
+ recipeBuilder.itemInputs(resources[0]);
if (tRecipe.getRemnants() != null) {
recipeBuilder.itemOutputs(tRecipe.getRemnants())
.outputChances((int) (tRecipe.getRemnantsChance() * 10000));
diff --git a/src/main/java/gregtech/common/items/ItemDrop.java b/src/main/java/gregtech/common/items/ItemDrop.java
index 1f56b79242..bac555934d 100644
--- a/src/main/java/gregtech/common/items/ItemDrop.java
+++ b/src/main/java/gregtech/common/items/ItemDrop.java
@@ -107,12 +107,6 @@ public class ItemDrop extends Item {
ItemStack tDrop;
tDrop = getStackForType(DropType.OIL);
- addProcessLV(
- tDrop,
- Materials.OilHeavy.getFluid(100L),
- GTModHandler.getModItem(Forestry.ID, "propolis", 1L, 0),
- 3000,
- 8);
RecipeManagers.squeezerManager.addRecipe(
40,
new ItemStack[] { tDrop },
@@ -120,12 +114,6 @@ public class ItemDrop extends Item {
GTModHandler.getModItem(Forestry.ID, "propolis", 1L, 0),
30);
tDrop = getStackForType(DropType.COOLANT);
- addProcessLV(
- tDrop,
- new FluidStack(FluidRegistry.getFluid("ic2coolant"), 100),
- GTModHandler.getModItem(MagicBees.ID, "propolis", 1L, 0),
- 3000,
- 8);
RecipeManagers.squeezerManager.addRecipe(
40,
new ItemStack[] { tDrop },
@@ -133,12 +121,6 @@ public class ItemDrop extends Item {
GTModHandler.getModItem(MagicBees.ID, "propolis", 1L, 0),
30);
tDrop = getStackForType(DropType.HOT_COOLANT);
- addProcessLV(
- tDrop,
- new FluidStack(FluidRegistry.getFluid("ic2hotcoolant"), 100),
- GTModHandler.getModItem(MagicBees.ID, "propolis", 1L, 2),
- 3000,
- 8);
RecipeManagers.squeezerManager.addRecipe(
40,
new ItemStack[] { tDrop },
@@ -153,13 +135,6 @@ public class ItemDrop extends Item {
1500,
48);
tDrop = getStackForType(DropType.LAPIS);
- addProcessLV(
- tDrop,
- new FluidStack(FluidRegistry.getFluid("ic2coolant"), 200),
- GTModHandler.getModItem(MagicBees.ID, "propolis", 1L, 3),
- 5000,
- 1200,
- 2);
RecipeManagers.squeezerManager.addRecipe(
400,
new ItemStack[] { tDrop },
@@ -174,17 +149,10 @@ public class ItemDrop extends Item {
3000,
8);
tDrop = getStackForType(DropType.OXYGEN);
- addProcessLV(
- tDrop,
- new FluidStack(FluidRegistry.getFluid("liquidoxygen"), 100),
- GTModHandler.getModItem(ExtraBees.ID, "propolis", 1L, 2),
- 250,
- 1200,
- 8);
RecipeManagers.squeezerManager.addRecipe(
400,
new ItemStack[] { tDrop },
- new FluidStack(FluidRegistry.getFluid("ic2coolant"), 100),
+ new FluidStack(FluidRegistry.getFluid("liquidoxygen"), 100),
GTModHandler.getModItem(ExtraBees.ID, "propolis", 1L, 2),
30);
tDrop = getStackForType(DropType.ENDERGOO);
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java
index 1f303ad0da..debf059884 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java
@@ -75,6 +75,10 @@ public class ProcessingCrushedOre implements gregtech.api.interfaces.IOreRecipeR
break;
}
+ // Blacklist materials which are handled by Werkstoff loader
+ if (aMaterial == Materials.Salt || aMaterial == Materials.RockSalt || aMaterial == Materials.Spodumene)
+ return;
+
switch (aMaterial.mName) {
case "Tanzanite", "Sapphire", "Olivine", "GreenSapphire", "Opal", "Amethyst", "Emerald", "Ruby", "Amber", "Diamond", "FoolsRuby", "BlueTopaz", "GarnetRed", "Topaz", "Jasper", "GarnetYellow" -> GTValues.RA
.stdBuilder()
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java
index e117d956bd..32430d02bd 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java
@@ -49,6 +49,9 @@ public class ProcessingGem implements gregtech.api.interfaces.IOreRecipeRegistra
boolean aSpecialRecipeReq = aMaterial.contains(SubTag.MORTAR_GRINDABLE);
boolean aFuelPower = aMaterial.mFuelPower > 0;
+ // Blacklist materials which are handled by Werkstoff loader
+ if (aMaterial == Materials.Salt || aMaterial == Materials.RockSalt || aMaterial == Materials.Spodumene) return;
+
switch (aPrefix) {
case gem -> {
// fuel recipes
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java
index 9576262818..029a227ad5 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java
@@ -28,6 +28,9 @@ public class ProcessingLens implements gregtech.api.interfaces.IOreRecipeRegistr
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ // Blacklist materials which are handled by Werkstoff loader
+ if (aMaterial == Materials.Salt || aMaterial == Materials.RockSalt || aMaterial == Materials.Spodumene) return;
+
switch (aMaterial.mName) {
case "Diamond", "Glass" -> {
GTValues.RA.stdBuilder()
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlank.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlank.java
index e6a74aac19..562b40d82e 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlank.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlank.java
@@ -23,9 +23,16 @@ public class ProcessingPlank implements gregtech.api.interfaces.IOreRecipeRegist
OrePrefixes.plank.add(this);
}
+ // Gross nasty hack to prevent spam registry of oredicted colored woods
+ private boolean registeredEXU = false;
+
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ if (aModName != null && aModName.equals("ExtraUtilities")) {
+ if (registeredEXU) return;
+ else registeredEXU = true;
+ }
if (aOreDictName.startsWith("plankWood")) {
GTValues.RA.stdBuilder()
.itemInputs(GTUtility.copyAmount(1, aStack))
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java
index d04ffd1190..3949b2f3af 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java
@@ -29,6 +29,9 @@ public class ProcessingStick implements gregtech.api.interfaces.IOreRecipeRegist
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName,
ItemStack aStack) {
+ // Blacklist materials which are handled by Werkstoff loader
+ if (aMaterial == Materials.Salt || aMaterial == Materials.RockSalt || aMaterial == Materials.Spodumene) return;
+
if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) {
GTModHandler.addCraftingRecipe(
GTOreDictUnificator.get(OrePrefixes.springSmall, aMaterial, 1L),
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingStone.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingStone.java
index da21829d0c..e611d504b0 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingStone.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingStone.java
@@ -228,6 +228,7 @@ public class ProcessingStone implements IOreRecipeRegistrator {
.duration(10 * SECONDS)
.eut(TierEU.RECIPE_LV)
.addTo(cutterRecipes);
+ break;
case "Basalt":
GTValues.RA.stdBuilder()
.itemInputs(GTUtility.copyAmount(1, aStack), GTUtility.getIntegratedCircuit(3))
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java
index 8d72819d26..de436ae004 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java
@@ -37,7 +37,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.WoodSealed, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.Wood, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.WoodSealed, 1L))
.fluidInputs(
Materials.SeedOil
@@ -53,7 +53,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.FierySteel, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.Iron, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.FierySteel, 1L))
.fluidInputs(
Materials.FierySteel
@@ -68,7 +68,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.IronMagnetic, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.Iron, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.IronMagnetic, 1L))
.duration(((int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GTValues.M)) * TICKS)
.eut((int) TierEU.LV / 2)
@@ -81,7 +81,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.FierySteel, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.WroughtIron, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.FierySteel, 1L))
.fluidInputs(
Materials.FierySteel
@@ -96,7 +96,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.IronMagnetic, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.WroughtIron, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.IronMagnetic, 1L))
.duration(((int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GTValues.M)) * TICKS)
.eut((int) TierEU.LV / 2)
@@ -109,7 +109,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.FierySteel, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.Steel, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.FierySteel, 1L))
.fluidInputs(
Materials.FierySteel
@@ -124,7 +124,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.SteelMagnetic, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.Steel, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.SteelMagnetic, 1L))
.duration(((int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GTValues.M)) * TICKS)
.eut((int) TierEU.LV / 2)
@@ -137,7 +137,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.NeodymiumMagnetic, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.Neodymium, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.NeodymiumMagnetic, 1L))
.duration(((int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GTValues.M)) * TICKS)
.eut((int) TierEU.HV / 2)
@@ -149,7 +149,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.SamariumMagnetic, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.Samarium, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.SamariumMagnetic, 1L))
.duration(((int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GTValues.M)) * TICKS)
.eut((int) TierEU.IV / 2)
@@ -162,7 +162,7 @@ public class ProcessingTransforming implements IOreRecipeRegistrator {
{
if (GTOreDictUnificator.get(aPrefix, Materials.TengamAttuned, 1L) != null) {
GTValues.RA.stdBuilder()
- .itemInputs(GTUtility.copyAmount(1, aStack))
+ .itemInputs(GTOreDictUnificator.get(aPrefix, Materials.TengamPurified, 1L))
.itemOutputs(GTOreDictUnificator.get(aPrefix, Materials.TengamAttuned, 1L))
.duration(((int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GTValues.M)) * TICKS)
.eut((int) TierEU.RECIPE_UHV)
diff --git a/src/main/java/gregtech/loaders/postload/ProcessingArrayRecipeLoader.java b/src/main/java/gregtech/loaders/postload/ProcessingArrayRecipeLoader.java
index 9525041fcc..184e1571e1 100644
--- a/src/main/java/gregtech/loaders/postload/ProcessingArrayRecipeLoader.java
+++ b/src/main/java/gregtech/loaders/postload/ProcessingArrayRecipeLoader.java
@@ -3,6 +3,7 @@ package gregtech.loaders.postload;
import gregtech.api.enums.SoundResource;
import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.ProcessingArrayManager;
+import gtPlusPlus.api.recipe.GTPPRecipeMaps;
public class ProcessingArrayRecipeLoader {
@@ -35,7 +36,7 @@ public class ProcessingArrayRecipeLoader {
ProcessingArrayManager.addRecipeMapToPA("basicmachine.canner", RecipeMaps.cannerRecipes);
ProcessingArrayManager.addSoundResourceToPA("basicmachine.canner", SoundResource.IC2_MACHINES_EXTRACTOR_OP);
// Centrifuge
- ProcessingArrayManager.addRecipeMapToPA("basicmachine.centrifuge", RecipeMaps.centrifugeNonCellRecipes);
+ ProcessingArrayManager.addRecipeMapToPA("basicmachine.centrifuge", GTPPRecipeMaps.centrifugeNonCellRecipes);
ProcessingArrayManager.addSoundResourceToPA("basicmachine.centrifuge", SoundResource.NONE);
// Chemical Bath
ProcessingArrayManager.addRecipeMapToPA("basicmachine.chemicalbath", RecipeMaps.chemicalBathRecipes);
@@ -60,7 +61,7 @@ public class ProcessingArrayRecipeLoader {
ProcessingArrayManager
.addSoundResourceToPA("basicmachine.distillery", SoundResource.GT_MACHINES_DISTILLERY_LOOP);