aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormiozune <miozune@gmail.com>2023-12-04 08:26:47 +0900
committerGitHub <noreply@github.com>2023-12-04 00:26:47 +0100
commit44c774ebbd67fd674565797796d53af48480032a (patch)
treec12b23ffd2a3c6f1c5aeca00c821780798173d4e
parentb0c849f37e1bb36b41446ad9555f9481e03fbea4 (diff)
downloadGT5-Unofficial-44c774ebbd67fd674565797796d53af48480032a.tar.gz
GT5-Unofficial-44c774ebbd67fd674565797796d53af48480032a.tar.bz2
GT5-Unofficial-44c774ebbd67fd674565797796d53af48480032a.zip
Migrate to new RecipeMap (#73)
* Migrate Lanth recipemaps * Migrate the rest * Don't requires NHCore * Cleanup recipemaps * Update GT to adapt to MaceratorBackend removal * updade gradle+bs+deps * Update dependencies.gradle --------- Co-authored-by: Martin Robertz <dream-master@gmx.net>
-rw-r--r--.gitignore9
-rw-r--r--build.gradle30
-rw-r--r--dependencies.gradle6
-rw-r--r--gradle/wrapper/gradle-wrapper.jarbin62076 -> 63375 bytes
-rw-r--r--gradle/wrapper/gradle-wrapper.properties3
-rwxr-xr-xgradlew5
-rw-r--r--src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java3
-rw-r--r--src/main/java/com/elisis/gtnhlanth/api/recipe/LanthanidesRecipeMaps.java19
-rw-r--r--src/main/java/com/elisis/gtnhlanth/common/tileentity/Digester.java11
-rw-r--r--src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java10
-rw-r--r--src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java17
-rw-r--r--src/main/java/com/elisis/gtnhlanth/loader/RecipeAdder.java132
-rw-r--r--src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java804
-rw-r--r--src/main/java/com/elisis/gtnhlanth/loader/ZPMRubberChanges.java6
-rw-r--r--src/main/resources/assets/gtnhlanth/lang/en_US.lang12
-rw-r--r--src/main/resources/assets/gtnhlanth/lang/zh_CN.lang12
16 files changed, 457 insertions, 622 deletions
diff --git a/.gitignore b/.gitignore
index b5e0ad07bc..5e80e0ae57 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,7 @@
.gradle
.settings
/.idea/
+/.vscode/
/run/
/build/
/eclipse/
@@ -25,9 +26,13 @@ whitelist.json
*.iml
*.ipr
*.iws
-src/main/resources/mixins.*.json
+src/main/resources/mixins.*([!.]).json
*.bat
*.DS_Store
!gradlew.bat
-*.bak
.factorypath
+addon.local.gradle
+addon.local.gradle.kts
+addon.late.local.gradle
+addon.late.local.gradle.kts
+layout.json
diff --git a/build.gradle b/build.gradle
index e59189c895..8507c7dfbd 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,4 +1,4 @@
-//version: 1697697256
+//version: 1701530445
/*
DO NOT CHANGE THIS FILE!
Also, you may replace this file at any time if there is an update available.
@@ -28,27 +28,12 @@ import java.util.concurrent.TimeUnit
buildscript {
repositories {
- mavenCentral()
-
- maven {
- name 'forge'
- url 'https://maven.minecraftforge.net'
- }
maven {
// GTNH RetroFuturaGradle and ASM Fork
name "GTNH Maven"
url "http://jenkins.usrv.eu:8081/nexus/content/groups/public/"
allowInsecureProtocol = true
}
- maven {
- name 'sonatype'
- url 'https://oss.sonatype.org/content/repositories/snapshots/'
- }
- maven {
- name 'Scala CI dependencies'
- url 'https://repo1.maven.org/maven2/'
- }
-
mavenLocal()
}
}
@@ -302,7 +287,7 @@ if (apiPackage) {
}
if (accessTransformersFile) {
- for (atFile in accessTransformersFile.split(",")) {
+ for (atFile in accessTransformersFile.split(" ")) {
String targetFile = "src/main/resources/META-INF/" + atFile.trim()
if (!getFile(targetFile).exists()) {
throw new GradleException("Could not resolve \"accessTransformersFile\"! Could not find " + targetFile)
@@ -646,7 +631,7 @@ repositories {
def mixinProviderGroup = "io.github.legacymoddingmc"
def mixinProviderModule = "unimixins"
-def mixinProviderVersion = "0.1.7.1"
+def mixinProviderVersion = "0.1.13"
def mixinProviderSpecNoClassifer = "${mixinProviderGroup}:${mixinProviderModule}:${mixinProviderVersion}"
def mixinProviderSpec = "${mixinProviderSpecNoClassifer}:dev"
ext.mixinProviderSpec = mixinProviderSpec
@@ -793,12 +778,12 @@ ext.java17PatchDependenciesCfg = configurations.create("java17PatchDependencies"
}
dependencies {
- def lwjgl3ifyVersion = '1.5.1'
+ def lwjgl3ifyVersion = '1.5.7'
if (modId != 'lwjgl3ify') {
java17Dependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}")
}
if (modId != 'hodgepodge') {
- java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.3.17')
+ java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.3.35')
}
java17PatchDependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}:forgePatches") {transitive = false}
@@ -1187,9 +1172,8 @@ publishing {
version = System.getenv("RELEASE_VERSION") ?: identifiedVersion
}
}
-
repositories {
- if (usesMavenPublishing.toBoolean()) {
+ if (usesMavenPublishing.toBoolean() && System.getenv("MAVEN_USER") != null) {
maven {
url = mavenPublishUrl
allowInsecureProtocol = mavenPublishUrl.startsWith("http://") // Mostly for the GTNH maven
@@ -1311,7 +1295,7 @@ def addCurseForgeRelation(String type, String name) {
// Updating
-def buildscriptGradleVersion = "8.2.1"
+def buildscriptGradleVersion = "8.5"
tasks.named('wrapper', Wrapper).configure {
gradleVersion = buildscriptGradleVersion
diff --git a/dependencies.gradle b/dependencies.gradle
index 7985914949..5e60d6cf88 100644
--- a/dependencies.gradle
+++ b/dependencies.gradle
@@ -1,7 +1,7 @@
// Add your dependencies here
dependencies {
- api('com.github.GTNewHorizons:GT5-Unofficial:5.09.44.55:dev')
- implementation('com.github.GTNewHorizons:GTplusplus:1.10.21:dev')
- implementation('com.github.GTNewHorizons:GoodGenerator:0.7.5:dev')
+ api('com.github.GTNewHorizons:GT5-Unofficial:5.09.44.96:dev')
+ implementation('com.github.GTNewHorizons:GTplusplus:1.10.37:dev')
+ implementation('com.github.GTNewHorizons:GoodGenerator:0.7.10:dev')
}
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index c1962a79e2..033e24c4cd 100644
--- a/gradle/wrapper/gradle-wrapper.jar
+++ b/gradle/wrapper/gradle-wrapper.jar
Binary files differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 17a8ddce2d..1af9e0930b 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
networkTimeout=10000
+validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/gradlew b/gradlew
index aeb74cbb43..fcb6fca147 100755
--- a/gradlew
+++ b/gradlew
@@ -130,10 +130,13 @@ location of your Java installation."
fi
else
JAVACMD=java
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+ if ! command -v java >/dev/null 2>&1
+ then
+ die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
+ fi
fi
# Increase the maximum file descriptors if we can.
diff --git a/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java b/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java
index 94c9e29cf8..36a34f172a 100644
--- a/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java
+++ b/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java
@@ -32,8 +32,7 @@ import gregtech.api.util.GT_Log;
dependencies = "required-after:IC2; " + "required-after:gregtech; "
+ "required-after:bartworks; "
+ "required-after:GoodGenerator; "
- + "before:miscutils; "
- + "required-after:dreamcraft; ")
+ + "before:miscutils; ")
public class GTNHLanthanides {
public static Logger LOG = Logger.getLogger("GTNH:Lanthanides");
diff --git a/src/main/java/com/elisis/gtnhlanth/api/recipe/LanthanidesRecipeMaps.java b/src/main/java/com/elisis/gtnhlanth/api/recipe/LanthanidesRecipeMaps.java
new file mode 100644
index 0000000000..9792dcad10
--- /dev/null
+++ b/src/main/java/com/elisis/gtnhlanth/api/recipe/LanthanidesRecipeMaps.java
@@ -0,0 +1,19 @@
+package com.elisis.gtnhlanth.api.recipe;
+
+import gregtech.api.gui.modularui.GT_UITextures;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMapBackend;
+import gregtech.api.recipe.RecipeMapBuilder;
+import gregtech.nei.formatter.HeatingCoilSpecialValueFormatter;
+import gregtech.nei.formatter.SimpleSpecialValueFormatter;
+
+public class LanthanidesRecipeMaps {
+
+ public static final RecipeMap<RecipeMapBackend> digesterRecipes = RecipeMapBuilder.of("gtnhlanth.recipe.digester")
+ .maxIO(1, 1, 1, 1).minInputs(1, 1).progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE)
+ .neiSpecialInfoFormatter(HeatingCoilSpecialValueFormatter.INSTANCE).build();
+ public static final RecipeMap<RecipeMapBackend> dissolutionTankRecipes = RecipeMapBuilder
+ .of("gtnhlanth.recipe.disstank").maxIO(2, 3, 2, 1).minInputs(1, 1)
+ .progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE)
+ .neiSpecialInfoFormatter(new SimpleSpecialValueFormatter("value.disstank")).build();
+}
diff --git a/src/main/java/com/elisis/gtnhlanth/common/tileentity/Digester.java b/src/main/java/com/elisis/gtnhlanth/common/tileentity/Digester.java
index 5e2b03e945..9afc808779 100644
--- a/src/main/java/com/elisis/gtnhlanth/common/tileentity/Digester.java
+++ b/src/main/java/com/elisis/gtnhlanth/common/tileentity/Digester.java
@@ -18,7 +18,7 @@ import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.FluidStack;
-import com.elisis.gtnhlanth.loader.RecipeAdder;
+import com.elisis.gtnhlanth.api.recipe.LanthanidesRecipeMaps;
import com.elisis.gtnhlanth.util.DescTextLocalization;
import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable;
import com.gtnewhorizon.structurelib.structure.IStructureDefinition;
@@ -30,6 +30,7 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
+import gregtech.api.recipe.RecipeMap;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Recipe;
@@ -91,6 +92,11 @@ public class Digester extends GT_MetaTileEntity_EnhancedMultiBlockBase<Digester>
}
@Override
+ public RecipeMap<?> getRecipeMap() {
+ return LanthanidesRecipeMaps.digesterRecipes;
+ }
+
+ @Override
public boolean checkRecipe(ItemStack itemStack) {
// GT_Log.out.print("Digester: in checkRecipe\n");
@@ -101,8 +107,7 @@ public class Digester extends GT_MetaTileEntity_EnhancedMultiBlockBase<Digester>
// GT_Log.out.print("Digester: " + Arrays.toString(mInventory));
- // Collection<GT_Recipe> tRecipes = RecipeAdder.instance.DigesterRecipes.mRecipeList;
- GT_Recipe tRecipe = RecipeAdder.instance.DigesterRecipes
+ GT_Recipe tRecipe = LanthanidesRecipeMaps.digesterRecipes
.findRecipe(getBaseMetaTileEntity(), false, tVoltage, tFluidInputArray, tItems);
if (tRecipe == null || !tRecipe.isRecipeInputEqual(true, tFluidInputArray, tItems)) return false;
diff --git a/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java b/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java
index 96dd57389d..992cdf5d2d 100644
--- a/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java
+++ b/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java
@@ -19,7 +19,7 @@ import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.FluidStack;
-import com.elisis.gtnhlanth.loader.RecipeAdder;
+import com.elisis.gtnhlanth.api.recipe.LanthanidesRecipeMaps;
import com.elisis.gtnhlanth.util.DescTextLocalization;
import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry;
import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable;
@@ -32,6 +32,7 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
+import gregtech.api.recipe.RecipeMap;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Recipe;
@@ -88,6 +89,11 @@ public class DissolutionTank extends GT_MetaTileEntity_EnhancedMultiBlockBase<Di
}
@Override
+ public RecipeMap<?> getRecipeMap() {
+ return LanthanidesRecipeMaps.dissolutionTankRecipes;
+ }
+
+ @Override
public boolean checkRecipe(ItemStack itemStack) {
// GT_Log.out.print("in checkRecipe");
@@ -96,7 +102,7 @@ public class DissolutionTank extends GT_MetaTileEntity_EnhancedMultiBlockBase<Di
ItemStack[] tItems = this.getStoredInputs().toArray(new ItemStack[0]);
long tVoltage = this.getMaxInputVoltage();
- GT_Recipe tRecipe = RecipeAdder.instance.DissolutionTankRecipes
+ GT_Recipe tRecipe = LanthanidesRecipeMaps.dissolutionTankRecipes
.findRecipe(getBaseMetaTileEntity(), false, tVoltage, tFluidInputArray, tItems);
if (tRecipe == null || !tRecipe.isRecipeInputEqual(true, tFluidInputArray, tItems)) return false;
diff --git a/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java b/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java
index b465ecfab3..c63b3a2942 100644
--- a/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java
+++ b/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java
@@ -3,12 +3,12 @@ package com.elisis.gtnhlanth.loader;
import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.*;
import static gregtech.api.enums.Mods.GTPlusPlus;
import static gregtech.api.enums.OrePrefixes.*;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalRecipes;
+import static gregtech.api.recipe.RecipeMaps.chemicalReactorRecipes;
+import static gregtech.api.recipe.RecipeMaps.electrolyzerRecipes;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.api.util.GT_RecipeBuilder.TICKS;
import static gregtech.api.util.GT_RecipeConstants.UniversalChemical;
-import java.util.Collection;
import java.util.HashSet;
import net.minecraft.item.ItemStack;
@@ -141,14 +141,14 @@ public class BotRecipes {
GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonMonoxide.getCells(1), GT_Utility.getIntegratedCircuit(12))
.itemOutputs(Phosgene.get(cell, 1)).fluidInputs(Materials.Chlorine.getGas(2000))
- .duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV).addTo(sChemicalRecipes);
+ .duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV).addTo(chemicalReactorRecipes);
GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(12))
.itemOutputs(Phosgene.get(cell, 1), Materials.Empty.getCells(1))
.fluidInputs(Materials.CarbonMonoxide.getGas(1000)).duration(2 * SECONDS + 10 * TICKS)
- .eut(TierEU.RECIPE_HV).addTo(sChemicalRecipes);
+ .eut(TierEU.RECIPE_HV).addTo(chemicalReactorRecipes);
GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonMonoxide.getCells(1), Materials.Chlorine.getCells(2))
.itemOutputs(Phosgene.get(cell, 1), Materials.Empty.getCells(2)).duration(2 * SECONDS + 10 * TICKS)
- .eut(TierEU.RECIPE_HV).addTo(sChemicalRecipes);
+ .eut(TierEU.RECIPE_HV).addTo(chemicalReactorRecipes);
GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(2))
.itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.CarbonMonoxide.getGas(1000))
.fluidOutputs(BotWerkstoffMaterialPool.Phosgene.getFluidOrGas(1000)).duration(2 * SECONDS + 10 * TICKS)
@@ -255,11 +255,10 @@ public class BotRecipes {
}
public static void removeTungstenElectro() {
- Collection<GT_Recipe> electroRecipeMap = GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes.mRecipeList;
HashSet<GT_Recipe> toDel = new HashSet<>();
ItemStack[] toRemove = { Materials.Scheelite.getDust(1), Materials.Tungstate.getDust(1),
WerkstoffLoader.Ferberite.get(dust, 1), WerkstoffLoader.Huebnerit.get(dust, 1) };
- for (GT_Recipe tRecipe : electroRecipeMap) {
+ for (GT_Recipe tRecipe : electrolyzerRecipes.getAllRecipes()) {
if (tRecipe.mFakeRecipe) continue;
for (int i = 0; i < tRecipe.mInputs.length; i++) {
ItemStack tItem = tRecipe.mInputs[i];
@@ -272,7 +271,7 @@ public class BotRecipes {
}
}
}
- electroRecipeMap.removeAll(toDel);
- GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes.reInit();
+ electrolyzerRecipes.getBackend().removeRecipes(toDel);
+ electrolyzerRecipes.getBackend().reInit();
}
}
diff --git a/src/main/java/com/elisis/gtnhlanth/loader/RecipeAdder.java b/src/main/java/com/elisis/gtnhlanth/loader/RecipeAdder.java
deleted file mode 100644
index d8f3e7ff29..0000000000
--- a/src/main/java/com/elisis/gtnhlanth/loader/RecipeAdder.java
+++ /dev/null
@@ -1,132 +0,0 @@
-package com.elisis.gtnhlanth.loader;
-
-import java.util.Collection;
-import java.util.HashSet;
-
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.StatCollector;
-import net.minecraftforge.fluids.FluidStack;
-
-import gregtech.api.gui.modularui.GT_UITextures;
-import gregtech.api.util.GT_Recipe;
-import gregtech.nei.HeatingCoilSpecialValueFormatter;
-
-public class RecipeAdder {
-
- public static final RecipeAdder instance = new RecipeAdder();
-
- public final DigestMap DigesterRecipes = (DigestMap) new DigestMap(
- new HashSet<>(100),
- "gtnhlanth.recipe.digester",
- StatCollector.translateToLocal("tile.recipe.digester"),
- null,
- "gtnhlanth:textures/gui/Digester",
- 1,
- 1,
- 1,
- 1,
- 1,
- StatCollector.translateToLocal("value.digester") + ": ", // Heat Capacity
- 1,
- "K",
- false,
- true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE)
- .setNEISpecialInfoFormatter(HeatingCoilSpecialValueFormatter.INSTANCE);
-
- public final DissolutionTankMap DissolutionTankRecipes = (DissolutionTankMap) new DissolutionTankMap(
- new HashSet<>(100),
- "gtnhlanth.recipe.disstank",
- StatCollector.translateToLocal("tile.recipe.disstank"),
- null,
- "gtnhlanth:textures/gui/Disstank",
- 2,
- 3,
- 1,
- 1,
- 1,
- StatCollector.translateToLocal("value.disstank") + ": ", // Ratio
- 1,
- ":1",
- false,
- true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE).setUsualFluidInputCount(2);
-
- public class DigestMap extends GT_Recipe.GT_Recipe_Map {
-
- public DigestMap(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName, String aNEIName,
- String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, int aMinimalInputItems,
- int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, int aNEISpecialValueMultiplier,
- String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, boolean aNEIAllowed) {
- super(
- aRecipeList,
- aUnlocalizedName,
- aLocalName,
- aNEIName,
- aNEIGUIPath,
- aUsualInputCount,
- aUsualOutputCount,
- aMinimalInputItems,
- aMinimalInputFluids,
- aAmperage,
- aNEISpecialValuePre,
- aNEISpecialValueMultiplier,
- aNEISpecialValuePost,
- aShowVoltageAmperageInNEI,
- aNEIAllowed);
- }
-
- public void addDigesterRecipe(FluidStack[] fluidInputs, ItemStack[] itemInputs, FluidStack fluidOutput,
- ItemStack[] itemOutputs, int EUt, int ticks, int heat) {
- super.addRecipe(
- false,
- itemInputs,
- itemOutputs,
- null,
- fluidInputs,
- new FluidStack[] { fluidOutput },
- ticks,
- EUt,
- heat);
- }
- }
-
- public class DissolutionTankMap extends GT_Recipe.GT_Recipe_Map {
-
- public DissolutionTankMap(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName,
- String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount,
- int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre,
- int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI,
- boolean aNEIAllowed) {
- super(
- aRecipeList,
- aUnlocalizedName,
- aLocalName,
- aNEIName,
- aNEIGUIPath,
- aUsualInputCount,
- aUsualOutputCount,
- aMinimalInputItems,
- aMinimalInputFluids,
- aAmperage,
- aNEISpecialValuePre,
- aNEISpecialValueMultiplier,
- aNEISpecialValuePost,
- aShowVoltageAmperageInNEI,
- aNEIAllowed);
- }
-
- /** Higher part input fluid first, always **/
- public void addDissolutionTankRecipe(FluidStack[] fluidInputs, ItemStack[] itemInputs, FluidStack fluidOutput,
- ItemStack[] itemOutputs, int EUt, int ticks, int ratio) {
- super.addRecipe(
- false,
- itemInputs,
- itemOutputs,
- null,
- fluidInputs,
- new FluidStack[] { fluidOutput },
- ticks,
- EUt,
- ratio);
- }
- }
-}
diff --git a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java
index 950c274475..3b5ebf6f4e 100644
--- a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java
+++ b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java
@@ -1,8 +1,32 @@
package com.elisis.gtnhlanth.loader;
+import static com.elisis.gtnhlanth.api.recipe.LanthanidesRecipeMaps.digesterRecipes;
+import static com.elisis.gtnhlanth.api.recipe.LanthanidesRecipeMaps.dissolutionTankRecipes;
import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.*;
+import static gregtech.api.recipe.RecipeMaps.autoclaveRecipes;
+import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes;
+import static gregtech.api.recipe.RecipeMaps.centrifugeNonCellRecipes;
+import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes;
+import static gregtech.api.recipe.RecipeMaps.chemicalBathRecipes;
+import static gregtech.api.recipe.RecipeMaps.distillationTowerRecipes;
+import static gregtech.api.recipe.RecipeMaps.electrolyzerNonCellRecipes;
+import static gregtech.api.recipe.RecipeMaps.electrolyzerRecipes;
+import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes;
+import static gregtech.api.recipe.RecipeMaps.hammerRecipes;
+import static gregtech.api.recipe.RecipeMaps.laserEngraverRecipes;
+import static gregtech.api.recipe.RecipeMaps.maceratorRecipes;
+import static gregtech.api.recipe.RecipeMaps.mixerNonCellRecipes;
+import static gregtech.api.recipe.RecipeMaps.mixerRecipes;
+import static gregtech.api.recipe.RecipeMaps.multiblockChemicalReactorRecipes;
+import static gregtech.api.recipe.RecipeMaps.oreWasherRecipes;
+import static gregtech.api.recipe.RecipeMaps.sifterRecipes;
+import static gregtech.api.recipe.RecipeMaps.thermalCentrifugeRecipes;
+import static gregtech.api.recipe.RecipeMaps.vacuumFreezerRecipes;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.common.items.GT_MetaGenerated_Item_01.registerCauldronCleaningFor;
+import static gtPlusPlus.api.recipe.GTPPRecipeMaps.chemicalDehydratorRecipes;
+import static gtPlusPlus.api.recipe.GTPPRecipeMaps.simpleWasherRecipes;
+import static gtPlusPlus.api.recipe.GTPPRecipeMaps.vacuumFurnaceRecipes;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
@@ -38,7 +62,6 @@ import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.TierEU;
-import gregtech.api.util.GTPP_Recipe;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
@@ -376,38 +399,37 @@ public class RecipeLoader {
// CHAIN BEGIN
// MONAZITE
- RecipeAdder.instance.DigesterRecipes.addDigesterRecipe(
- new FluidStack[] { Materials.NitricAcid.getFluid(700) },
- new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Monazite, 2) },
- WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(400),
- new ItemStack[] { Materials.SiliconDioxide.getDust(1) },
- 1920,
- 400,
- 800);
+ GT_Values.RA.stdBuilder().fluidInputs(Materials.NitricAcid.getFluid(700))
+ .itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Monazite, 2))
+ .fluidOutputs(WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(400))
+ .itemOutputs(Materials.SiliconDioxide.getDust(1)).eut(1920).duration(400).specialValue(800)
+ .addTo(digesterRecipes);
- RecipeAdder.instance.DissolutionTankRecipes.addDissolutionTankRecipe(
- new FluidStack[] { Materials.Water.getFluid(10000),
- WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(1000) },
- new ItemStack[] { GT_Utility.getIntegratedCircuit(1), Materials.Saltpeter.getDust(1) },
- WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(11000),
- new ItemStack[] { WerkstoffMaterialPool.HafniaZirconiaBlend.get(OrePrefixes.dustTiny, 4),
- WerkstoffLoader.Thorianit.get(OrePrefixes.dust, 1), Materials.Monazite.getDustTiny(2) },
- 480,
- 900,
- 10);
-
- RecipeAdder.instance.DissolutionTankRecipes.addDissolutionTankRecipe(
- new FluidStack[] { Materials.Water.getFluid(90000),
- WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(9000) },
- new ItemStack[] { GT_Utility.getIntegratedCircuit(9), Materials.Saltpeter.getDust(9) },
- WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(99000),
- new ItemStack[] { WerkstoffMaterialPool.HafniaZirconiaBlend.get(OrePrefixes.dust, 4),
- WerkstoffLoader.Thorianit.get(OrePrefixes.dust, 9), Materials.Monazite.getDust(2) },
- 480,
- 8100,
- 10);
+ GT_Values.RA.stdBuilder()
+ .fluidInputs(
+ Materials.Water.getFluid(10000),
+ WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(1000))
+ .itemInputs(GT_Utility.getIntegratedCircuit(1), Materials.Saltpeter.getDust(1))
+ .fluidOutputs(WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(11000))
+ .itemOutputs(
+ WerkstoffMaterialPool.HafniaZirconiaBlend.get(OrePrefixes.dustTiny, 4),
+ WerkstoffLoader.Thorianit.get(OrePrefixes.dust, 1),
+ Materials.Monazite.getDustTiny(2))
+ .eut(480).duration(900).specialValue(10).noOptimize().addTo(dissolutionTankRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .fluidInputs(
+ Materials.Water.getFluid(90000),
+ WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(9000))
+ .itemInputs(GT_Utility.getIntegratedCircuit(9), Materials.Saltpeter.getDust(9))
+ .fluidOutputs(WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(99000))
+ .itemOutputs(
+ WerkstoffMaterialPool.HafniaZirconiaBlend.get(OrePrefixes.dust, 4),
+ WerkstoffLoader.Thorianit.get(OrePrefixes.dust, 9),
+ Materials.Monazite.getDust(2))
+ .eut(480).duration(8100).specialValue(10).noOptimize().addTo(dissolutionTankRecipes);
- GT_Recipe.GT_Recipe_Map.sSifterRecipes.addRecipe(
+ sifterRecipes.addRecipe(
false,
null,
new ItemStack[] { WerkstoffMaterialPool.MonaziteSulfate.get(OrePrefixes.dust, 1),
@@ -560,7 +582,7 @@ public class RecipeLoader {
220,
120);
- GT_Recipe.GT_Recipe_Map.sSifterRecipes.addRecipe(
+ sifterRecipes.addRecipe(
false,
null,
new ItemStack[] { WerkstoffMaterialPool.CeriumDioxide.get(OrePrefixes.dust, 1) },
@@ -608,7 +630,7 @@ public class RecipeLoader {
// END Cerium (NMLC)
- GT_Recipe.GT_Recipe_Map.sVacuumRecipes.addRecipe( // Uses fluid, outputs item. Yet another hacky recipe
+ vacuumFreezerRecipes.addRecipe( // Uses fluid, outputs item. Yet another hacky recipe
false,
null,
new ItemStack[] { WerkstoffMaterialPool.CooledMonaziteRareEarthConcentrate.get(OrePrefixes.dust, 1), // TODO:
@@ -740,14 +762,11 @@ public class RecipeLoader {
1920);
// BASTNASITE (god help me)
- RecipeAdder.instance.DigesterRecipes.addDigesterRecipe(
- new FluidStack[] { Materials.NitricAcid.getFluid(700) },
- new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Bastnasite, 2) },
- WerkstoffMaterialPool.MuddyRareEarthBastnasiteSolution.getFluidOrGas(400),
- new ItemStack[] { Materials.SiliconDioxide.getDust(1) },
- 1920,
- 400,
- 800);
+ GT_Values.RA.stdBuilder().fluidInputs(Materials.NitricAcid.getFluid(700))
+ .itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Bastnasite, 2))
+ .fluidOutputs(WerkstoffMaterialPool.MuddyRareEarthBastnasiteSolution.getFluidOrGas(400))
+ .itemOutputs(Materials.SiliconDioxide.getDust(1)).eut(1920).duration(400).specialValue(800)
+ .addTo(digesterRecipes);
GT_Values.RA.addCrackingRecipe(
1,
@@ -768,17 +787,16 @@ public class RecipeLoader {
800,
120);
- RecipeAdder.instance.DissolutionTankRecipes.addDissolutionTankRecipe(
- new FluidStack[] { Materials.Water.getFluid(10000),
- WerkstoffMaterialPool.ConditionedBastnasiteMud.getFluidOrGas(1000) },
- new ItemStack[] { Materials.Saltpeter.getDust(1) },
- WerkstoffMaterialPool.DiltedRareEarthBastnasiteMud.getFluidOrGas(11000),
- new ItemStack[] { WerkstoffMaterialPool.Gangue.get(OrePrefixes.dust, 1) },
- 1920,
- 1000,
- 10);
-
- GT_Recipe.GT_Recipe_Map.sSifterRecipes.addRecipe(
+ GT_Values.RA.stdBuilder()
+ .fluidInputs(
+ Materials.Water.getFluid(10000),
+ WerkstoffMaterialPool.ConditionedBastnasiteMud.getFluidOrGas(1000))
+ .itemInputs(Materials.Saltpeter.getDust(1))
+ .fluidOutputs(WerkstoffMaterialPool.DiltedRareEarthBastnasiteMud.getFluidOrGas(11000))
+ .itemOutputs(WerkstoffMaterialPool.Gangue.get(OrePrefixes.dust, 1)).eut(1920).duration(1000)
+ .specialValue(10).noOptimize().addTo(dissolutionTankRecipes);
+
+ sifterRecipes.addRecipe(
false,
null,
new ItemStack[] { Materials.SiliconDioxide.getDust(1), Materials.Rutile.getDust(1),
@@ -990,357 +1008,340 @@ public class RecipeLoader {
GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Lanthanum, 1))
.itemOutputs(Materials.SiliconDioxide.getDust(3)).fluidInputs(Materials.Chlorine.getGas(36000))
.fluidOutputs(LanthanumChlorideConcentrate.getFluidOrGas(3000)).specialValue(800).eut(TierEU.RECIPE_ZPM)
- .duration(2 * SECONDS).addTo(RecipeAdder.instance.DigesterRecipes);
+ .duration(2 * SECONDS).addTo(digesterRecipes);
GT_Values.RA.stdBuilder().itemInputs(LanthanumOreConcentrate.get(OrePrefixes.dust, 1))
.itemOutputs(Materials.SiliconDioxide.getDust(1)).fluidInputs(Materials.Chlorine.getGas(12000))
.fluidOutputs(LanthanumChlorideConcentrate.getFluidOrGas(1000)).specialValue(800).eut(TierEU.RECIPE_ZPM)
- .duration(2 * SECONDS).addTo(RecipeAdder.instance.DigesterRecipes);
+ .duration(2 * SECONDS).addTo(digesterRecipes);
// 1B oreChlorideConcentrate = 1 ore's rare earth metal + 3 any rare earth metal
- GT_Values.RA.stdBuilder().noItemInputs()
+ GT_Values.RA.stdBuilder()
.fluidInputs(
LanthanumExtractingNanoResin.getFluidOrGas(1000),
LanthanumChlorideConcentrate.getFluidOrGas(1000))
- .noItemOutputs()
.fluidOutputs(
FilledLanthanumExtractingNanoResin.getFluidOrGas(1000),
ChlorinatedRareEarthConcentrate.getFluidOrGas(1000))
- .eut(TierEU.RECIPE_UV).duration(1 * SECONDS).addTo(GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes);
+ .eut(TierEU.RECIPE_UV).duration(1 * SECONDS).addTo(multiblockChemicalReactorRecipes);
// Praseodymium Part
// Digester to produce Praseodymium Chloride Concentrate
GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.