aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/loaders/postload/chains
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/loaders/postload/chains')
-rw-r--r--src/main/java/gregtech/loaders/postload/chains/GT_PurifiedWaterRecipes.java89
1 files changed, 75 insertions, 14 deletions
diff --git a/src/main/java/gregtech/loaders/postload/chains/GT_PurifiedWaterRecipes.java b/src/main/java/gregtech/loaders/postload/chains/GT_PurifiedWaterRecipes.java
index b776f60554..4967f51699 100644
--- a/src/main/java/gregtech/loaders/postload/chains/GT_PurifiedWaterRecipes.java
+++ b/src/main/java/gregtech/loaders/postload/chains/GT_PurifiedWaterRecipes.java
@@ -17,13 +17,15 @@ import static gregtech.api.recipe.RecipeMaps.purificationParticleExtractionRecip
import static gregtech.api.recipe.RecipeMaps.purificationPhAdjustmentRecipes;
import static gregtech.api.recipe.RecipeMaps.purificationPlasmaHeatingRecipes;
import static gregtech.api.recipe.RecipeMaps.purificationUVTreatmentRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.HOURS;
import static gregtech.api.util.GT_RecipeBuilder.MINUTES;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+import static gregtech.api.util.GT_RecipeConstants.AssemblyLine;
import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT;
+import static gregtech.api.util.GT_RecipeConstants.RESEARCH_ITEM;
+import static gregtech.api.util.GT_RecipeConstants.RESEARCH_TIME;
import static gregtech.common.tileentities.machines.multi.purification.GT_MetaTileEntity_PurificationUnitParticleExtractor.BARYONIC_MATTER_OUTPUT;
-import java.util.Arrays;
-
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
@@ -35,11 +37,13 @@ import gregtech.api.enums.Materials;
import gregtech.api.enums.MaterialsUEVplus;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.TierEU;
+import gregtech.api.recipe.maps.PurificationUnitParticleExtractorFrontend;
import gregtech.api.recipe.metadata.PurificationPlantBaseChanceKey;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Utility;
import gregtech.common.tileentities.machines.multi.purification.GT_MetaTileEntity_PurificationPlant;
+import gregtech.common.tileentities.machines.multi.purification.GT_MetaTileEntity_PurificationUnitUVTreatment;
import gtPlusPlus.core.material.Particle;
public class GT_PurifiedWaterRecipes {
@@ -178,22 +182,27 @@ public class GT_PurifiedWaterRecipes {
.metadata(BASE_CHANCE, 0.0f)
.addTo(purificationPlasmaHeatingRecipes);
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS.add(MyMaterial.orundum.get(OrePrefixes.lens, 1));
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS
+ .add(GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Amber, 1));
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS
+ .add(GT_OreDictUnificator.get(OrePrefixes.lens, Materials.InfusedAir, 1));
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS
+ .add(GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Emerald, 1));
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS
+ .add(GT_OreDictUnificator.get(OrePrefixes.lens, ManaDiamond, 1));
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS
+ .add(GT_OreDictUnificator.get(OrePrefixes.lens, Materials.BlueTopaz, 1));
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS
+ .add(GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Amethyst, 1));
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS.add(FluorBuergerit.get(OrePrefixes.lens, 1));
+ GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS
+ .add(GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Dilithium, 1));
+
// Grade 6 - UV treatment
GT_Values.RA.stdBuilder()
.fluidInputs(Materials.Grade5PurifiedWater.getFluid(1000L))
.fluidOutputs(Materials.Grade6PurifiedWater.getFluid(900L))
- // These are not actually consumed and are purely for display purposes
- .special(
- Arrays.asList(
- MyMaterial.orundum.get(OrePrefixes.lens, 1),
- GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Amber, 1),
- GT_OreDictUnificator.get(OrePrefixes.lens, Materials.InfusedAir, 1),
- GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Emerald, 1),
- GT_OreDictUnificator.get(OrePrefixes.lens, ManaDiamond, 1),
- GT_OreDictUnificator.get(OrePrefixes.lens, Materials.BlueTopaz, 1),
- GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Amethyst, 1),
- FluorBuergerit.get(OrePrefixes.lens, 1),
- GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Dilithium, 1)))
.ignoreCollision()
.duration(duration)
.eut(TierEU.RECIPE_UV)
@@ -217,6 +226,15 @@ public class GT_PurifiedWaterRecipes {
ItemList.Quark_Creation_Catalyst_Top.get(1L), ItemList.Quark_Creation_Catalyst_Strange.get(1L),
ItemList.Quark_Creation_Catalyst_Charm.get(1L) };
+ // Add all combinations of input items to the frontend map
+ for (int i = 0; i < catalystInputs.length; ++i) {
+ for (int j = 1; j < catalystInputs.length; ++j) {
+ PurificationUnitParticleExtractorFrontend.inputItems.add(catalystInputs[i]);
+ PurificationUnitParticleExtractorFrontend.inputItemsShuffled
+ .add(catalystInputs[(i + j) % catalystInputs.length]);
+ }
+ }
+
// Add re-alignment recipes
for (int i = 0; i < catalystInputs.length; ++i) {
GT_Values.RA.stdBuilder()
@@ -248,6 +266,48 @@ public class GT_PurifiedWaterRecipes {
.addTo(plasmaForgeRecipes);
}
+ // Recipe for quark catalyst housing
+ GT_Values.RA.stdBuilder()
+ .metadata(RESEARCH_ITEM, ItemList.Electromagnet_Tengam.get(1))
+ .metadata(RESEARCH_TIME, 1 * HOURS)
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 16),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Infinity, 16),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tritanium, 16),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CosmicNeutronium, 16),
+ GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Neutronium, 64),
+ GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Infinity, 64),
+ GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Tritanium, 64),
+ GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.CosmicNeutronium, 64),
+ GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.UHV, 16),
+ GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.UEV, 8),
+ ItemList.Field_Generator_UEV.get(4))
+ .fluidInputs(
+ Materials.Neutronium.getMolten(16 * 144),
+ Materials.Infinity.getMolten(16 * 144),
+ Materials.Tritanium.getMolten(16 * 144),
+ Materials.CosmicNeutronium.getMolten(16 * 144))
+ .itemOutputs(ItemList.Quark_Catalyst_Housing.get(1))
+ .eut(TierEU.RECIPE_UIV)
+ .duration(60 * SECONDS)
+ .addTo(AssemblyLine);
+
+ GT_Values.RA.stdBuilder()
+ // Fake item inputs
+ .itemInputs(ItemList.Quark_Creation_Catalyst_Charm.get(1), ItemList.Quark_Creation_Catalyst_Strange.get(1))
+ .fluidInputs(Materials.Grade7PurifiedWater.getFluid(1000L))
+ .fluidOutputs(
+ Materials.Grade8PurifiedWater.getFluid(900L),
+ Materials.StableBaryonicMatter.getFluid(BARYONIC_MATTER_OUTPUT))
+ .itemOutputs(ItemList.Quark_Creation_Catalyst_Unaligned.get(2L))
+ .ignoreCollision()
+ .duration(duration)
+ .eut(TierEU.RECIPE_UEV)
+ .metadata(BASE_CHANCE, 0.0f)
+ .fake()
+ .addTo(purificationParticleExtractionRecipes);
+
+ // real recipe
GT_Values.RA.stdBuilder()
.fluidInputs(Materials.Grade7PurifiedWater.getFluid(1000L))
.fluidOutputs(
@@ -258,6 +318,7 @@ public class GT_PurifiedWaterRecipes {
.duration(duration)
.eut(TierEU.RECIPE_UEV)
.metadata(BASE_CHANCE, 0.0f)
+ .hidden()
.addTo(purificationParticleExtractionRecipes);
}
}