diff options
8 files changed, 1792 insertions, 115 deletions
diff --git a/dependencies.gradle b/dependencies.gradle index b1229651d8..5d047bd3be 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -6,7 +6,7 @@ dependencies { compile("com.github.GTNewHorizons:StructureLib:1.0.14:dev") compile("net.industrial-craft:industrialcraft-2:2.2.828-experimental:dev") - compile("com.github.GTNewHorizons:NotEnoughItems:2.1.22-GTNH:dev") + compile("com.github.GTNewHorizons:NotEnoughItems:2.2.3-GTNH:dev") compileOnly("com.github.GTNewHorizons:EnderCore:0.2.6:dev") { transitive = false } @@ -38,6 +38,8 @@ dependencies { compile("com.github.GTNewHorizons:CodeChickenLib:1.1.5.1:dev") compile("com.github.GTNewHorizons:CodeChickenCore:1.1.3:dev") + + //compile files('Botdustries-1.7.10-1.0.1.jar') runtime("com.github.GTNewHorizons:Baubles:1.0.1.14:dev") runtime("com.github.GTNewHorizons:Yamcl:0.5.82:dev") diff --git a/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java b/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java index 5e900fdf55..daec5c0aed 100644 --- a/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java +++ b/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java @@ -3,10 +3,13 @@ package com.elisis.gtnhlanth; import java.util.logging.Logger;
import com.elisis.gtnhlanth.common.CommonProxy;
+import com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool;
import com.elisis.gtnhlanth.common.register.ItemList;
import com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool;
+import com.elisis.gtnhlanth.loader.BotRecipes;
import com.elisis.gtnhlanth.loader.RecipeLoader;
import com.github.bartimaeusnek.bartworks.API.WerkstoffAdderRegistry;
+import com.github.bartimaeusnek.bartworks.system.material.Werkstoff;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
@@ -14,11 +17,15 @@ import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
+import gregtech.api.util.GT_Log;
+import net.minecraftforge.fluids.FluidRegistry;
+import scala.actors.threadpool.Arrays;
@Mod(modid = Tags.MODID, version = Tags.VERSION, name = Tags.MODNAME,
dependencies = "required-after:IC2; " + "required-after:gregtech; "
+ "required-after:bartworks; "
+ "required-after:GoodGenerator; "
+ + "before:miscutils; "
)
public class GTNHLanthanides {
@@ -33,6 +40,7 @@ public class GTNHLanthanides { @EventHandler
public static void preInit(FMLPreInitializationEvent e) {
WerkstoffAdderRegistry.addWerkstoffAdder(new WerkstoffMaterialPool());
+ WerkstoffAdderRegistry.addWerkstoffAdder(new BotWerkstoffMaterialPool());
ItemList.register();
proxy.preInit(e);
}
@@ -46,7 +54,23 @@ public class GTNHLanthanides { public static void postInit(FMLPostInitializationEvent e) {
RecipeLoader.loadGeneral();
RecipeLoader.loadLanthanideRecipes();
+ RecipeLoader.addRandomChemCrafting();
+ BotRecipes.addGTRecipe();
+ BotRecipes.addFuels();
+ //RecipeLoader.loadZylonRecipes();
proxy.postInit(e);
+ //GT_Log.out.print(FluidRegistry.getFluid("Sodium Tungstate").getName());
+
+ GT_Log.out.print(Arrays.toString(Werkstoff.werkstoffNameHashMap.keySet().toArray()));
+ GT_Log.out.print(Arrays.toString(Werkstoff.werkstoffHashMap.keySet().toArray()));
+
+ }
+
+ @EventHandler
+ public static void onModLoadingComplete() {
+ GT_Log.out.print("AAAAAAAAAAAAAA");
+ GT_Log.out.print(FluidRegistry.getFluid("Sodium Tungstate").getName());
+ BotRecipes.removeRecipes();
}
diff --git a/src/main/java/com/elisis/gtnhlanth/common/register/BotWerkstoffMaterialPool.java b/src/main/java/com/elisis/gtnhlanth/common/register/BotWerkstoffMaterialPool.java new file mode 100644 index 0000000000..b6adfaf7f6 --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/common/register/BotWerkstoffMaterialPool.java @@ -0,0 +1,383 @@ +package com.elisis.gtnhlanth.common.register; + +import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; +import com.github.bartimaeusnek.bartworks.util.Pair; + +import static gregtech.api.enums.Materials.*; +import static gregtech.api.enums.TextureSet.*; + +import static com.github.bartimaeusnek.bartworks.system.material.Werkstoff.Types.*; + +@SuppressWarnings("unchecked") +public class BotWerkstoffMaterialPool implements Runnable { + + public static final Werkstoff TungsticAcid = new Werkstoff( + new short[]{0xf5, 0xf1, 0x16}, + "Tungstic Acid", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust().enforceUnification(), + 29900, + SET_SHINY, + new Pair<>(Hydrogen,2), + new Pair<>(Tungsten,1), + new Pair<>(Oxygen,4) + ); + public static final Werkstoff TungstenTrioxide = new Werkstoff( + new short[]{0x0f,0x5,0x16}, + "Tungsten Trioxide", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust().enforceUnification(), + 29901, + SET_SHINY, + new Pair<>(Tungsten, 1), + new Pair<>(Oxygen,3) + ); +// public static final Werkstoff TungstenSteelOxide = new Werkstoff( +// new short[]{0x1f,0x27,0x69}, +// "Tungstensteel Oxide", +// new Werkstoff.Stats(), +// COMPOUND, +// new Werkstoff.GenerationFeatures().onlyDust(), +// 29902, +// SET_FINE, +// new Pair<>(Tungsten, 1), +// new Pair<>(Oxygen,3), +// new Pair<>(Steel,1) +// ); + public static final Werkstoff AmmoniumNitrate = new Werkstoff( + new short[]{0x81,0xcc,0x00}, + "Ammonium nitrate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust(), + 29903, + SET_FINE, + new Pair<>(Nitrogen,1), + new Pair<>(Hydrogen,4), + new Pair<>(Nitrogen,1), + new Pair<>(Oxygen,3) + ); + public static final Werkstoff SodiumTungstate = new Werkstoff( + new short[]{0xc, 0xed, 0xd7,0}, + "Sodium Tungstate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29904, + SET_FINE + ); + public static final Werkstoff Phosgene = new Werkstoff( + new short[]{0x15,0xa1,0x1a}, + "Phosgene", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29905, + SET_FINE + ); + public static final Werkstoff Ethylchloroformate = new Werkstoff( + new short[]{0x0a,0xc2,0xcc}, + "Ethyl Chloroformate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29906, + SET_FINE + ); + public static final Werkstoff Ethylcarbamate = new Werkstoff( + new short[]{0x0d,0xa9,0xb8}, + "Ethyl Carbamate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29907, + SET_FINE + ); + public static final Werkstoff EthylNnitrocarbamate = new Werkstoff( + new short[]{0x0d,0x85,0xb8}, + "Ethyl N-nitrocarbamate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29908, + SET_FINE + ); + public static final Werkstoff AmmoniumNnitrourethane = new Werkstoff( + new short[]{0x0d,0x54,0xb8}, + "Ammonium N-nitrourethane", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29909, + SET_FINE + ); + public static final Werkstoff EthylDinitrocarbamate = new Werkstoff( + new short[]{0x39,0x08,0xc2}, + "Ethyl Dinitrocarbamate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29910, + SET_FINE + ); + public static final Werkstoff DinitrogenPentoxide = new Werkstoff( + new short[]{0xcf,0xeb,0x34}, + "Dinitrogen Pentoxide", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust(), + 29911, + SET_FINE + ); + public static final Werkstoff AmmoniumDinitramide = new Werkstoff( + new short[]{0x8a,0x0f,0xd1}, + "Ammonium Dinitramide", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29912, + SET_FINE + ); + public static final Werkstoff LMP103S = new Werkstoff( + new short[]{0xbf,0x2f,0xc2}, + "LMP-103S", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29913, + SET_FINE + ); + public static final Werkstoff OXylene = new Werkstoff( + new short[]{0x88,0x94,0xa8}, + "O-Xylene", + new Werkstoff.Stats().setGas(true), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29915, + SET_FINE + ); + public static final Werkstoff PhthalicAnhydride = new Werkstoff( + new short[]{0x7c,0x99,0x42}, + "Phthalic Anhydride", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust(), + 29916, + SET_METALLIC + ); + public static final Werkstoff VanadiumPentoxide = new Werkstoff( + new short[]{0x69,0x69,0x69}, + " Vanadium Pentoxide", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust(), + 29917, + SET_METALLIC + ); + public static final Werkstoff TertButylbenzene = new Werkstoff( + new short[]{0,0,0}, + "Tert-Butylbenzene", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29918, + SET_METALLIC + ); + public static final Werkstoff TwoTertButylAnthraquinone = new Werkstoff( + new short[]{0xcc,0x86,0x5a}, + "2-tert-butyl-anthraquinone", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29919, + SET_METALLIC + ); + public static final Werkstoff TwoTertButylAnthrahydroquinone = new Werkstoff( + new short[]{0xad,0x53,0x1a}, + "2-tert-butyl-anthrahydroquinone", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29920, + SET_METALLIC + ); + public static final Werkstoff HydrogenPeroxide = new Werkstoff( + new short[]{0xad,0x53,0x1a}, + "Hydrogen Peroxide", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells().enforceUnification(), + 29921, + SET_METALLIC + ); + public static final Werkstoff Hydrazine = new Werkstoff( + new short[]{0xb5,0x07,0x07}, + "hydrazine", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29922, + SET_METALLIC + ); + public static final Werkstoff DimethylSulfate = new Werkstoff( + new short[]{0xff,0xfb,0x00}, + "Dimethyl Sulfate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29923, + SET_METALLIC + ); + public static final Werkstoff Monomethylhydrazine = new Werkstoff( + new short[]{0xff,0x61,0x00}, + "Monomethylhydrazine", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29924, + SET_METALLIC + ); + public static final Werkstoff Formaldehyde = new Werkstoff( + new short[]{0x2e,0xd9,0x83}, + "Formaldehyde", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29925, + SET_METALLIC + ); + public static final Werkstoff EthylAcetate = new Werkstoff( + new short[]{0x0c,0xfb,0x32b}, + "Ethyl Acetate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29926, + SET_METALLIC + ); + public static final Werkstoff Acetylhydrazine = new Werkstoff( + new short[]{0xd1,0x5c,0x5c}, + "Acetylhydrazine", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29927, + SET_METALLIC + ); + public static final Werkstoff UnsymmetricalDimethylhydrazine = new Werkstoff( + new short[]{0x80,0x06,0x00}, + "Unsymmetrical Dimethylhydrazine", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29928, + SET_METALLIC + ); + public static final Werkstoff MonomethylhydrazineFuelMix = new Werkstoff( + new short[]{0x78,0xe3,0xa7}, + "Monomethylhydrazine Fuel Mix", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29929, + SET_METALLIC + ); + public static final Werkstoff UnsymmetricalDimethylhydrazineFuelMix = new Werkstoff( + new short[]{0xc8,0xff,0x00}, + "Unsymmetrical Dimethylhydrazine Fuel Mix", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29930, + SET_METALLIC + ); + public static final Werkstoff Nitromethane = new Werkstoff( + new short[]{0x87,0x7d,0x60}, + "Nitromethane", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29914, + SET_METALLIC + ); + public static final Werkstoff BoronTrioxide = new Werkstoff( + new short[]{0xe3,0xa6,0xd3}, + "Boron Trioxide", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust(), + 29931, + SET_METALLIC + ); + public static final Werkstoff BoronTrifluoride = new Werkstoff( + new short[]{0xd0,0xe0,0x3f}, + "Boron Trifluoride", + new Werkstoff.Stats().setGas(true), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29932, + SET_METALLIC + ); + public static final Werkstoff NitroniumTetrafluoroborate = new Werkstoff( + new short[]{0x57,0x69,0x2d}, + "Nitronium Tetrafluoroborate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust(), + 29933, + SET_METALLIC + ); + public static final Werkstoff Trinitramid = new Werkstoff( + new short[]{0x28,0x2b,0x70}, + "Trinitramid", + new Werkstoff.Stats().setGas(true), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29934, + SET_METALLIC + ); + public static final Werkstoff AmmoniaBoronfluorideSolution = new Werkstoff( + new short[]{0x28,0x2b,0x70}, + "Ammonia Boronfluoride Solution", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29935, + SET_METALLIC + ); + public static final Werkstoff SodiumTetrafluoroborate = new Werkstoff( + new short[]{0xbe,0x6e,0xe0}, + "Sodium Tetrafluoroborate", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29936, + SET_METALLIC + ); + public static final Werkstoff SodiumFluoride = new Werkstoff( + new short[]{0x9f,0x70,0xe6}, + "Sodium Fluoride", + new Werkstoff.Stats(), + COMPOUND, + new Werkstoff.GenerationFeatures().onlyDust(), + 29937, + SET_METALLIC + ); + public static final Werkstoff Tetrafluoroborate = new Werkstoff( + new short[]{0x6a,0x53,0x8c}, + "Tetrafluoroborate", + new Werkstoff.Stats().setGas(true), + COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 29938, + SET_METALLIC + ); + @Override + public void run() { + // TODO Auto-generated method stub + + } + +} 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 746bd86555..b48dc3f2b4 100644 --- a/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java +++ b/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java @@ -11,6 +11,20 @@ import gregtech.api.enums.TextureSet; public class WerkstoffMaterialPool implements Runnable {
private static final int offsetID = 11_000;
+ private static final int offsetID2 = 11_046;
+ private static final int offsetID3 = 11_300;
+
+ /*
+ * public static final Werkstoff __ = new Werkstoff(
+ new short[] {_, _, _},
+ "__",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable(),
+ offsetID_,
+ TextureSet.SET_DULL
+ );
+ */
//Misc.
public static final Werkstoff Hafnium = new Werkstoff(
@@ -153,16 +167,16 @@ public class WerkstoffMaterialPool implements Runnable { subscriptNumbers("I"),
new Werkstoff.Stats(),
Werkstoff.Types.COMPOUND,
- new Werkstoff.GenerationFeatures().disable().addCells().enforceUnification(),
+ new Werkstoff.GenerationFeatures().disable().onlyDust().addCells().enforceUnification(),
offsetID + 12,
TextureSet.SET_FLUID
);
//Lanthanide Line
- public static final Werkstoff MuddyRareEarthSolution = new Werkstoff(
+ public static final Werkstoff MuddyRareEarthMonaziteSolution = new Werkstoff(
new short[] {111, 78, 55},
- "Muddy Rare Earth Solution",
+ "Muddy Monazite Rare Earth Solution",
subscriptNumbers("??LaNdZr??"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -171,9 +185,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_FLUID
);
- public static final Werkstoff DilutedRareEarthMud = new Werkstoff(
+ public static final Werkstoff DilutedRareEarthMonaziteMud = new Werkstoff(
new short[] {160, 120, 90},
- "Diluted Rare Earth Mud",
+ "Diluted Monazite Rare Earth Mud",
subscriptNumbers("??LaNdHf??"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -193,9 +207,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_FLUID
);
- public static final Werkstoff NitratedRareEarthConcentrate = new Werkstoff(
+ public static final Werkstoff NitratedRareEarthMonaziteConcentrate = new Werkstoff(
new short[] {250, 223, 173},
- "Nitrated Rare Earth Concentrate",
+ "Nitrated Monazite Rare Earth Concentrate",
subscriptNumbers("??LaNd??"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -204,9 +218,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_FLUID
);
- public static final Werkstoff NitricLeachedConcentrate = new Werkstoff(
+ public static final Werkstoff NitricMonaziteLeachedConcentrate = new Werkstoff(
new short[] {244, 202, 22},
- "Nitric Leached Concentrate",
+ "Nitric Monazite Leached Concentrate",
subscriptNumbers("??LaNd??"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -237,9 +251,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
- public static final Werkstoff RareEarthFiltrate = new Werkstoff(
+ public static final Werkstoff MonaziteRareEarthFiltrate = new Werkstoff(
new short[] {72, 60, 50},
- "Rare Earth Filtrate",
+ "Monazite Rare Earth Filtrate",
subscriptNumbers("????"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -248,9 +262,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
- public static final Werkstoff NeutralizedRareEarthFiltrate = new Werkstoff(
+ public static final Werkstoff NeutralizedMonaziteRareEarthFiltrate = new Werkstoff(
new short[] {50, 23, 77},
- "Neutralized Rare Earth Filtrate",
+ "Neutralized Monazite Rare Earth Filtrate",
subscriptNumbers("????"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -259,9 +273,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
- public static final Werkstoff RareEarthHydroxideConcentrate = new Werkstoff(
+ public static final Werkstoff MonaziteRareEarthHydroxideConcentrate = new Werkstoff(
new short[] {193, 154, 107},
- "Rare Earth Hydroxide Concentrate",
+ "Monazite Rare Earth Hydroxide Concentrate",
subscriptNumbers("????"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -270,9 +284,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
- public static final Werkstoff DriedRareEarthConcentrate = new Werkstoff(
+ public static final Werkstoff DriedMonaziteRareEarthConcentrate = new Werkstoff(
new short[] {250, 214, 165},
- "Dried Rare Earth Concentrate",
+ "Dried Monazite Rare Earth Concentrate",
subscriptNumbers("????"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -336,9 +350,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
- public static final Werkstoff CooledRareEarthConcentrate = new Werkstoff(
+ public static final Werkstoff CooledMonaziteRareEarthConcentrate = new Werkstoff(
new short[] {250, 214, 165},
- "Cooled Rare Earth Concentrate",
+ "Cooled Monazite Rare Earth Concentrate",
subscriptNumbers("????"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -347,9 +361,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
- public static final Werkstoff RarerEarthSediment = new Werkstoff(
+ public static final Werkstoff MonaziteRarerEarthSediment = new Werkstoff(
new short[] {250, 214, 165},
- "Rarer Earth Sediment",
+ "MonaziteRarer Earth Sediment",
subscriptNumbers("????"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -358,9 +372,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
- public static final Werkstoff HeterogenousHalogenicRareEarthMixture = new Werkstoff(
+ public static final Werkstoff MonaziteHeterogenousHalogenicRareEarthMixture = new Werkstoff(
new short[] {250, 214, 165},
- "Heterogenous Halogenic Rare Earth Mixture",
+ "Heterogenous Halogenic Monazite Rare Earth Mixture",
subscriptNumbers("????"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -369,9 +383,9 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
- public static final Werkstoff SaturatedRareEarthMixture = new Werkstoff(
+ public static final Werkstoff SaturatedMonaziteRareEarthMixture = new Werkstoff(
new short[] {250, 214, 165},
- "Saturated Rare Earth Mixture",
+ "Saturated Monazite Rare Earth Mixture",
subscriptNumbers("????"),
new Werkstoff.Stats(),
Werkstoff.Types.MIXTURE,
@@ -404,7 +418,7 @@ public class WerkstoffMaterialPool implements Runnable { public static final Werkstoff AmmoniumNitrate = new Werkstoff(
new short[] {255, 255, 255},
- "Ammonium Nitrate",
+ "Ammonium Nitrate Solution",
subscriptNumbers("NH4NO3"),
new Werkstoff.Stats(),
Werkstoff.Types.COMPOUND,
@@ -457,8 +471,355 @@ public class WerkstoffMaterialPool implements Runnable { TextureSet.SET_DULL
);
-
-
+ public static final Werkstoff SeaweedAsh = new Werkstoff(
+ new short[] {70, 75, 71},
+ "Seaweed Ash",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.BIOLOGICAL,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID + 41,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff SeaweedConcentrate = new Werkstoff(
+ new short[] {70, 100, 71},
+ "Seaweed Concentrate",
+ subscriptNumbers("??I??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.BIOLOGICAL,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID + 42,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff PotassiumPermanganate = new Werkstoff(
+ new short[] {165, 50, 138},
+ "Potassium Permanganate",
+ subscriptNumbers("KMnO4"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID + 43,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff SeaweedByproducts = new Werkstoff(
+ new short[] {125, 50, 138},
+ "Seaweed Byproducts",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID + 44,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff NitricLeachedMonaziteMixture = new Werkstoff(
+ new short[] {125, 50, 138},
+ "Nitric-Leached Monazite Mixture",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID + 45,
+ TextureSet.SET_FLUID
+ );
+
+
+
+
+
+ // BASTNASITE
+ public static final Werkstoff MuddyRareEarthBastnasiteSolution = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Muddy Bastnasite Rare Earth Solution",
+ subscriptNumbers("??LaCeY??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID2,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff FluorosilicicAcid = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Hexafluorosilicic Acid",
+ subscriptNumbers("H2SiF6"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID2 + 1,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff SodiumFluorosilicate = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Sodiumfluorosilicate",
+ subscriptNumbers("Na2SiF6"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID2 + 2,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff SteamCrackedBasnasiteSolution = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Steam-Cracked Bastnasite Mud",
+ subscriptNumbers("??LaCeY??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID2 + 3,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff ConditionedBastnasiteMud = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Conditioned Bastnasite Mud",
+ subscriptNumbers("??LaCeY??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID2 + 4,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff DiltedRareEarthBastnasiteMud = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Diluted Bastnasite Mud",
+ subscriptNumbers("??LaCeY??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID2 + 5,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff FilteredBastnasiteMud = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Filtered Bastnasite Mud",
+ subscriptNumbers("??LaCeY??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID2 + 6,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff BastnasiteRareEarthOxidePowder = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Bastnasite Rare Earth Oxides",
+ subscriptNumbers("??LaCeY??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID2 + 7,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff LeachedBastnasiteRareEarthOxides = new Werkstoff(
+ new short[] {205, 133, 63},
+ "Acid-Leached Bastnasite Rare Earth Oxides",
+ subscriptNumbers("??LaCeY??"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID2 + 8,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff Gangue = new Werkstoff(
+ new short[] {0, 0, 0},
+ "Gangue",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID2 + 9,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff RoastedRareEarthOxides = new Werkstoff(
+ new short[] {160, 82, 45},
+ "Roasted Rare Earth Oxides",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID2 + 10,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff WetRareEarthOxides = new Werkstoff(
+ new short[] {160, 82, 49},
+ "Wet Rare Earth Oxides",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID2 + 11,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff CeriumOxidisedRareEarthOxides = new Werkstoff(
+ new short[] {160, 82, 49},
+ "Cerium-Oxidised Rare Earth Oxides",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID2 + 12,
+ TextureSet.SET_DULL
+ );
+
+
+
+
+
+
+
+ // Weird/Exciting Chemicals
+ public static final Werkstoff Tetrahydrofuran = new Werkstoff(
+ new short[] {255, 255, 255}, //TODO
+ "Tetrahydrofuran",
+ subscriptNumbers("(CH2)4O"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3,
+ TextureSet.SET_FLUID
+ );
+
+ //1,4-Butanediol
+ public static final Werkstoff Butanediol = new Werkstoff(
+ new short[] {255, 255, 255}, //TODO
+ "1,4-Butanediol",
+ subscriptNumbers("HO(CH2)4OH"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3 + 1,
+ TextureSet.SET_FLUID
+ );
+
+ //Acidicised 1,4-Butanediol
+ public static final Werkstoff AcidicButanediol = new Werkstoff(
+ new short[] {255, 239, 213},
+ "Acidicised 1,4-Butanediol",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3 + 2,
+ TextureSet.SET_FLUID
+ );
+
+ //Tellurium-Molybdenum-Oxide Catalyst
+ public static final Werkstoff MoTeOCatalyst= new Werkstoff(
+ new short[] {238, 131, 238},
+ "Tellurium-Molybdenum-Oxide Catalyst",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID3 + 3,
+ TextureSet.SET_DULL
+ );
+
+ //Tellurium Oxide
+ public static final Werkstoff TelluriumIVOxide = new Werkstoff(
+ new short[] {229, 199, 187},
+ "Tellurium (IV) Oxide",
+ subscriptNumbers("TeO2"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID3 + 4,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff MolybdenumIVOxide = new Werkstoff(
+ new short[] {52, 53, 57},
+ "Molybdenum (IV) Oxide",
+ subscriptNumbers("MoO2"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().onlyDust(),
+ offsetID3 + 5,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff Polytetrahydrofuran = new Werkstoff(
+ new short[] {255, 255, 255},
+ "Polytetrahydrofuran",
+ subscriptNumbers("(C4H8O)OH2"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().onlyDust().addCells(),
+ offsetID3 + 6,
+ TextureSet.SET_DULL
+ );
+
+ public static final Werkstoff TungstophosphoricAcid = new Werkstoff(
+ new short[] {255, 255, 255},
+ "Tungstophosphoric Acid",
+ subscriptNumbers("H3PW12O40"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3 + 7,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff TolueneDiisocyanate = new Werkstoff(
+ new short[] {255, 255, 102},
+ "Toluene Diisocyanate",
+ subscriptNumbers("CH3C6H3(NCO)2"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3 + 8,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff Dinitrotoluene = new Werkstoff(
+ new short[] {255, 255, 255},
+ "Dinitrotoluene",
+ subscriptNumbers("C7H6N2O4"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3 + 9,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff Diaminotoluene = new Werkstoff(
+ new short[] {255, 255, 255},
+ "Diaminotoluene",
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3 + 10,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff TolueneTetramethylDiisocyanate = new Werkstoff(
+ new short[] {255, 255, 255},
+ "Toluene Tetramethyl Diisocyanate",
+ subscriptNumbers("(CONH)2(C6H4)2CH2(C4O)"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3 + 11,
+ TextureSet.SET_FLUID
+ );
+
+ public static final Werkstoff PTMEGElastomer = new Werkstoff(
+ new short[] {255, 255, 255},
+ "PTMEG Elastomer",
+ subscriptNumbers("(CONH)2(C6H4)2CH2(C4O)"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable().addCells(),
+ offsetID3 + 12,
+ TextureSet.SET_FLUID
+ );
+
+
+
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 655408550c..61cc4e204b 100644 --- a/src/main/java/com/elisis/gtnhlanth/common/tileentity/Digester.java +++ b/src/main/java/com/elisis/gtnhlanth/common/tileentity/Digester.java @@ -9,22 +9,19 @@ import static gregtech.api.util.GT_StructureUtility.ofHatchAdder; import java.util.ArrayList; -import org.lwjgl.input.Keyboard; - import com.elisis.gtnhlanth.loader.RecipeAdder; import com.elisis.gtnhlanth.util.DescTextLocalization; -import com.github.technus.tectech.thing.metaTileEntity.multi.base.GT_GUIContainer_MultiMachineEM; -import com.github.technus.tectech.thing.metaTileEntity.multi.base.GT_MetaTileEntity_MultiblockBase_EM; import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.StructureDefinition; import gregtech.api.GregTech_API; import gregtech.api.enums.HeatingCoilLevel; -import gregtech.api.enums.Textures; -import gregtech.api.interfaces.IIconContainer; +import gregtech.api.gui.GT_GUIContainer_MultiMachine; +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.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import net.minecraft.entity.player.InventoryPlayer; @@ -32,14 +29,13 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; -public class Digester extends GT_MetaTileEntity_MultiblockBase_EM implements IConstructable { +public class Digester extends GT_MetaTileEntity_EnhancedMultiBlockBase<Digester> implements IConstructable { protected int casingAmount = 0; protected int height = 0; private HeatingCoilLevel heatLevel; - @SuppressWarnings("deprecation") private IStructureDefinition<Digester> multiDefinition = StructureDefinition.<Digester>builder() .addShape(mName, transpose(new String[][] { {"-------", "-ttttt-", "-t---t-", "-t---t-", "-t---t-", "-ttttt-", "-------"}, @@ -77,16 +73,10 @@ public class Digester extends GT_MetaTileEntity_MultiblockBase_EM implements ICo public Digester(int id, String name, String nameRegional) { super(id, name, nameRegional); } - @Override - public IStructureDefinition<Digester> getStructure_EM(){ - return multiDefinition; - } - - @Override - public boolean checkMachine_EM(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) { - return structureCheck_EM(mName, 3, 3, 0); + public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) { + return checkPiece(mName, 3, 3, 0); } @Override @@ -103,7 +93,7 @@ public class Digester extends GT_MetaTileEntity_MultiblockBase_EM implements ICo } @Override - public boolean checkRecipe_EM(ItemStack itemStack) { + public boolean checkRecipe(ItemStack itemStack) { ArrayList<FluidStack> tFluidInputs = this.getStoredFluids(); FluidStack[] tFluidInputArray = tFluidInputs.toArray(new FluidStack[0]); @@ -157,12 +147,35 @@ public class Digester extends GT_MetaTileEntity_MultiblockBase_EM implements ICo @Override public Object getClientGUI(int id, InventoryPlayer playerInventory, IGregTechTileEntity metaTileEntity) { - return new GT_GUIContainer_MultiMachineEM(playerInventory, metaTileEntity, getLocalName(), "Digester.png"); + return new GT_GUIContainer_MultiMachine(playerInventory, metaTileEntity, getLocalName(), "Digester.png"); } @Override - public String[] getDescription() { - final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + public IMetaTileEntity newMetaEntity(IGregTechTileEntity arg0) { + return new Digester(this.mName); + } + + @Override + public void construct(ItemStack itemStack, boolean b) { + buildPiece(mName,itemStack, b, 3, 3, 0); + + } + + @Override + public String[] getStructureDescription(ItemStack arg0) { + return DescTextLocalization.addText("UniversalChemicalFuelEngine.hint", 11); + } + + @Override + public ITexture[] getTexture(IGregTechTileEntity arg0, byte arg1, byte arg2, byte arg3, boolean arg4, + boolean arg5) { + // TODO Auto-generated method stub + return null; + } + + @Override + protected GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); tt.addMachineType("Digester") .addInfo("Controller block for the Digester") .addInfo("Input ores and fluid, output water.") @@ -180,27 +193,24 @@ public class Digester extends GT_MetaTileEntity_MultiblockBase_EM implements ICo .addOtherStructurePart("Neutron Sensor", "Hint block with dot 2") .addCasingInfo("Clean Stainless Steel Machine Casing", 7) .toolTipFinisher("GTNH: Lanthanides"); - if (!Keyboard.isKeyDown(Keyboard.KEY_LSHIFT)) { - return tt.getInformation(); - } else { - return tt.getStructureInformation(); - } - } - + return tt; + } + @Override - public IMetaTileEntity newMetaEntity(IGregTechTileEntity arg0) { - return new Digester(this.mName); + public IStructureDefinition<Digester> getStructureDefinition() { + return multiDefinition; } @Override - public void construct(ItemStack itemStack, boolean b) { - structureBuild_EM(mName, 3, 3, 0, b, itemStack); - + public boolean explodesOnComponentBreak(ItemStack arg0) { + // TODO Auto-generated method stub + return false; } @Override - public String[] getStructureDescription(ItemStack arg0) { - return DescTextLocalization.addText("UniversalChemicalFuelEngine.hint", 11); + public int getDamageToComponent(ItemStack arg0) { + // TODO Auto-generated method stub + return 0; } } 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 b10938344e..0c194570ca 100644 --- a/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java +++ b/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java @@ -2,6 +2,8 @@ package com.elisis.gtnhlanth.common.tileentity; import static com.elisis.gtnhlanth.util.DescTextLocalization.BLUEPRINT_INFO; import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlock; +import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofChain; +import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose; import static gregtech.api.util.GT_StructureUtility.ofHatchAdder; import java.util.ArrayList; @@ -10,31 +12,24 @@ import org.lwjgl.input.Keyboard; import com.elisis.gtnhlanth.loader.RecipeAdder; import com.elisis.gtnhlanth.util.DescTextLocalization; -import com.github.technus.tectech.thing.metaTileEntity.multi.base.GT_GUIContainer_MultiMachineEM; -import com.github.technus.tectech.thing.metaTileEntity.multi.base.GT_MetaTileEntity_MultiblockBase_EM; import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.StructureDefinition; -import static com.elisis.gtnhlanth.util.DescTextLocalization.BLUEPRINT_INFO; -import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlock; -import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofChain; -import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose; -import static gregtech.api.util.GT_StructureUtility.ofCoil; -import static gregtech.api.util.GT_StructureUtility.ofHatchAdder; - import gregtech.api.GregTech_API; -import gregtech.api.enums.Materials; +import gregtech.api.gui.GT_GUIContainer_MultiMachine; +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.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; -public class DissolutionTank extends GT_MetaTileEntity_MultiblockBase_EM implements IConstructable { - +public class DissolutionTank extends GT_MetaTileEntity_EnhancedMultiBlockBase<DissolutionTank> implements IConstructable { + @SuppressWarnings("deprecation") private IStructureDefinition<DissolutionTank> multiDefinition = StructureDefinition.<DissolutionTank>builder() .addShape(mName, transpose(new String[][] { @@ -76,13 +71,13 @@ public class DissolutionTank extends GT_MetaTileEntity_MultiblockBase_EM impleme @Override - public IStructureDefinition<DissolutionTank> getStructure_EM(){ - return null; + public IStructureDefinition<DissolutionTank> getStructureDefinition(){ + return multiDefinition; } @Override - public boolean checkMachine_EM(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) { - return structureCheck_EM(mName, 3, 3, 0); + public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) { + return checkPiece(mName, 3, 3, 0); } @Override @@ -91,7 +86,7 @@ public class DissolutionTank extends GT_MetaTileEntity_MultiblockBase_EM impleme } @Override - public boolean checkRecipe_EM(ItemStack itemStack) { + public boolean checkRecipe(ItemStack itemStack) { ArrayList<FluidStack> tFluidInputs = this.getStoredFluids(); FluidStack[] tFluidInputArray = tFluidInputs.toArray(new FluidStack[0]); @@ -188,28 +183,35 @@ public class DissolutionTank extends GT_MetaTileEntity_MultiblockBase_EM impleme @Override public Object getClientGUI(int id, InventoryPlayer playerInventory, IGregTechTileEntity metaTileEntity) { - return new GT_GUIContainer_MultiMachineEM(playerInventory, metaTileEntity, getLocalName(), "DissolutionTank.png"); + return new GT_GUIContainer_MultiMachine(playerInventory, metaTileEntity, getLocalName(), "DissolutionTank.png"); } @Override public String[] getDescription() { - final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); - tt.addMachineType("Dissolution Tank") - .addInfo("Controller block for the Dissolution Tank") - .addInfo(BLUEPRINT_INFO) + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType("Heat Exchanger") + .addInfo("Controller Block for the Large Heat Exchanger") + .addInfo("More complicated than a Fusion Reactor. Seriously") + .addInfo("Inputs are Hot Coolant or Lava") + .addInfo("Outputs Coolant or Pahoehoe Lava and SH Steam/Steam") + .addInfo("Read the wiki article to understand how it works") + .addInfo("Then go to the Discord to understand the wiki") .addSeparator() + .beginStructureBlock(3, 4, 3, false) .addController("Front bottom") - .addInputHatch("Hint block with dot 1") - .addInputBus("Hint block with dot 1") - .addOutputHatch("Hint block with dot 2") - .addOutputBus("Hint block with dot 2") - .addMaintenanceHatch("Hint block with dot 2") - .toolTipFinisher("GTNH: Lanthanides"); - if (!Keyboard.isKeyDown(Keyboard.KEY_LSHIFT)) { - return tt.getInformation(); - } else { - return tt.getStructureInformation(); - } + .addCasingInfo("Stable Titanium Machine Casing", 20) + .addOtherStructurePart("Titanium Pipe Casing", "Center 2 blocks") + .addMaintenanceHatch("Any casing", 1) + .addInputHatch("Hot fluid, bottom center", 2) + .addInputHatch("Distilled water, any casing", 1) + .addOutputHatch("Cold fluid, top center", 3) + .addOutputHatch("Steam/SH Steam, any casing", 1) + .toolTipFinisher("Gregtech"); + if (!Keyboard.isKeyDown(Keyboard.KEY_LSHIFT)) { + return tt.getInformation(); + } else { + return tt.getStructureInformation(); + } } @Override @@ -219,7 +221,7 @@ public class DissolutionTank extends GT_MetaTileEntity_MultiblockBase_EM impleme @Override public void construct(ItemStack itemStack, boolean b) { - structureBuild_EM(mName, 3, 3, 0, b, itemStack); + buildPiece(mName, itemStack, b, 3, 3, 0); } @@ -228,6 +230,41 @@ public class DissolutionTank extends GT_MetaTileEntity_MultiblockBase_EM impleme return DescTextLocalization.addText("DissolutionTank.hint", 11); } + @Override + public ITexture[] getTexture(IGregTechTileEntity arg0, byte arg1, byte arg2, byte arg3, boolean arg4, + boolean arg5) { + // TODO Auto-generated method stub + return null; + } + + @Override + protected GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType("Dissolution Tank") + .addInfo("Controller block for the Dissolution Tank") + .addInfo(BLUEPRINT_INFO) + .addSeparator() + .addController("Front bottom") + .addInputHatch("Hint block with dot 1") + .addInputBus("Hint block with dot 1") + .addOutputHatch("Hint block with dot 2") + .addOutputBus("Hint block with dot 2") + .addMaintenanceHatch("Hint block with dot 2") + .toolTipFinisher("GTNH: Lanthanides"); + + return tt; + } + + @Override + public boolean explodesOnComponentBreak(ItemStack arg0) { + return false; + } + + @Override + public int getDamageToComponent(ItemStack arg0) { + return 0; + } + } diff --git a/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java b/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java new file mode 100644 index 0000000000..c489397dbd --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java @@ -0,0 +1,416 @@ +package com.elisis.gtnhlanth.loader; + +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Acetylhydrazine; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.AmmoniaBoronfluorideSolution; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.AmmoniumDinitramide; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.AmmoniumNitrate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.AmmoniumNnitrourethane; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.BoronTrifluoride; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.BoronTrioxide; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.DimethylSulfate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.DinitrogenPentoxide; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.EthylDinitrocarbamate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.EthylNnitrocarbamate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Ethylcarbamate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Ethylchloroformate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Formaldehyde; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Hydrazine; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.HydrogenPeroxide; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.LMP103S; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Monomethylhydrazine; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.MonomethylhydrazineFuelMix; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Nitromethane; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.NitroniumTetrafluoroborate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.OXylene; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Phosgene; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.PhthalicAnhydride; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.SodiumFluoride; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.SodiumTetrafluoroborate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.SodiumTungstate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.TertButylbenzene; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Tetrafluoroborate; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.Trinitramid; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.TungstenTrioxide; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.TungsticAcid; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.TwoTertButylAnthrahydroquinone; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.TwoTertButylAnthraquinone; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.UnsymmetricalDimethylhydrazine; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.UnsymmetricalDimethylhydrazineFuelMix; +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.VanadiumPentoxide; +import static gregtech.api.enums.OrePrefixes.cell; +import static gregtech.api.enums.OrePrefixes.dust; +import static gregtech.api.enums.OrePrefixes.dustTiny; +import static gregtech.api.enums.OrePrefixes.ingotHot; +import static gregtech.api.enums.OrePrefixes.item; + +import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Collection; +import java.util.HashSet; + +import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; + +import cpw.mods.fml.common.Loader; +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.Materials; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Utility; +import ic2.core.Ic2Items; +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidStack; + +public class BotRecipes { + + public static void addGTRecipe() { + ItemStack C1 = GT_Utility.getIntegratedCircuit(1); + ItemStack C2 = GT_Utility.getIntegratedCircuit(2); + ItemStack C24 = GT_Utility.getIntegratedCircuit(24); + + GT_Values.RA.addChemicalRecipe(Materials.Calcite.getDust(1), Materials.Empty.getCells(1), + Materials.HydrochloricAcid.getFluid(2000), Materials.Water.getFluid(1000), + Materials.CarbonDioxide.getCells(1), WerkstoffLoader.CalciumChloride.get(dust, 3), 80, 120); + + // tungsten chain + FluidStack sodiumTungsten = SodiumTungstate.getFluidOrGas(4000); + ItemStack scheelite = Materials.Scheelite.getDust(7); + + GT_Values.RA.addAutoclaveRecipe(Materials.Tungstate.getDust(7), Materials.SodiumHydroxide.getDust(4), + Materials.Water.getFluid(4000), sodiumTungsten, Materials.Lithium.getDust(2), 10000, 100, 1920, false); + + GT_Values.RA.addAutoclaveRecipe(WerkstoffLoader.Huebnerit.get(dust, 5), Materials.SodiumHydroxide.getDust(4), + Materials.Water.getFluid(4000), sodiumTungsten, Materials.Manganese.getDust(1), 10000, 100, 1920, false); + + GT_Values.RA.addAutoclaveRecipe(WerkstoffLoader.Ferberite.get(dust, 5), Materials.SodiumHydroxide.getDust(4), + Materials.Water.getFluid(4000), sodiumTungsten, Materials.Iron.getDust(1), 10000, 100, 1920, false); + + ItemStack Ca2Cl = WerkstoffLoader.CalciumChloride.get(dust, 6); + GT_Values.RA.addChemicalRecipe(Ca2Cl, null, sodiumTungsten, null, + scheelite, Materials.Salt.getDust(8), 100, 480); + + Ca2Cl.stackSize = 6; + ItemStack H2WO4 = TungsticAcid.get(dust, 1); + GT_Values.RA.addChemicalRecipe(scheelite, null, Materials.HydrochloricAcid.getFluid(4000), null, + H2WO4, Ca2Cl, 50, 1920); + + ItemStack WO3 = TungstenTrioxide.get(dust, 1); + GT_Values.RA.addBlastRecipe(H2WO4, null, null, null, WO3, null, + 200, 480, 1200); + +// ItemStack WO3Fe = TungstenSteelOxide.get(dust, 2); +// GT_Values.RA.addMixerRecipe(WO3, Materials.Steel.getDust(1), null, null, null, null, +// WO3Fe, 100, 1920); + + GT_Values.RA.addBlastRecipe(WO3,C2,Materials.Hydrogen.getGas(3000), + null,Materials.Tungsten.getDust(1),null,100,1920,1000); + + WO3.stackSize = 2; + GT_Values.RA.addBlastRecipe(WO3, Materials.Carbon.getDust(3), null, Materials.CarbonDioxide.getGas(6000), + GT_OreDictUnificator.get(ingotHot, Materials.Tungsten, 2L), null, 8000, 1920, 3000); + +// WO3Fe.stackSize = 4; +// GT_Values.RA.addBlastRecipe(WO3Fe, Materials.Carbon.getDust(3), Materials.Nitrogen.getGas(4000), Materials.CarbonDioxide.getGas(6000), +// GT_OreDictUnificator.get(ingotHot, Materials.TungstenSteel, 4L), null, 10000, 1920, 3000); + + //rocket fuels + //LMP103S + GT_Values.RA.addChemicalRecipe(Materials.CarbonMonoxide.getCells(1), C2, Materials.Chlorine.getGas(2000), + null, Phosgene.get(cell, 1), 50, 480); + GT_Values.RA.addChemicalRecipe(Phosgene.get(cell, 1), C2, Materials.Ethanol.getFluid(1000), + Materials.HydrochloricAcid.getGas(1000), Ethylchloroformate.get(cell, 1), 20, 1920); + + GT_Values.RA.addChemicalRecipe(Ethylchloroformate.get(cell, 1), C2, Materials.Ammonia.getGas(2000), + WerkstoffLoader.AmmoniumChloride.getFluidOrGas(1000), Ethylcarbamate.get(cell, 1), 200, 120); + + GT_Values.RA.addChemicalRecipe(Ethylcarbamate.get(cell, 1), C2, Materials.NitricAcid.getFluid(1000), + Materials.Water.getFluid(1000), EthylNnitrocarbamate.get(cell, 1), 40, 1024); + + GT_Values.RA.addChemicalRecipe(EthylNnitrocarbamate.get(cell, 1), C2, Materials.Ammonia.getGas(1000), + null, AmmoniumNnitrourethane.get(cell, 1), 40, 1920); + + GT_Values.RA.addChemicalRecipe(AmmoniumNnitrourethane.get(cell, 1), DinitrogenPentoxide.get(dust, 1), null, null, + EthylDinitrocarbamate.get(cell, 1), AmmoniumNitrate.get(dust, 1), 200, 480); + + GT_Values.RA.addChemicalRecipe(EthylDinitrocarbamate.get(cell, 1), C2, Materials.Ammonia.getGas(2000), + Ethylcarbamate.getFluidOrGas(980), AmmoniumDinitramide.get(cell, 1), 200, 1920); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{C24}, + new FluidStack[]{ + AmmoniumDinitramide.getFluidOrGas(6000), + Materials.Methanol.getFluid(2000), + Materials.Ammonia.getGas(500), + Materials.Water.getFluid(1500)}, + new FluidStack[]{LMP103S.getFluidOrGas(10000)}, + null, + 1200, 1920); + + GT_Values.RA.addChemicalRecipe(Materials.PhosphorousPentoxide.getDust(1), C2, Materials.NitricAcid.getFluid(12000), + Materials.PhosphoricAcid.getFluid(4000), DinitrogenPentoxide.get(dust, 6), 200, 1920); + + GT_Values.RA.addDistilleryRecipe(C2, Materials.PhosphoricAcid.getFluid(1000), + Materials.Water.getFluid(500), Materials.Phosphorus.getDust(1), 20, 480, false); + + ItemStack cells = Ic2Items.cell.copy(); + cells.stackSize = 1; + GT_Values.RA.addDistilleryRecipe(cells,WerkstoffLoader.AmmoniumChloride.getFluidOrGas(1000), + Materials.HydrochloricAcid.getFluid(1000),Materials.Ammonia.getCells(1),50,120,false); + + GT_Values.RA.addChemicalRecipeForBasicMachineOnly(AmmoniumNitrate.get(dust, 1), Materials.SodiumHydroxide.getDust(1), null, + Materials.Ammonia.getGas(1000), WerkstoffLoader.SodiumNitrate.get(dust, 2), null, 100, 480); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{AmmoniumNitrate.get(dust, 1), Materials.SodiumHydroxide.getDust(1), C2}, + null, + new FluidStack[]{Materials.Ammonia.getGas(1000)}, + new ItemStack[]{WerkstoffLoader.SodiumNitrate.get(dust, 2)}, + 100, 480 + ); + + GT_Values.RA.addChemicalRecipe(WerkstoffLoader.SodiumNitrate.get(dust, 4), C2, Materials.SulfuricAcid.getFluid(2000), + Materials.NitricAcid.getFluid(2000), WerkstoffLoader.Sodiumsulfate.get(dust, 1), 200, 120); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{ + C24, + AmmoniumNitrate.get(dust, 2), + Materials.SodiumHydroxide.getDust(2) + }, + new FluidStack[]{ + Materials.SulfuricAcid.getFluid(1000), + Materials.Hydrogen.getGas(2000) + }, + new FluidStack[]{ + Materials.Ammonia.getGas(2000), + Materials.NitricAcid.getFluid(2000) + }, + new ItemStack[]{Materials.Sodium.getDust(2)}, + 300, 480 + ); + + //Monomethylhydrazine + cells.stackSize = 1; + GT_Values.RA.addCrackingRecipe(1, Materials.Toluene.getFluid(1000), Materials.Methanol.getFluid(1000), + OXylene.getFluidOrGas(1000), 600, 4096); + + GT_Values.RA.addChemicalRecipe(OXylene.get(cell, 1), VanadiumPentoxide.get(dustTiny), Materials.Oxygen.getGas(3000), + Materials.Water.getFluid(3000), PhthalicAnhydride.get(dust, 1), 800, 1920); + + GT_Values.RA.addBlastRecipe(Materials.Vanadium.getDust(2), C2, null, + null, VanadiumPentoxide.get(dust, 5), null, 200, 120, 700); + + GT_Values.RA.addChemicalRecipe(Materials.Benzene.getCells(1), C2, Materials.Butene.getGas(1000), + TertButylbenzene.getFluidOrGas(1000), cells, 100, 1920); + + GT_Values.RA.addChemicalRecipe(PhthalicAnhydride.get(dust, 1), C2, TertButylbenzene.getFluidOrGas(1000), + TwoTertButylAnthraquinone.getFluidOrGas(1000), null, 200, 7680); + + GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Hydrogen.getCells(10), Materials.Palladium.getDustTiny(1), + TwoTertButylAnthraquinone.getFluidOrGas(10000), + TwoTertButylAnthrahydroquinone.getFluidOrGas(10000), null, null, 1200, 7680); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{C2, Materials.Palladium.getDustTiny(1)}, + new FluidStack[]{ + Materials.Hydrogen.getGas(10000), + TwoTertButylAnthraquinone.getFluidOrGas(10000) + }, + new FluidStack[]{TwoTertButylAnthrahydroquinone.getFluidOrGas(10000)}, + null, + 1200, 7680 + ); + + GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(1), C2, TwoTertButylAnthrahydroquinone.getFluidOrGas(1000), + TwoTertButylAnthraquinone.getFluidOrGas(900), HydrogenPeroxide.get(cell, 1), 40, 1920); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{ + C24, + Materials.Palladium.getDustTiny(1) + }, + new FluidStack[]{ + Materials.Hydrogen.getGas(10000), + Materials.Oxygen.getGas(10000), + TwoTertButylAnthraquinone.getFluidOrGas(10000) + }, + new FluidStack[]{ + HydrogenPeroxide.getFluidOrGas(10000), + TwoTertButylAnthraquinone.getFluidOrGas(9000) + }, + null, + 1400, 7680 + ); + + GT_Values.RA.addChemicalRecipe(HydrogenPeroxide.get(cell, 1), C2, Materials.Ammonia.getGas(2000), + Materials.Water.getFluid(2000), Hydrazine.get(cell, 2), 100, 120); + + GT_Values.RA.addChemicalRecipe(Materials.SulfuricAcid.getCells(1), C2, Materials.Methanol.getFluid(2000), + null, DimethylSulfate.get(cell, 1), 50, 480); + + GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SulfuricAcid.getCells(1), C1, Materials.Methanol.getFluid(2000), + DimethylSulfate.getFluidOrGas(1000), cells, null, 50, 480); + + GT_Values.RA.addChemicalRecipe(Hydrazine.get(cell, 2), C2, DimethylSulfate.getFluidOrGas(1000), + Materials.SulfurTrioxide.getGas(1000), Monomethylhydrazine.get(cell, 2), 80, 16000); + + GT_Values.RA.addChemicalRecipeForBasicMachineOnly(DimethylSulfate.get(cell, 1), C1, Hydrazine.getFluidOrGas(2000), + Monomethylhydrazine.getFluidOrGas(2000), Materials.SulfurTrioxide.getCells(1), null, 80, 16000); + + GT_Values.RA.addMixerRecipe(AmmoniumDinitramide.get(cell, 1), C1, null, null, Monomethylhydrazine.getFluidOrGas(2000), + MonomethylhydrazineFuelMix.getFluidOrGas(3000), cells, 20, 480); + cells.stackSize = 2; + + GT_Values.RA.addMixerRecipe(Monomethylhydrazine.get(cell, 2), C2, null, null, AmmoniumDinitramide.getFluidOrGas(1000), + MonomethylhydrazineFuelMix.getFluidOrGas(3000), cells, 20, 480); + cells.stackSize = 1; + + //unsimetrical hydazine + + GT_Values.RA.addCrackingRecipe(2,Materials.Propane.getGas(1000),Materials.NitricAcid.getFluid(1000), + Nitromethane.getFluidOrGas(1000),300,1920); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{C2}, + new FluidStack[]{ + Materials.HydrofluoricAcid.getFluid(1000), + BoronTrifluoride.getFluidOrGas(1000), + Nitromethane.getFluidOrGas(1000), + Materials.NitricAcid.getFluid(1000)}, + new FluidStack[]{ + Materials.Methane.getGas(1000), + Materials.Water.getFluid(1000), + Materials.NitricOxide.getGas(1000)}, + new ItemStack[]{NitroniumTetrafluoroborate.get(dust,1)}, + 100,7_680 + ); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{C2,NitroniumTetrafluoroborate.get(dust,1)}, + new FluidStack[]{AmmoniumDinitramide.getFluidOrGas(1000)}, + new FluidStack[]{ + Trinitramid.getFluidOrGas(1000), + AmmoniaBoronfluorideSolution.getFluidOrGas(1000) + }, + null, + 20,30_720 + ); + + cells.stackSize = 3; + GT_Values.RA.addChemicalRecipe(BoronTrioxide.get(dust,1),cells,Materials.HydrofluoricAcid.getFluid(6000), + BoronTrifluoride.getFluidOrGas(2000),Materials.Water.getCells(3),50,480); + + GT_Values.RA.addChemicalRecipe(Materials.Borax.getDust(23),C2,Materials.SulfuricAcid.getFluid(1000), + null,WerkstoffLoader.Sodiumsulfate.get(dust,1),BoronTrioxide.get(dust,2),400,1920); + + cells.stackSize = 1; + GT_Values.RA.addDistilleryRecipe(cells,AmmoniaBoronfluorideSolution.getFluidOrGas(1000), + Tetrafluoroborate.getFluidOrGas(1000),Materials.Ammonia.getCells(1),20,30_720,false); + + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDust(1),cells,Tetrafluoroborate.getFluidOrGas(1000), + SodiumTetrafluoroborate.getFluidOrGas(1000),Materials.Water.getCells(1),100,1920); + + GT_Values.RA.addDistilleryRecipe(C2,SodiumTetrafluoroborate.getFluidOrGas(1000), + BoronTrifluoride.getFluidOrGas(1000),SodiumFluoride.get(dust,1),40,480,false); + + GT_Values.RA.addChemicalRecipe(SodiumFluoride.get(dust,2),C2,Materials.SulfuricAcid.getFluid(1000), + Materials.HydrofluoricAcid.getFluid(2000),WerkstoffLoader.Sodiumsulfate.get(dust,1),50,1920); + + GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(4),Materials.Silver.getDustTiny(1),Materials.Methanol.getFluid(4000), + Formaldehyde.getFluidOrGas(4000),cells,100,480); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{C2}, + new FluidStack[]{ + Materials.AceticAcid.getFluid(1000), + Materials.Ethanol.getFluid(1000), + Hydrazine.getFluidOrGas(1000)}, + new FluidStack[]{ + Acetylhydrazine.getFluidOrGas(1000), + Materials.Ethanol.getFluid(900)}, + null, + 40,30_720 + ); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[]{C2}, + new FluidStack[]{ + Acetylhydrazine.getFluidOrGas(1000), + Formaldehyde.getFluidOrGas(1000), + Materials.Hydrogen.getGas(2000)}, + new FluidStack[]{ + UnsymmetricalDimethylhydrazine.getFluidOrGas(2000), + Materials.AceticAcid.getFluid(900)}, + null, + 20, 122_880 + ); + + GT_Values.RA.addMixerRecipe(UnsymmetricalDimethylhydrazine.get(cell,2),C2,null,null, + Trinitramid.getFluidOrGas(1000),UnsymmetricalDimethylhydrazineFuelMix.getFluidOrGas(3000),cells,10,120); + + GT_Values.RA.addMixerRecipe(Trinitramid.get(cell,1),C2,null,null, + UnsymmetricalDimethylhydrazine.getFluidOrGas(2000),UnsymmetricalDimethylhydrazineFuelMix.getFluidOrGas(3000),cells,10,120); + + } + public static void addFuels() + { + try { + if (Loader.isModLoaded(GT_Values.MOD_ID_GC_CORE)) { + Class<?> rocket = Class.forName("micdoodle8.mods.galacticraft.api.recipe.RocketFuelRecipe"); + Method addFuel = rocket.getMethod("addFuel", Fluid.class, int.class); + addFuel.invoke(null, LMP103S.getFluidOrGas(1).getFluid(), 4); + addFuel.invoke(null, MonomethylhydrazineFuelMix.getFluidOrGas(1).getFluid(), 6); + addFuel.invoke(null, UnsymmetricalDimethylhydrazineFuelMix.getFluidOrGas(1).getFluid(), 8); + } + if (Loader.isModLoaded("miscutils")) + { + Class gtppRecipeMap = Class.forName("gregtech.api.util.GTPP_Recipe$GTPP_Recipe_Map"); + Field rocketFuels = gtppRecipeMap.getDeclaredField("sRocketFuels"); + rocketFuels.setAccessible(true); + Class rocketFuelsClass = rocketFuels.getType(); + Object rocketFuelsObject = rocketFuels.get(null); + Method addFuel = rocketFuelsClass.getDeclaredMethod("addFuel",FluidStack.class,FluidStack.class,int.class); + addFuel.invoke(rocketFuelsObject,LMP103S.getFluidOrGas(1000),null,666); + addFuel.invoke(rocketFuelsObject,MonomethylhydrazineFuelMix.getFluidOrGas(1000),null,1500); + addFuel.invoke(rocketFuelsObject,UnsymmetricalDimethylhydrazineFuelMix.getFluidOrGas(1000),null,3000); + } + } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException | InvocationTargetException | NoSuchFieldException e) { + e.printStackTrace(); + } + GT_Recipe.GT_Recipe_Map.sTurbineFuels.addFuel(TertButylbenzene.get(cell,1),null,420); + } + + public static void removeRecipes() + { + BotRecipes.removeTungstenElectro(); + } + + 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) { + if (tRecipe.mFakeRecipe) + continue; + for (int i = 0; i < tRecipe.mInputs.length; i++) { + ItemStack tItem = tRecipe.mInputs[i]; + if (item == null || !GT_Utility.isStackValid(tItem)) + continue; + for (ItemStack tStack : toRemove) { + if (GT_Utility.areStacksEqual(tItem, tStack)) { + toDel.add(tRecipe); + continue; + } + } + } + } + electroRecipeMap.removeAll(toDel); + GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes.reInit(); + } + +} diff --git a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java index 4db956eb0f..77138f7a89 100644 --- a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java +++ b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java @@ -5,7 +5,9 @@ import static goodgenerator.items.MyMaterial.naquadahEarth; import java.util.HashSet; import com.elisis.gtnhlanth.Tags; +import com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool; import com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool; +import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; import goodgenerator.crossmod.LoadedList; @@ -15,6 +17,7 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Log; +import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -22,6 +25,7 @@ import gregtech.common.items.CombType; import gregtech.loaders.misc.GT_Bees; import gtPlusPlus.xmod.gregtech.loaders.RecipeGen_MultisUsingFluidInsteadOfCells; import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.oredict.OreDictionary; @@ -106,13 +110,21 @@ public class RecipeLoader { WerkstoffMaterialPool.HafniumIodide.get(OrePrefixes.dust, 1), 300 ); + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.LowPurityHafnium.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.Iodine.get(OrePrefixes.dust, 4), + null, + null, + WerkstoffMaterialPool.HafniumIodide.get(OrePrefixes.dust, 1), + 300 + ); //Hf GT_Values.RA.addBlastRecipe( GT_Utility.getIntegratedCircuit(12), WerkstoffMaterialPool.HafniumIodide.get(OrePrefixes.dust, 1), null, - WerkstoffMaterialPool.Iodine.getFluidOrGas(4000), + WerkstoffMaterialPool.Iodine.getFluidOrGas(2000), WerkstoffMaterialPool.Hafnium.get(OrePrefixes.ingotHot, 1), WerkstoffMaterialPool.HafniumRunoff.get(OrePrefixes.dustTiny, 1), 600, 1920, 3400 @@ -146,6 +158,65 @@ public class RecipeLoader { 400 ); + //IODINE-START + //SeaweedAsh + GT_ModHandler.addSmeltingRecipe( + GT_ModHandler.getModItem("harvestcraft", "seaweedItem", 1), + WerkstoffMaterialPool.SeaweedAsh.get(OrePrefixes.dustSmall, 1) + ); + + //SeaweedConcentrate + GT_Values.RA.addMixerRecipe( + WerkstoffMaterialPool.SeaweedAsh.get(OrePrefixes.dust, 1), + null, + null, + null, + Materials.DilutedSulfuricAcid.getFluid(600), + WerkstoffMaterialPool.SeaweedConcentrate.getFluidOrGas(600), + Materials.Calcite.getDustSmall(2), + 300, + 240 + ); + + //Iodine + GT_Values.RA.addCentrifugeRecipe( + Materials.Benzene.getCells(1), + null, + WerkstoffMaterialPool.SeaweedConcentrate.getFluidOrGas(2000), + WerkstoffMaterialPool.SeaweedByproducts.getFluidOrGas(200), + WerkstoffMaterialPool.Iodine.get(OrePrefixes.dust, 1), + null, + null, + null, + null, + null, + new int[] {10000}, + 760, + 480 + ); + + //Fluorosilicic Acid + GT_Values.RA.addChemicalRecipe( + GT_Utility.getIntegratedCircuit(1), + Materials.SiliconDioxide.getDust(1), + Materials.HydrofluoricAcid.getFluid(6000), + WerkstoffMaterialPool.FluorosilicicAcid.getFluidOrGas(1000), + null, + 300, + 600 + ); + + //Sodium Fluorosilicate + GT_Values.RA.addChemicalRecipe( + Materials.Empty.getCells(2), + Materials.Salt.getDust(2), + WerkstoffMaterialPool.FluorosilicicAcid.getFluidOrGas(1000), + WerkstoffMaterialPool.SodiumFluorosilicate.getFluidOrGas(1000), + Materials.HydrochloricAcid.getCells(2), + 600, + 450 + ); + } @@ -161,8 +232,8 @@ public class RecipeLoader { }, new FluidStack[] { Materials.Methanol.getFluid(1000), - Materials.CarbonMonoxide.getFluid(2000), - Materials.Oxygen.getFluid(3000) + Materials.CarbonMonoxide.getGas(2000), + Materials.Oxygen.getGas(3000) }, new FluidStack[] { MyMaterial.oxalate.getFluidOrGas(1000) @@ -180,8 +251,8 @@ public class RecipeLoader { }, new FluidStack[] { Materials.Ethanol.getFluid(1000), - Materials.CarbonMonoxide.getFluid(3000), - Materials.Oxygen.getFluid(3000) + Materials.CarbonMonoxide.getGas(3000), + Materials.Oxygen.getGas(3000) }, new FluidStack[] { MyMaterial.oxalate.getFluidOrGas(1000) @@ -196,7 +267,7 @@ public class RecipeLoader { GT_Utility.getIntegratedCircuit(1), WerkstoffMaterialPool.CeriumDioxide.get(OrePrefixes.dust, 1), WerkstoffLoader.AmmoniumChloride.getFluidOrGas(3000), - Materials.Ammonia.getFluid(3000), + Materials.Ammonia.getGas(3000), WerkstoffMaterialPool.CeriumChloride.get(OrePrefixes.dust, 1), 300, 450 @@ -252,11 +323,11 @@ public class RecipeLoader { //CHAIN BEGIN - + // MONAZITE RecipeAdder.instance.DigesterRecipes.addDigesterRecipe( new FluidStack[] {Materials.NitricAcid.getFluid(350)}, new ItemStack[] {GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Monazite, 1)}, - WerkstoffMaterialPool.MuddyRareEarthSolution.getFluidOrGas(200), + WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(200), new ItemStack[] { Materials.SiliconDioxide.getDustSmall(2) }, @@ -268,10 +339,10 @@ public class RecipeLoader { RecipeAdder.instance.DissolutionTankRecipes.addDissolutionTankRecipe( new FluidStack[] { Materials.Water.getFluid(10000), - WerkstoffMaterialPool.MuddyRareEarthSolution.getFluidOrGas(1000) + WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(1000) }, null, - WerkstoffMaterialPool.DilutedRareEarthMud.getFluidOrGas(11000), + WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(11000), new ItemStack[] { WerkstoffMaterialPool.HafniaZirconiaBlend.get(OrePrefixes.dustTiny, 4), WerkstoffLoader.Thorianit.get(OrePrefixes.dust, 1), @@ -279,7 +350,7 @@ public class RecipeLoader { }, 480, 900, - 0 + 10 ); GT_Recipe.GT_Recipe_Map.sSifterRecipes.addRecipe( @@ -297,7 +368,7 @@ public class RecipeLoader { 8000, 7500, 1000, 500, 2000 }, new FluidStack[] { - WerkstoffMaterialPool.DilutedRareEarthMud.getFluidOrGas(1000) + WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(1000) }, null, 400, @@ -334,7 +405,7 @@ public class RecipeLoader { GT_Values.RA.addSifterRecipe( WerkstoffMaterialPool.AcidicMonazitePowder.get(OrePrefixes.dust, 1), new ItemStack[] { - WerkstoffMaterialPool.RareEarthFiltrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.MonaziteRareEarthFiltrate.get(OrePrefixes.dust, 1), WerkstoffMaterialPool.ThoriumPhosphateCake.get(OrePrefixes.dust, 1) }, new int[] {9000, 7000}, @@ -355,9 +426,9 @@ public class RecipeLoader { ); GT_Values.RA.addChemicalBathRecipe( - WerkstoffMaterialPool.RareEarthFiltrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.MonaziteRareEarthFiltrate.get(OrePrefixes.dust, 1), WerkstoffMaterialPool.AmmoniumNitrate.getFluidOrGas(320), - WerkstoffMaterialPool.NeutralizedRareEarthFiltrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.NeutralizedMonaziteRareEarthFiltrate.get(OrePrefixes.dust, 1), null, null, new int[] {10000}, @@ -366,9 +437,9 @@ public class RecipeLoader { ); GT_Values.RA.addSifterRecipe( - WerkstoffMaterialPool.NeutralizedRareEarthFiltrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.NeutralizedMonaziteRareEarthFiltrate.get(OrePrefixes.dust, 1), new ItemStack[] { - WerkstoffMaterialPool.RareEarthHydroxideConcentrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.MonaziteRareEarthHydroxideConcentrate.get(OrePrefixes.dust, 1), WerkstoffMaterialPool.UraniumFiltrate.get(OrePrefixes.dust, 1), WerkstoffMaterialPool.UraniumFiltrate.get(OrePrefixes.dust, 1) }, @@ -378,6 +449,244 @@ public class RecipeLoader { ); + GT_Values.RA.addChemicalBathRecipe( + WerkstoffMaterialPool.UraniumFiltrate.get(OrePrefixes.dust, 1), + Materials.HydrofluoricAcid.getFluid(100), + WerkstoffMaterialPool.NeutralizedUraniumFiltrate.get(OrePrefixes.dust, 1), + null, + null, + new int[] {10000}, + 360, + 120 + ); + + GT_Values.RA.addSifterRecipe( + WerkstoffMaterialPool.NeutralizedUraniumFiltrate.get(OrePrefixes.dust, 1), + new ItemStack[] { + Materials.Fluorite.getDust(1), + Materials.Uranium.getDust(1), + Materials.Uranium.getDust(1), + Materials.Uranium.getDust(1), + Materials.Uranium235.getDust(1), + Materials.Uranium235.getDust(1), + }, + new int[] {9500, 4500, 4000, 3000, 3000, 2000}, + 1000, + 30 + ); + + GT_Values.RA.addBlastRecipe( + WerkstoffMaterialPool.MonaziteRareEarthHydroxideConcentrate.get(OrePrefixes.dust, 1), + null, + null, + null, + WerkstoffMaterialPool.DriedMonaziteRareEarthConcentrate.get(OrePrefixes.dust, 1), + null, + 300, + 120, + 1200 + ); + + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.DriedMonaziteRareEarthConcentrate.get(OrePrefixes.dust, 1), + null, + Materials.NitricAcid.getFluid(500), + WerkstoffMaterialPool.NitratedRareEarthMonaziteConcentrate.getFluidOrGas(1000), + null, + 500, + 480 + ); + + GT_Values.RA.addMixerRecipe( + Materials.Water.getCells(1), + null, + null, + null, + WerkstoffMaterialPool.NitratedRareEarthMonaziteConcentrate.getFluidOrGas(1000), + WerkstoffMaterialPool.NitricLeachedMonaziteMixture.getFluidOrGas(1000), + Materials.Empty.getCells(1), + 200, + 120 + ); + + GT_Recipe.GT_Recipe_Map.sSifterRecipes.addRecipe( + false, + null, + new ItemStack[] { + WerkstoffMaterialPool.CeriumDioxide.get(OrePrefixes.dust) + }, + null, + new int[] { + 11 + }, + new FluidStack[] { + WerkstoffMaterialPool.NitricLeachedMonaziteMixture.getFluidOrGas(1000) + }, + new FluidStack[] { + WerkstoffMaterialPool.NitricMonaziteLeachedConcentrate.getFluidOrGas(1000) + }, + 400, + 240, + 0 + ); + + //Begin Cerium + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.CeriumDioxide.get(OrePrefixes.dust, 1), + Materials.Empty.getCells(1), + WerkstoffLoader.AmmoniumChloride.getFluidOrGas(3000), + Materials.Ammonia.getFluid(3000), + WerkstoffMaterialPool.CeriumChloride.get(OrePrefixes.dust, 1), + Materials.Water.getCells(1), + 500, + 1920 + ); + + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.CeriumChloride.get(OrePrefixes.dust, 2), + null, + MyMaterial.oxalate.getFluidOrGas(3000), + Materials.HydrochloricAcid.getFluid(6000), + WerkstoffMaterialPool.CeriumOxalate.get(OrePrefixes.dust, 2), + 600, + 1920 + ); + + + //TODO + + + + // BASTNASITE (god help me) + RecipeAdder.instance.DigesterRecipes.addDigesterRecipe( + new FluidStack[] {Materials.NitricAcid.getFluid(350)}, + new ItemStack[] {GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Bastnasite, 1)}, + WerkstoffMaterialPool.MuddyRareEarthBastnasiteSolution.getFluidOrGas(200), + new ItemStack[] { + Materials.SiliconDioxide.getDustSmall(2) + }, + 1920, + 200, + 2700 + ); + + GT_Values.RA.addCrackingRecipe( + 1, + WerkstoffMaterialPool.MuddyRareEarthBastnasiteSolution.getFluidOrGas(1000), + GT_ModHandler.getSteam(1000), + WerkstoffMaterialPool.SteamCrackedBasnasiteSolution.getFluidOrGas(2000), + 600, + 480 + ); + + GT_Values.RA.addMixerRecipe( + GT_Utility.getIntegratedCircuit(6), + WerkstoffMaterialPool.SteamCrackedBasnasiteSolution.get(OrePrefixes.cell, 1), + null, + null, + WerkstoffMaterialPool.SodiumFluorosilicate.getFluidOrGas(320), + WerkstoffMaterialPool.ConditionedBastnasiteMud.getFluidOrGas(1320), + null, + 800, + 120 + ); + + RecipeAdder.instance.DissolutionTankRecipes.addDissolutionTankRecipe( + new FluidStack[] { + Materials.Water.getFluid(10000), + WerkstoffMaterialPool.ConditionedBastnasiteMud.getFluidOrGas(1000) + }, + null, + WerkstoffMaterialPool.DiltedRareEarthBastnasiteMud.getFluidOrGas(11000), + new ItemStack[] { + WerkstoffMaterialPool.Gangue.get(OrePrefixes.dust, 1) + }, + 1920, + 1000, + 10 + ); + + GT_Recipe.GT_Recipe_Map.sSifterRecipes.addRecipe( + false, + null, + new ItemStack[] { + Materials.SiliconDioxide.getDust(1), + Materials.Rutile.getDust(1), + WerkstoffLoader.RedZircon.get(OrePrefixes.dust, 1), //TODO:Change outputs to complement Monazite + Materials.Ilmenite.getDust(1) + }, + null, + new int[] { + 8000, 7500, 1000, 500, 2000 + }, + new FluidStack[] { + WerkstoffMaterialPool.DiltedRareEarthBastnasiteMud.getFluidOrGas(1000) + }, + new FluidStack[] { + WerkstoffMaterialPool.FilteredBastnasiteMud.getFluidOrGas(400) + }, + 400, + 240, + 0 + ); + + GT_Values.RA.addBlastRecipe( + GT_Utility.getIntegratedCircuit(1), + null, + WerkstoffMaterialPool.FilteredBastnasiteMud.getFluidOrGas(1000), + null, //TODO: Maybe add some useful shit? + WerkstoffMaterialPool.BastnasiteRareEarthOxidePowder.get(OrePrefixes.dust, 1), + null, //See above + 500, + 600, + 1400 + ); + + GT_Values.RA.addChemicalBathRecipe( + WerkstoffMaterialPool.BastnasiteRareEarthOxidePowder.get(OrePrefixes.dust, 1), + Materials.HydrochloricAcid.getFluid(500), + WerkstoffMaterialPool.LeachedBastnasiteRareEarthOxides.get(OrePrefixes.dust, 1), + null, + null, + new int[] {10000}, + 200, + 30 + ); + + GT_Values.RA.addBlastRecipe( + GT_Utility.getIntegratedCircuit(1), + WerkstoffMaterialPool.LeachedBastnasiteRareEarthOxides.get(OrePrefixes.dust, 1), + Materials.Oxygen.getGas(1000), + Materials.Fluorine.getGas(13), + WerkstoffMaterialPool.RoastedRareEarthOxides.get(OrePrefixes.dust, 1), + null, + 600, + 120, + 1200 + ); + + GT_Values.RA.addMixerRecipe( + GT_Utility.getIntegratedCircuit(7), + WerkstoffMaterialPool.RoastedRareEarthOxides.get(OrePrefixes.dust, 1), + null, + null, + Materials.Water.getFluid(200), + null, + WerkstoffMaterialPool.WetRareEarthOxides.get(OrePrefixes.dust, 1), + 100, + 30 + ); + + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.WetRareEarthOxides.get(OrePrefixes.dust, 1), + null, + Materials.Fluorine.getGas(4000), + Materials.HydrofluoricAcid.getFluid(4000), + WerkstoffMaterialPool.CeriumOxidisedRareEarthOxides.get(OrePrefixes.dust, 1), + 300, + 480 + ); + @@ -395,7 +704,142 @@ public class RecipeLoader { } - @SuppressWarnings({ "rawtypes", "unchecked" }) + public static void addRandomChemCrafting() { + + //PTMEG Elastomer + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.Butanediol.get(OrePrefixes.cell, 1), + null, + WerkstoffMaterialPool.TolueneTetramethylDiisocyanate.getFluidOrGas(4000), + WerkstoffMaterialPool.PTMEGElastomer.getFluidOrGas(4000), + Materials.Empty.getCells(1), + 1500, + 480 + ); + + //Toluene Tetramethyl Diisocyanate + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.TolueneDiisocyanate.get(OrePrefixes.cell, 3), + Materials.Hydrogen.getCells(2), + WerkstoffMaterialPool.Polytetrahydrofuran.getFluidOrGas(1000), + WerkstoffMaterialPool.TolueneTetramethylDiisocyanate.getFluidOrGas(2000), + Materials.Empty.getCells(5), + 1200, + 480 + ); + + //PTHF + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.TungstophosphoricAcid.get(OrePrefixes.cell, 1), + Materials.Oxygen.getCells(1), + WerkstoffMaterialPool.Tetrahydrofuran.getFluidOrGas(144), + WerkstoffMaterialPool.Polytetrahydrofuran.getFluidOrGas(432), + Materials.Empty.getCells(2), + 1000, + 120 + ); + + //THF + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.AcidicButanediol.get(OrePrefixes.cell, 1), + null, + Materials.Ethanol.getFluid(1000), + WerkstoffMaterialPool.Tetrahydrofuran.getFluidOrGas(1000), + Materials.Empty.getCells(1), + 800, + 480 + ); + + //Acidicised Butanediol + GT_Values.RA.addMixerRecipe( + Materials.SulfuricAcid.getCells(1), + null, + null, + null, + WerkstoffMaterialPool.Butanediol.getFluidOrGas(1000), + WerkstoffMaterialPool.AcidicButanediol.getFluidOrGas(1000), + Materials.Water.getCells(1), + 600, + 2000 + ); + + //Butanediol + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.MoTeOCatalyst.get(OrePrefixes.dustTiny, 1), + null, + Materials.Butane.getGas(1000), + WerkstoffMaterialPool.Butanediol.getFluidOrGas(1000), + null, + 900, + 1920 + ); + + //Moly-Te-Oxide Catalyst + GT_Values.RA.addMixerRecipe( + WerkstoffMaterialPool.MolybdenumIVOxide.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.TelluriumIVOxide.get(OrePrefixes.dust, 1), + null, + null, + null, + null, + WerkstoffMaterialPool.MoTeOCatalyst.get(OrePrefixes.dust, 2), + 300, + 120 + ); + + //Tungstophosphoric Acid + GT_Values.RA.addChemicalRecipe( + Materials.PhosphoricAcid.getCells(1), + Materials.HydrochloricAcid.getCells(24), + BotWerkstoffMaterialPool.SodiumTungstate.getFluidOrGas(12000), + WerkstoffMaterialPool.TungstophosphoricAcid.getFluidOrGas(1000), + Materials.Salt.getDust(24), + Materials.Empty.getCells(25), + 500, + 1024 + ); + + + + //Toluene Diisocyanate + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.Diaminotoluene.get(OrePrefixes.cell, 1), + null, + BotWerkstoffMaterialPool.Phosgene.getFluidOrGas(1000), + WerkstoffMaterialPool.TolueneDiisocyanate.getFluidOrGas(1000), + Materials.HydrochloricAcid.getCells(1), + 900, + 480 + ); + + //Diaminotoluene + GT_Values.RA.addChemicalRecipe( + Materials.Hydrogen.getCells(2), + null, + WerkstoffMaterialPool.Dinitrotoluene.getFluidOrGas(1000), + WerkstoffMaterialPool.Diaminotoluene.getFluidOrGas(1000), + Materials.Empty.getCells(2), + 300, + 480 + ); + + //Dinitrotoluene + GT_Values.RA.addChemicalRecipe( + Materials.NitricAcid.getCells(2), + null, + Materials.Toluene.getFluid(1000), + WerkstoffMaterialPool.Dinitrotoluene.getFluidOrGas(1000), + Materials.Empty.getCells(2), + 900, + 480 + ); + + + + } + + //public static void loadZylon + private static void removeCeriumSources() { GT_Log.out.print(Tags.MODID + ": AAAAAA"); |