diff options
| author | miozune <miozune@gmail.com> | 2023-12-04 08:26:47 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-12-04 00:26:47 +0100 |
| commit | 44c774ebbd67fd674565797796d53af48480032a (patch) | |
| tree | c12b23ffd2a3c6f1c5aeca00c821780798173d4e | |
| parent | b0c849f37e1bb36b41446ad9555f9481e03fbea4 (diff) | |
| download | GT5-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-- | .gitignore | 9 | ||||
| -rw-r--r-- | build.gradle | 30 | ||||
| -rw-r--r-- | dependencies.gradle | 6 | ||||
| -rw-r--r-- | gradle/wrapper/gradle-wrapper.jar | bin | 62076 -> 63375 bytes | |||
| -rw-r--r-- | gradle/wrapper/gradle-wrapper.properties | 3 | ||||
| -rwxr-xr-x | gradlew | 5 | ||||
| -rw-r--r-- | src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java | 3 | ||||
| -rw-r--r-- | src/main/java/com/elisis/gtnhlanth/api/recipe/LanthanidesRecipeMaps.java | 19 | ||||
| -rw-r--r-- | src/main/java/com/elisis/gtnhlanth/common/tileentity/Digester.java | 11 | ||||
| -rw-r--r-- | src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java | 10 | ||||
| -rw-r--r-- | src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java | 17 | ||||
| -rw-r--r-- | src/main/java/com/elisis/gtnhlanth/loader/RecipeAdder.java | 132 | ||||
| -rw-r--r-- | src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java | 804 | ||||
| -rw-r--r-- | src/main/java/com/elisis/gtnhlanth/loader/ZPMRubberChanges.java | 6 | ||||
| -rw-r--r-- | src/main/resources/assets/gtnhlanth/lang/en_US.lang | 12 | ||||
| -rw-r--r-- | src/main/resources/assets/gtnhlanth/lang/zh_CN.lang | 12 |
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 Binary files differindex c1962a79e2..033e24c4cd 100644 --- a/gradle/wrapper/gradle-wrapper.jar +++ b/gradle/wrapper/gradle-wrapper.jar 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 @@ -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. |
