aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorNxer <306803661@qq.com>2023-09-24 15:13:29 +0800
committerNxer <306803661@qq.com>2023-09-24 15:13:29 +0800
commit8ec21cd915f7b7ba1b6dca702aabb3375ae71685 (patch)
tree0118dea28aeb2345ecc22ef2a29442b10d7c8b23 /src/main/java
parentecbd2c8a97f3ce14af7e8672a3e2f28ef26ee24f (diff)
downloadGT5-Unofficial-8ec21cd915f7b7ba1b6dca702aabb3375ae71685.tar.gz
GT5-Unofficial-8ec21cd915f7b7ba1b6dca702aabb3375ae71685.tar.bz2
GT5-Unofficial-8ec21cd915f7b7ba1b6dca702aabb3375ae71685.zip
Sm part and UV Ion Extracting and LuAG
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java444
-rw-r--r--src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java1076
2 files changed, 1514 insertions, 6 deletions
diff --git a/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java b/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java
index 3b9f63b020..56e6f57aea 100644
--- a/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java
+++ b/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java
@@ -16,6 +16,8 @@ public class WerkstoffMaterialPool implements Runnable {
private static final int offsetID = 11_000;
private static final int offsetID2 = 11_100;
private static final int offsetID3 = 11_300;
+ private static final int offsetID4 = 11_400;
+ private static final int offsetID5 = 11_440;
/*
* public static final Werkstoff __ = new Werkstoff( new short[] {_, _, _}, "__", new Werkstoff.Stats(),
@@ -947,6 +949,448 @@ public class WerkstoffMaterialPool implements Runnable {
offsetID3 + 16,
TextureSet.SET_FLUID);
+ // TODO Samarium Processing Line Material regist
+
+ public static final Werkstoff MuddySamariumRareEarthSolution = new Werkstoff(
+ new short[] { 226, 180, 108 },
+ "Muddy Samarium Rare Earth Solution",
+ subscriptNumbers("???Sm???"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID5 + 1,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff SamariumRareEarthMud = new Werkstoff(
+ new short[] { 226, 180, 128 },
+ "Samarium Rare Earth Mud",
+ subscriptNumbers("??Sm??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID5 + 2,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff DilutedSamariumRareEarthSolution = new Werkstoff(
+ new short[] { 226, 180, 148 },
+ "Diluted Samarium Rare Earth Solution",
+ subscriptNumbers("?Sm?"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID5 + 3,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff ImpureSamariumOxalate = new Werkstoff(
+ new short[] { 248, 248, 180 },
+ "Samarium Oxalate Enriched",
+ subscriptNumbers("?Sm2(C2O4)3"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID5 + 4,
+ TextureSet.SET_DULL);
+
+ public static final Werkstoff ImpureSamariumChloride = new Werkstoff(
+ new short[] { 248, 248, 120 },
+ "Impure Samarium Chloride",
+ subscriptNumbers("?SmCl3"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust().addMolten(),
+ offsetID5 + 5,
+ TextureSet.SET_DULL);
+
+ public static final Werkstoff SamariumChlorideSodiumChlorideBlend = new Werkstoff(
+ new short[] { 255, 200, 230 },
+ "Samarium Chloride-Sodium Chloride Blend",
+ subscriptNumbers("?SmCl3NaCl"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID5 + 6,
+ TextureSet.SET_DULL);
+
+ public static final Werkstoff ImpureLanthanumChloride = new Werkstoff(
+ new short[] { 90, 100, 30 },
+ "Impure Lanthanum Chloride",
+ subscriptNumbers("?LaCl3"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID5 + 7,
+ TextureSet.SET_DULL);
+
+ public static final Werkstoff SamariumOxide = new Werkstoff(
+ new short[] { 223, 182, 193 },
+ "Samarium Oxide",
+ subscriptNumbers("Sm2O3"),
+ new Werkstoff.Stats().setElektrolysis(true),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID5 + 8,
+ TextureSet.SET_DULL,
+ Arrays.asList(Materials.Samarium, Materials.Oxygen),
+ new Pair<>(Materials.Samarium, 2),
+ new Pair<>(Materials.Oxygen, 3));
+
+ public static final Werkstoff SamariumChlorideConcentrate = new Werkstoff(
+ new short[] { 60, 110, 110 },
+ "Samarium Chloride Concentrate",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID5 + 9,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff ChlorinatedRareEarthConcentrate = new Werkstoff(
+ new short[] { 130, 80, 60 },
+ "Chlorinated Rare Earth Concentrate",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID5 + 10,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff ChlorinatedRareEarthEnrichedSolution = new Werkstoff(
+ new short[] { 130, 90, 60 },
+ "Chlorinated Rare Earth Enriched Solution",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID5 + 11,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff ChlorinatedRareEarthDilutedSolution = new Werkstoff(
+ new short[] { 216, 180, 100 },
+ "Chlorinated Rare Earth Diluted Solution",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID5 + 12,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff RarestEarthResidue = new Werkstoff(
+ new short[] { 224, 211, 211 },
+ "Rarest Earth Residue",
+ subscriptNumbers("???"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID5 + 13,
+ TextureSet.SET_DULL);
+
+ // TODO reg Lanth Ore Concentrate
+ /**
+ * Extracted Nano Resin Lanthanum1.2 Praseodymium3.4 Cerium5.6 Neodymium7.8 Promethium9.10 Samarium11.12 √
+ * Europium13.14 Gadolinium15.16 Terbium17.18 Dysprosium19.20 Holmium21.22 Erbium23.24 Thulium25.26 Ytterbium27.28
+ * Lutetium29.30
+ */
+
+ public static final Werkstoff LanthanumExtractingNanoResin = new Werkstoff(
+ new short[] { 50, 80, 40 },
+ "Lanthanum Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 1,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledLanthanumExtractingNanoResin = new Werkstoff(
+ new short[] { 128, 128, 80 },
+ "Filled Lanthanum Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 2,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff PraseodymiumExtractingNanoResin = new Werkstoff(
+ new short[] { 80, 192, 130 },
+ "Praseodymium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 3,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledPraseodymiumExtractingNanoResin = new Werkstoff(
+ new short[] { 140, 192, 130 },
+ "Filled Praseodymium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 4,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff CeriumExtractingNanoResin = new Werkstoff(
+ new short[] { 80, 240, 160 },
+ "Cerium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 5,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledCeriumExtractingNanoResin = new Werkstoff(
+ new short[] { 160, 240, 180 },
+ "Filled Cerium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 6,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff NeodymiumExtractingNanoResin = new Werkstoff(
+ new short[] { 128, 140, 128 },
+ "Neodymium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 7,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledNeodymiumExtractingNanoResin = new Werkstoff(
+ new short[] { 150, 175, 150 },
+ "Filled Neodymium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 8,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff PromethiumExtractingNanoResin = new Werkstoff(
+ new short[] { 110, 255, 60 },
+ "Promethium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 9,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledPromethiumExtractingNanoResin = new Werkstoff(
+ new short[] { 150, 255, 140 },
+ "Filled Promethium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 10,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff SamariumExtractingNanoResin = new Werkstoff(
+ new short[] { 255, 240, 100 },
+ "Samarium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 11,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledSamariumExtractingNanoResin = new Werkstoff(
+ new short[] { 255, 240, 196 },
+ "Filled Samarium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 12,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff EuropiumExtractingNanoResin = new Werkstoff(
+ new short[] { 240, 160, 240 },
+ "Europium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 13,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledEuropiumExtractingNanoResin = new Werkstoff(
+ new short[] { 240, 200, 240 },
+ "Filled Europium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 14,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff GadoliniumExtractingNanoResin = new Werkstoff(
+ new short[] { 120, 255, 80 },
+ "Gadolinium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 15,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledGadoliniumExtractingNanoResin = new Werkstoff(
+ new short[] { 160, 255, 140 },
+ "Filled Gadolinium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 16,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff TerbiumExtractingNanoResin = new Werkstoff(
+ new short[] { 200, 200, 200 },
+ "Terbium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 17,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledTerbiumExtractingNanoResin = new Werkstoff(
+ new short[] { 255, 255, 255 },
+ "Filled Terbium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 18,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff DysprosiumExtractingNanoResin = new Werkstoff(
+ new short[] { 110, 240, 180 },
+ "Dysprosium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 19,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledDysprosiumExtractingNanoResin = new Werkstoff(
+ new short[] { 150, 240, 180 },
+ "Filled Dysprosium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 20,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff HolmiumExtractingNanoResin = new Werkstoff(
+ new short[] { 16, 16, 216 },
+ "Holmium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 21,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledHolmiumExtractingNanoResin = new Werkstoff(
+ new short[] { 60, 90, 255 },
+ "Filled Holmium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 22,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff ErbiumExtractingNanoResin = new Werkstoff(
+ new short[] { 200, 160, 80 },
+ "Erbium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 23,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledErbiumExtractingNanoResin = new Werkstoff(
+ new short[] { 233, 170, 100 },
+ "Filled Erbium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 24,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff ThuliumExtractingNanoResin = new Werkstoff(
+ new short[] { 128, 178, 255 },
+ "Thulium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 25,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledThuliumExtractingNanoResin = new Werkstoff(
+ new short[] { 160, 200, 255 },
+ "Filled Thulium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 26,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff YtterbiumExtractingNanoResin = new Werkstoff(
+ new short[] { 0, 255, 0 },
+ "Ytterbium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 27,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledYtterbiumExtractingNanoResin = new Werkstoff(
+ new short[] { 100, 255, 100 },
+ "Filled Ytterbium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 28,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff LutetiumExtractingNanoResin = new Werkstoff(
+ new short[] { 230, 16, 230 },
+ "Lutetium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 29,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff FilledLutetiumExtractingNanoResin = new Werkstoff(
+ new short[] { 240, 100, 240 },
+ "Filled Lutetium Extracting Nano Resin",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID4 + 30,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff CeriumDopedLutetiumAluminiumOxygenBlend = new Werkstoff(
+ new short[] { 0, 200, 0 },
+ "Cerium-doped Lutetium Aluminium Oxygen Blend",
+ subscriptNumbers("Lu3Al5O12"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID4 + 31,
+ TextureSet.SET_DULL);
+
+ public static final Werkstoff CeriumDopedLutetiumAluminiumGarnet = new Werkstoff(
+ new short[] { 0, 255, 0 },
+ "Cerium-doped Lutetium Aluminium Garnet (Ce:LuAG)",
+ subscriptNumbers("Lu3Al5O12"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MATERIAL,
+ new Werkstoff.GenerationFeatures().disable().addGems(),
+ offsetID4 + 32,
+ TextureSet.SET_GEM_HORIZONTAL);
+
+ // public static final Werkstoff C272 = new Werkstoff(
+ // new short[] { 0x29, 0xc2, 0x2a },
+ // "C-272",
+ // subscriptNumbers("(C8H17)2PO2H"),
+ // new Werkstoff.Stats().setElektrolysis(true),
+ // Werkstoff.Types.COMPOUND,
+ // new Werkstoff.GenerationFeatures().disable().addCells(),
+ // offsetID4 + 59,
+ // TextureSet.SET_FLUID,
+ // new Pair<>(Carbon, 16),
+ // new Pair<>(Phosphorus, 1),
+ // new Pair<>(Oxygen, 3),
+ // new Pair<>(Hydrogen, 35));
+
public static void runInit() {
addSubTags();
diff --git a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java
index 102a16e6c7..381dd811a1 100644
--- a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java
+++ b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java
@@ -1,6 +1,8 @@
package com.elisis.gtnhlanth.loader;
+import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.*;
import static gregtech.common.items.GT_MetaGenerated_Item_01.registerCauldronCleaningFor;
+import static net.minecraft.item.Item.getIdFromItem;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
@@ -8,7 +10,9 @@ import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.HashSet;
+import java.util.Iterator;
+import com.github.bartimaeusnek.bartworks.system.material.Werkstoff;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.item.crafting.IRecipe;
@@ -29,11 +33,9 @@ import com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement.Platinu
import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader;
import cpw.mods.fml.common.Loader;
+import cpw.mods.fml.common.registry.GameRegistry;
import goodgenerator.items.MyMaterial;
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.ItemList;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.*;
import gregtech.api.util.GTPP_Recipe;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_ModHandler;
@@ -631,13 +633,13 @@ public class RecipeLoader {
600,
1920);
- // 5Eu2O3 + Eu = 4EuO
+ // 5Eu2O3 + Eu = 4EuO // -> 6EuO
GT_Values.RA.addChemicalRecipe(
WerkstoffMaterialPool.EuropiumIIIOxide.get(OrePrefixes.dust, 5),
Materials.Europium.getDust(1),
null,
null,
- WerkstoffMaterialPool.EuropiumOxide.get(OrePrefixes.dust, 4),
+ WerkstoffMaterialPool.EuropiumOxide.get(OrePrefixes.dust, 6),
300,
8400);
@@ -978,6 +980,924 @@ public class RecipeLoader {
new int[] { 9000, 8000, 10000 },
200,
1920);
+
+ // TODO UV Tier Ion Extracting Method
+
+ // Samarium Part
+
+ // Digester to produce Samarium Chloride Concentrate
+ RecipeAdder.instance.DigesterRecipes.addDigesterRecipe(
+ new FluidStack[] { Materials.Chlorine.getGas(36000) },
+ new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Samarium, 1) },
+ SamariumChlorideConcentrate.getFluidOrGas(3000),
+ new ItemStack[] { Materials.SiliconDioxide.getDust(3) },
+ 114514,
+ 40,
+ 800);
+ RecipeAdder.instance.DigesterRecipes.addDigesterRecipe(
+ new FluidStack[] { Materials.Chlorine.getGas(12000) },
+ new ItemStack[] { SamariumOreConcentrate.get(OrePrefixes.dust, 1) },
+ SamariumChlorideConcentrate.getFluidOrGas(1000),
+ new ItemStack[] { Materials.SiliconDioxide.getDust(1) },
+ 114514,
+ 40,
+ 800);
+
+ // 1B oreChlorideConcentrate = 1 ore's rare earth metal + 3 any rare earth metal
+ GT_Values.RA.stdBuilder().noItemInputs()
+ .fluidInputs(
+ SamariumExtractingNanoResin.getFluidOrGas(1000),
+ SamariumChlorideConcentrate.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ FilledSamariumExtractingNanoResin.getFluidOrGas(1000),
+ ChlorinatedRareEarthConcentrate.getFluidOrGas(1000))
+ .eut(491520).duration(20).addTo(GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes);
+
+ // Ion Extracting Process to produce Rare Earth Element (example Samarium) by Nano Resin
+ // Get Extracting Nano Resin
+
+ // Lanthanum
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Lanthanum.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(LanthanumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Praseodymium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Praseodymium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(PraseodymiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Cerium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Cerium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(CeriumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Neodymium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Neodymium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(NeodymiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Promethium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Promethium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(PromethiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Sm
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Samarium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(SamariumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Europium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Europium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(EuropiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Gadolinium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Gadolinium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(GadoliniumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Terbium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Terbium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(TerbiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Dysprosium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Dysprosium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(DysprosiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Holmium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Holmium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(HolmiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Erbium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Erbium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(ErbiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Thulium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Thulium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(ThuliumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Ytterbium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Ytterbium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(YtterbiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // Lutetium
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_ModHandler.getModItem("dreamcraft", "item.MysteriousCrystalLens", 0),
+ Materials.Lutetium.getDust(1),
+ Materials.Carbon.getNanite(1))
+ .fluidInputs(MyMaterial.P507.getFluidOrGas(4000)).noItemOutputs()
+ .fluidOutputs(LutetiumExtractingNanoResin.getFluidOrGas(1000)).eut(491520).duration(228)
+ .addTo(GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes);
+
+ // TODO Electrolyzer recycle Nano Resin and produce molten rare earth metal,
+
+ // La
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledLanthanumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ LanthanumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Lanthanum.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Pr
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledPraseodymiumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ PraseodymiumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Praseodymium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Ce
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledCeriumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ CeriumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Cerium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Nd
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledNeodymiumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ NeodymiumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Neodymium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Po
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledPromethiumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ PromethiumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Promethium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Sm
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledSamariumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ SamariumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Samarium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Eu
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledEuropiumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ EuropiumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Europium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Ga
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledGadoliniumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ GadoliniumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Gadolinium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Tb
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledTerbiumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ TerbiumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Terbium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Dy
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledDysprosiumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ DysprosiumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Dysprosium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Ho
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledHolmiumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ HolmiumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Holmium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Er
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledErbiumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ ErbiumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Erbium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(100).noOptimize().addTo(GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes);
+
+ // Tm
+ GT_Values.RA.stdBuilder().noItemInputs().fluidInputs(FilledThuliumExtractingNanoResin.getFluidOrGas(1000))
+ .noItemOutputs()
+ .fluidOutputs(
+ ThuliumExtractingNanoResin.getFluidOrGas(1000),
+ Materials.Thulium.getMolten(144),
+ Materials.Chlorine.getGas(3000))
+ .eut(114514).duration(1