Skip to content

Commit a954556

Browse files
authored
Port Bauxite Processing from 1.12 (GregTechCEu#3126)
Co-authored-by: GirixK <GirixK@users.noreply.github.com>
1 parent ffca5bc commit a954556

10 files changed

Lines changed: 229 additions & 29 deletions

File tree

src/generated/resources/assets/gtceu/lang/en_ud.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4698,6 +4698,9 @@
46984698
"material.gtceu.bastnasite": "ǝʇısɐuʇsɐᗺ",
46994699
"material.gtceu.battery_alloy": "ʎoןןⱯ ʎɹǝʇʇɐᗺ",
47004700
"material.gtceu.bauxite": "ǝʇıxnɐᗺ",
4701+
"material.gtceu.bauxite_slag": "bɐןS ǝʇıxnɐᗺ",
4702+
"material.gtceu.bauxite_sludge": "ǝbpnןS ǝʇıxnɐᗺ",
4703+
"material.gtceu.bauxite_slurry": "ʎɹɹnןS ǝʇıxnɐᗺ",
47014704
"material.gtceu.bentonite": "ǝʇıuoʇuǝᗺ",
47024705
"material.gtceu.benzene": "ǝuǝzuǝᗺ",
47034706
"material.gtceu.berkelium": "ɯnıןǝʞɹǝᗺ",
@@ -4780,6 +4783,7 @@
47804783
"material.gtceu.cooperite": "ǝʇıuopןǝɥS",
47814784
"material.gtceu.copernicium": "ɯnıɔıuɹǝdoƆ",
47824785
"material.gtceu.copper": "ɹǝddoƆ",
4786+
"material.gtceu.cracked_bauxite_slurry": "ʎɹɹnןS ǝʇıxnɐᗺ pǝʞɔɐɹƆ",
47834787
"material.gtceu.creosote": "ǝʇosoǝɹƆ",
47844788
"material.gtceu.cumene": "ǝuǝɯnƆ",
47854789
"material.gtceu.cupric_oxide": "ǝpıxO ɔıɹdnƆ",
@@ -4791,6 +4795,7 @@
47914795
"material.gtceu.damascus_steel": "ןǝǝʇS snɔsɐɯɐᗡ",
47924796
"material.gtceu.dark_ash": "ɥsⱯ ʞɹɐᗡ",
47934797
"material.gtceu.darmstadtium": "ɯnıʇpɐʇsɯɹɐᗡ",
4798+
"material.gtceu.decalcified_bauxite_sludge": "ǝbpnןS ǝʇıxnɐᗺ pǝıɟıɔןɐɔǝᗡ",
47944799
"material.gtceu.deepslate": "ǝʇɐןsdǝǝᗡ",
47954800
"material.gtceu.depleted_uranium_hexafluoride": "ǝpıɹonןɟɐxǝH ɯnıuɐɹ∩ pǝʇǝןdǝᗡ",
47964801
"material.gtceu.deuterium": "ɯnıɹǝʇnǝᗡ",
@@ -4922,6 +4927,7 @@
49224927
"material.gtceu.hypochlorous_acid": "pıɔⱯ snoɹoןɥɔodʎH",
49234928
"material.gtceu.ice": "ǝɔI",
49244929
"material.gtceu.ilmenite": "ǝʇıuǝɯןI",
4930+
"material.gtceu.ilmenite_slag": "bɐןS ǝʇıuǝɯןI",
49254931
"material.gtceu.impure_enriched_naquadah_solution": "uoıʇnןoS ɥɐpɐnbɐN pǝɥɔıɹuƎ ǝɹndɯI",
49264932
"material.gtceu.impure_naquadria_solution": "uoıʇnןoS ɐıɹpɐnbɐN ǝɹndɯI",
49274933
"material.gtceu.incoloy_ma_956": "9ϛ6-ⱯW ʎoןoɔuI",

src/generated/resources/assets/gtceu/lang/en_us.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4698,6 +4698,9 @@
46984698
"material.gtceu.bastnasite": "Bastnasite",
46994699
"material.gtceu.battery_alloy": "Battery Alloy",
47004700
"material.gtceu.bauxite": "Bauxite",
4701+
"material.gtceu.bauxite_slag": "Bauxite Slag",
4702+
"material.gtceu.bauxite_sludge": "Bauxite Sludge",
4703+
"material.gtceu.bauxite_slurry": "Bauxite Slurry",
47014704
"material.gtceu.bentonite": "Bentonite",
47024705
"material.gtceu.benzene": "Benzene",
47034706
"material.gtceu.berkelium": "Berkelium",
@@ -4780,6 +4783,7 @@
47804783
"material.gtceu.cooperite": "Sheldonite",
47814784
"material.gtceu.copernicium": "Copernicium",
47824785
"material.gtceu.copper": "Copper",
4786+
"material.gtceu.cracked_bauxite_slurry": "Cracked Bauxite Slurry",
47834787
"material.gtceu.creosote": "Creosote",
47844788
"material.gtceu.cumene": "Cumene",
47854789
"material.gtceu.cupric_oxide": "Cupric Oxide",
@@ -4791,6 +4795,7 @@
47914795
"material.gtceu.damascus_steel": "Damascus Steel",
47924796
"material.gtceu.dark_ash": "Dark Ash",
47934797
"material.gtceu.darmstadtium": "Darmstadtium",
4798+
"material.gtceu.decalcified_bauxite_sludge": "Decalcified Bauxite Sludge",
47944799
"material.gtceu.deepslate": "Deepslate",
47954800
"material.gtceu.depleted_uranium_hexafluoride": "Depleted Uranium Hexafluoride",
47964801
"material.gtceu.deuterium": "Deuterium",
@@ -4922,6 +4927,7 @@
49224927
"material.gtceu.hypochlorous_acid": "Hypochlorous Acid",
49234928
"material.gtceu.ice": "Ice",
49244929
"material.gtceu.ilmenite": "Ilmenite",
4930+
"material.gtceu.ilmenite_slag": "Ilmenite Slag",
49254931
"material.gtceu.impure_enriched_naquadah_solution": "Impure Enriched Naquadah Solution",
49264932
"material.gtceu.impure_naquadria_solution": "Impure Naquadria Solution",
49274933
"material.gtceu.incoloy_ma_956": "Incoloy MA-956",

src/main/java/com/gregtechceu/gtceu/common/data/GTMaterials.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -667,6 +667,7 @@ private static void excludeAllGemsButNormal(Material material) {
667667
public static Material DiethylenetriaminepentaaceticAcid;
668668
public static Material SodiumNitrite;
669669
public static Material HydrogenPeroxide;
670+
public static Material IlmeniteSlag;
670671

671672
/**
672673
* Organic chemistry
@@ -889,6 +890,11 @@ private static void excludeAllGemsButNormal(Material material) {
889890
public static Material PCBCoolant;
890891
public static Material Sculk;
891892
public static Material Wax;
893+
public static Material BauxiteSlurry;
894+
public static Material CrackedBauxiteSlurry;
895+
public static Material BauxiteSludge;
896+
public static Material DecalcifiedBauxiteSludge;
897+
public static Material BauxiteSlag;
892898

893899
/**
894900
* Second Degree Compounds

src/main/java/com/gregtechceu/gtceu/common/data/materials/FirstDegreeMaterials.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -884,6 +884,7 @@ public static void register() {
884884
MagnesiumChloride = new Material.Builder(GTCEu.id("magnesium_chloride"))
885885
.dust(1)
886886
.color(0xeee4e9).secondaryColor(0xD40D5C)
887+
.flags(DISABLE_DECOMPOSITION)
887888
.components(Magnesium, 1, Chlorine, 2)
888889
.buildAndRegister();
889890

@@ -943,6 +944,7 @@ public static void register() {
943944
SodiumBicarbonate = new Material.Builder(GTCEu.id("sodium_bicarbonate"))
944945
.dust(1)
945946
.color(0xFFFFFF).secondaryColor(0xa7d2df).iconSet(ROUGH)
947+
.flags(DISABLE_DECOMPOSITION)
946948
.components(Sodium, 1, Hydrogen, 1, Carbon, 1, Oxygen, 3)
947949
.buildAndRegister();
948950

@@ -1666,5 +1668,10 @@ public static void register() {
16661668
.components(Hydrogen, 2, Oxygen, 2)
16671669
.hazard(HazardProperty.HazardTrigger.ANY, GTMedicalConditions.CHEMICAL_BURNS, true)
16681670
.buildAndRegister();
1671+
1672+
IlmeniteSlag = new Material.Builder(GTCEu.id("ilmenite_slag"))
1673+
.dust()
1674+
.color(0x8B0000).iconSet(SAND)
1675+
.buildAndRegister();
16691676
}
16701677
}

src/main/java/com/gregtechceu/gtceu/common/data/materials/MaterialFlagAddition.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,8 +164,9 @@ public static void register() {
164164
oreProp.setOreByProducts(GarnetYellow, Calcium);
165165

166166
oreProp = Ilmenite.getProperty(PropertyKey.ORE);
167-
oreProp.setOreByProducts(Iron, Rutile);
167+
oreProp.setOreByProducts(Iron, Rutile, Rutile, IlmeniteSlag);
168168
oreProp.setSeparatedInto(Iron);
169+
oreProp.setWashedIn(SodiumPersulfate);
169170

170171
oreProp = Bauxite.getProperty(PropertyKey.ORE);
171172
oreProp.setOreByProducts(Grossular, Rutile, Gallium);

src/main/java/com/gregtechceu/gtceu/common/data/materials/UnknownCompositionMaterials.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -573,5 +573,31 @@ public static void register() {
573573
.color(0xfabf29)
574574
.flags(NO_SMELTING)
575575
.buildAndRegister();
576+
577+
BauxiteSlurry = new Material.Builder(GTCEu.id("bauxite_slurry"))
578+
.fluid()
579+
.color(0x051650)
580+
.buildAndRegister();
581+
582+
CrackedBauxiteSlurry = new Material.Builder(GTCEu.id("cracked_bauxite_slurry"))
583+
.liquid(new FluidBuilder()
584+
.temperature(775))
585+
.color(0x052C50)
586+
.buildAndRegister();
587+
588+
BauxiteSludge = new Material.Builder(GTCEu.id("bauxite_sludge"))
589+
.fluid()
590+
.color(0x563D2D)
591+
.buildAndRegister();
592+
593+
DecalcifiedBauxiteSludge = new Material.Builder(GTCEu.id("decalcified_bauxite_sludge"))
594+
.fluid()
595+
.color(0x6F2DA8)
596+
.buildAndRegister();
597+
598+
BauxiteSlag = new Material.Builder(GTCEu.id("bauxite_slag"))
599+
.dust()
600+
.color(0x6F2DA8).iconSet(SAND)
601+
.buildAndRegister();
576602
}
577603
}

src/main/java/com/gregtechceu/gtceu/data/recipe/misc/MachineRecipeLoader.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1071,26 +1071,13 @@ private static void registerBlastFurnaceRecipes(Consumer<FinishedRecipe> provide
10711071
.outputItems(nugget, Aluminium, 3).blastFurnaceTemp(1200).save(provider);
10721072
BLAST_RECIPES.recipeBuilder("aluminium_from_sapphire_gem").duration(320).EUt(100).inputItems(gem, Sapphire)
10731073
.outputItems(nugget, Aluminium, 3).blastFurnaceTemp(1200).save(provider);
1074-
BLAST_RECIPES.recipeBuilder("titanium_from_tetrachloride").duration(800).EUt(VA[HV])
1075-
.inputItems(dust, Magnesium, 2).inputFluids(TitaniumTetrachloride.getFluid(1000))
1076-
.outputItems(ingotHot, Titanium).outputItems(dust, MagnesiumChloride, 6)
1077-
.blastFurnaceTemp(Titanium.getBlastTemperature() + 200).save(provider);
10781074
BLAST_RECIPES.recipeBuilder("steel_from_iron").duration(500).EUt(VA[MV]).inputItems(ingot, Iron)
10791075
.inputFluids(Oxygen.getFluid(200)).outputItems(ingot, Steel).chancedOutput(dust, Ash, "1/9", 0)
10801076
.blastFurnaceTemp(1000).save(provider);
10811077
BLAST_RECIPES.recipeBuilder("steel_from_wrought_iron").duration(300).EUt(VA[MV]).inputItems(ingot, WroughtIron)
10821078
.inputFluids(Oxygen.getFluid(200)).outputItems(ingot, Steel).chancedOutput(dust, Ash, "1/9", 0)
10831079
.blastFurnaceTemp(1000).save(provider);
10841080

1085-
BLAST_RECIPES.recipeBuilder("rutile_from_ilmenite")
1086-
.inputItems(dust, Ilmenite, 10)
1087-
.inputItems(dust, Carbon, 4)
1088-
.outputItems(ingot, WroughtIron, 2)
1089-
.outputItems(dust, Rutile, 4)
1090-
.outputFluids(CarbonDioxide.getFluid(2000))
1091-
.blastFurnaceTemp(1700)
1092-
.duration(1600).EUt(VA[HV]).save(provider);
1093-
10941081
BLAST_RECIPES.recipeBuilder("tempered_glass_blasting")
10951082
.inputItems(block, Glass)
10961083
.inputFluids(Oxygen.getFluid(100))

src/main/java/com/gregtechceu/gtceu/data/recipe/serialized/chemistry/ChemistryRecipes.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ public static void init(Consumer<FinishedRecipe> provider) {
3434
ReactorRecipes.init(provider);
3535
SeparationRecipes.init(provider);
3636
AntidoteRecipes.init(provider);
37+
TitaniumRecipes.init(provider);
3738

3839
// A Few Random Recipes
3940
FLUID_HEATER_RECIPES.recipeBuilder("ethenone")

src/main/java/com/gregtechceu/gtceu/data/recipe/serialized/chemistry/ReactorRecipes.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -84,14 +84,6 @@ public static void init(Consumer<FinishedRecipe> provider) {
8484
.outputFluids(SiliconeRubber.getFluid(1296))
8585
.duration(600).EUt(VA[LV]).save(provider);
8686

87-
CHEMICAL_RECIPES.recipeBuilder("titanium_tetrachloride")
88-
.inputItems(dust, Carbon, 2)
89-
.inputItems(dust, Rutile)
90-
.inputFluids(Chlorine.getFluid(4000))
91-
.outputFluids(CarbonMonoxide.getFluid(2000))
92-
.outputFluids(TitaniumTetrachloride.getFluid(1000))
93-
.duration(400).EUt(VA[HV]).save(provider);
94-
9587
CHEMICAL_RECIPES.recipeBuilder("polydimethylsiloxane_from_dimethyldichlorosilane")
9688
.inputFluids(Dimethyldichlorosilane.getFluid(1000))
9789
.inputFluids(Water.getFluid(1000))
@@ -553,13 +545,6 @@ public static void init(Consumer<FinishedRecipe> provider) {
553545
.outputItems(dust, Magnesite, 5)
554546
.duration(80).EUt(VA[LV]).save(provider);
555547

556-
CHEMICAL_RECIPES.recipeBuilder("quicklime_from_calcite")
557-
.circuitMeta(1)
558-
.inputItems(dust, Calcite, 5)
559-
.outputItems(dust, Quicklime, 2)
560-
.outputFluids(CarbonDioxide.getFluid(1000))
561-
.duration(240).EUt(VA[LV]).save(provider);
562-
563548
CHEMICAL_RECIPES.recipeBuilder("magnesia_from_magnesite")
564549
.inputItems(dust, Magnesite, 5)
565550
.outputItems(dust, Magnesia, 2)
Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
package com.gregtechceu.gtceu.data.recipe.serialized.chemistry;
2+
3+
import net.minecraft.data.recipes.FinishedRecipe;
4+
5+
import java.util.function.Consumer;
6+
7+
import static com.gregtechceu.gtceu.api.GTValues.*;
8+
import static com.gregtechceu.gtceu.api.data.tag.TagPrefix.*;
9+
import static com.gregtechceu.gtceu.common.data.GTMaterials.*;
10+
import static com.gregtechceu.gtceu.common.data.GTRecipeTypes.*;
11+
12+
public class TitaniumRecipes {
13+
14+
private TitaniumRecipes() {}
15+
16+
public static void init(Consumer<FinishedRecipe> provider) {
17+
titaniumProcess(provider);
18+
solvayProcess(provider);
19+
bauxiteProcess(provider);
20+
ilmeniteProcess(provider);
21+
}
22+
23+
private static void titaniumProcess(Consumer<FinishedRecipe> provider) {
24+
// Rutile extraction from Ilmenite
25+
// FeTiO3 + C -> Fe + TiO2 + CO
26+
BLAST_RECIPES.recipeBuilder("rutile_from_ilmenite")
27+
.inputItems(dust, Ilmenite, 5)
28+
.inputItems(dust, Carbon)
29+
.outputItems(ingot, WroughtIron)
30+
.outputItems(dust, Rutile, 3)
31+
.outputFluids(CarbonDioxide.getFluid(1000))
32+
.blastFurnaceTemp(1700)
33+
.duration(1600).EUt(VA[HV]).save(provider);
34+
35+
// Chloride Process
36+
// TiO2 + 2C + 4Cl -> TiCl4 + 2CO
37+
CHEMICAL_RECIPES.recipeBuilder("titanium_tetrachloride")
38+
.inputItems(dust, Carbon, 2)
39+
.inputItems(dust, Rutile)
40+
.inputFluids(Chlorine.getFluid(4000))
41+
.outputFluids(CarbonMonoxide.getFluid(2000))
42+
.outputFluids(TitaniumTetrachloride.getFluid(1000))
43+
.duration(400).EUt(VA[HV]).save(provider);
44+
45+
// Kroll Process
46+
// TiCl4 + 2Mg -> Ti + 2MgCl2
47+
BLAST_RECIPES.recipeBuilder("titanium_from_tetrachloride")
48+
.inputItems(dust, Magnesium, 2)
49+
.inputFluids(TitaniumTetrachloride.getFluid(1000))
50+
.outputItems(ingotHot, Titanium)
51+
.outputItems(dust, MagnesiumChloride, 6)
52+
.blastFurnaceTemp(Titanium.getBlastTemperature() + 200)
53+
.duration(800).EUt(VA[HV]).save(provider);
54+
55+
CHEMICAL_RECIPES.recipeBuilder("salt_from_magnesium_chloride")
56+
.inputItems(dust, MagnesiumChloride, 3)
57+
.inputItems(dust, Sodium, 2)
58+
.outputItems(dust, Magnesium, 1)
59+
.outputItems(dust, Salt, 4)
60+
.duration(200).EUt(VA[HV]).save(provider);
61+
}
62+
63+
private static void solvayProcess(Consumer<FinishedRecipe> provider) {
64+
// CaCO3 -> CaO + CO2
65+
CHEMICAL_RECIPES.recipeBuilder("quicklime_from_calcite")
66+
.circuitMeta(1)
67+
.inputItems(dust, Calcite, 5)
68+
.outputItems(dust, Quicklime, 2)
69+
.outputFluids(CarbonDioxide.getFluid(1000))
70+
.duration(200).EUt(VA[LV]).save(provider);
71+
72+
// NaCl(H2O) + CO2 + NH3 -> NH4Cl + NaHCO3
73+
CHEMICAL_RECIPES.recipeBuilder("sodium_bicarbonate_from_salt")
74+
.inputItems(dust, Salt, 4)
75+
.inputFluids(CarbonDioxide.getFluid(1000))
76+
.inputFluids(Ammonia.getFluid(1000))
77+
.inputFluids(Water.getFluid(1000))
78+
.outputItems(dust, AmmoniumChloride, 2)
79+
.outputItems(dust, SodiumBicarbonate, 6)
80+
.duration(400).EUt(VA[MV]).save(provider);
81+
82+
// 2NaHCO3 -> Na2CO3 + CO2 + H2O
83+
ELECTROLYZER_RECIPES.recipeBuilder("soda_ash_from_bicarbonate")
84+
.inputItems(dust, SodiumBicarbonate, 12)
85+
.outputItems(dust, SodaAsh, 6)
86+
.outputFluids(CarbonDioxide.getFluid(1000))
87+
.outputFluids(Water.getFluid(1000))
88+
.duration(200).EUt(VA[MV]).save(provider);
89+
90+
// 2NH4Cl + CaO -> CaCl2 + 2NH3 + H2O
91+
CHEMICAL_RECIPES.recipeBuilder("calcium_chloride_from_quicklime")
92+
.inputItems(dust, AmmoniumChloride, 4)
93+
.inputItems(dust, Quicklime, 2)
94+
.outputItems(dust, CalciumChloride, 3)
95+
.outputFluids(Ammonia.getFluid(2000))
96+
.outputFluids(Water.getFluid(1000))
97+
.duration(200).EUt(VA[MV]).save(provider);
98+
}
99+
100+
private static void bauxiteProcess(Consumer<FinishedRecipe> provider) {
101+
// Bauxite (crushed) + Soda Ash + Calcium Chloride -> Bauxite Slurry
102+
MIXER_RECIPES.recipeBuilder("bauxite_slurry_from_crushed_bauxite")
103+
.inputItems(crushed, Bauxite, 32)
104+
.inputItems(dust, SodaAsh, 12)
105+
.inputItems(dust, CalciumChloride, 6)
106+
.inputFluids(Water.getFluid(1000))
107+
.outputFluids(BauxiteSlurry.getFluid(4000))
108+
.duration(500).EUt(VA[HV]).save(provider);
109+
110+
// Bauxite (washed) + Soda Ash + Calcium Chloride -> Bauxite Slurry
111+
MIXER_RECIPES.recipeBuilder("bauxite_slurry_from_washed_bauxite")
112+
.inputItems(crushedPurified, Bauxite, 32)
113+
.inputItems(dust, SodaAsh, 12)
114+
.inputItems(dust, CalciumChloride, 6)
115+
.inputFluids(Water.getFluid(1000))
116+
.outputFluids(BauxiteSlurry.getFluid(4000))
117+
.duration(500).EUt(VA[HV]).save(provider);
118+
119+
// Bauxite Slurry -> Cracked Bauxite Slurry
120+
CRACKING_RECIPES.recipeBuilder("cracked_bauxite_slurry")
121+
.circuitMeta(1)
122+
.inputFluids(BauxiteSlurry.getFluid(16000))
123+
.inputFluids(Steam.getFluid(1000))
124+
.outputFluids(CrackedBauxiteSlurry.getFluid(16000))
125+
.duration(500).EUt(VA[HV]).save(provider);
126+
127+
// Bauxite Slurry + Sulfuric -> Aluminium, Slag, Sludge, and SO3 (for looping back to Sulfuric Acid)
128+
LARGE_CHEMICAL_RECIPES.recipeBuilder("bauxite_sludge_from_slurry")
129+
.inputFluids(CrackedBauxiteSlurry.getFluid(4000))
130+
.inputFluids(SulfuricAcid.getFluid(1000))
131+
.outputItems(dust, Aluminium, 24)
132+
.outputItems(dust, BauxiteSlag, 8)
133+
.outputFluids(BauxiteSludge.getFluid(2500))
134+
.outputFluids(SulfurTrioxide.getFluid(1000))
135+
.duration(500).EUt(VA[HV]).save(provider);
136+
137+
// Bauxite Slag -> Salt (looped) + Nd + Cr (byproducts)
138+
ELECTROMAGNETIC_SEPARATOR_RECIPES.recipeBuilder("bauxite_slag_separation")
139+
.inputItems(dust, BauxiteSlag)
140+
.outputItems(dust, Salt)
141+
.chancedOutput(dust, Neodymium, 2000, 250)
142+
.chancedOutput(dust, Chromium, 1000, 250)
143+
.duration(50).EUt(VA[MV]).save(provider);
144+
145+
// Bauxite Sludge -> Calcite (looped) + Decalcified Bauxite Sludge
146+
DISTILLERY_RECIPES.recipeBuilder("bauxite_sludge_decalcification")
147+
.circuitMeta(1)
148+
.inputFluids(BauxiteSludge.getFluid(500))
149+
.outputItems(dust, Calcite, 2)
150+
.outputFluids(DecalcifiedBauxiteSludge.getFluid(500))
151+
.duration(100).EUt(VA[MV]).save(provider);
152+
153+
// Decalcified Bauxite Sludge -> Rutile, Gallium, SiO2, Iron, Water
154+
CENTRIFUGE_RECIPES.recipeBuilder("bauxite_sludge_centrifuge")
155+
.inputFluids(DecalcifiedBauxiteSludge.getFluid(250))
156+
.outputItems(dust, Rutile, 2)
157+
.chancedOutput(dust, Gallium, 5000, 550)
158+
.chancedOutput(dust, Gallium, 3000, 800)
159+
.chancedOutput(dust, Gallium, 1000, 1000)
160+
.chancedOutput(dust, SiliconDioxide, 9000, 250)
161+
.chancedOutput(dust, Iron, 8000, 250)
162+
.outputFluids(Water.getFluid(250))
163+
.duration(100).EUt(VA[MV]).save(provider);
164+
}
165+
166+
private static void ilmeniteProcess(Consumer<FinishedRecipe> provider) {
167+
// Byproduct separation for Ilmenite
168+
ELECTROMAGNETIC_SEPARATOR_RECIPES.recipeBuilder("ilmenite_separation")
169+
.inputItems(dust, IlmeniteSlag)
170+
.chancedOutput(dust, Iron, 8000, 0)
171+
.chancedOutput(dust, Tantalum, 2000, 0)
172+
.chancedOutput(dust, Niobium, 500, 0)
173+
.duration(50).EUt(VA[MV]).save(provider);
174+
}
175+
}

0 commit comments

Comments
 (0)