aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2019-05-16 19:04:03 +1000
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2019-05-16 19:04:03 +1000
commitfe029e05f6f42360f0e355b0702dcb37734f6500 (patch)
tree7a10a2e5066217023b32c180a2e409c4e7d83225 /src/Java/gtPlusPlus/core
parent4655d15b6ec455b07e1185e656daf78b420d873f (diff)
downloadGT5-Unofficial-fe029e05f6f42360f0e355b0702dcb37734f6500.tar.gz
GT5-Unofficial-fe029e05f6f42360f0e355b0702dcb37734f6500.tar.bz2
GT5-Unofficial-fe029e05f6f42360f0e355b0702dcb37734f6500.zip
+ Added config option for harder Hulls/Casings.
+ Added new refinery processes for Selenium. + Added Selenium Dioxide & Selenious Acid.
Diffstat (limited to 'src/Java/gtPlusPlus/core')
-rw-r--r--src/Java/gtPlusPlus/core/config/ConfigHandler.java5
-rw-r--r--src/Java/gtPlusPlus/core/lib/CORE.java1
-rw-r--r--src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java31
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java50
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java216
5 files changed, 265 insertions, 38 deletions
diff --git a/src/Java/gtPlusPlus/core/config/ConfigHandler.java b/src/Java/gtPlusPlus/core/config/ConfigHandler.java
index 64c8b74b33..8f11a88271 100644
--- a/src/Java/gtPlusPlus/core/config/ConfigHandler.java
+++ b/src/Java/gtPlusPlus/core/config/ConfigHandler.java
@@ -72,7 +72,10 @@ public class ConfigHandler {
enableAnimatedTurbines = config.getBoolean("enableAnimatedTurbines", "gregtech", true,
"Gives GT Gas/Steam turbines animated textures while running.");
turbineCutoffBase = config.getInt("turbineCutoffBase", "gregtech", 75000, 0, Integer.MAX_VALUE, "Rotors below this durability will be removed, prevents NEI clutter. Minimum Durability is N * x, where N is the new value set and x is the turbine size, where 1 is Tiny and 4 is Huge. Set to 0 to disable.");
-
+
+ enableHarderRecipesForHighTierCasings = config.getBoolean("enableHarderRecipesForHighTierCasings", "gregtech", true,
+ "Makes LuV+ Casings and Hulls more difficult to craft.");
+
// Pipes & Cables
enableCustom_Pipes = config.getBoolean("enableCustom_Pipes", "gregtech", true,
"Adds Custom GT Fluid Pipes.");
diff --git a/src/Java/gtPlusPlus/core/lib/CORE.java b/src/Java/gtPlusPlus/core/lib/CORE.java
index 33fe5693f2..38be7d8593 100644
--- a/src/Java/gtPlusPlus/core/lib/CORE.java
+++ b/src/Java/gtPlusPlus/core/lib/CORE.java
@@ -214,6 +214,7 @@ public class CORE {
public static boolean enableNitroFix = false;
public static boolean enableSulfuricAcidFix = false;
public static boolean enableAnimatedTurbines = true;
+ public static boolean enableHarderRecipesForHighTierCasings = true;
//Single Block Machines
public static boolean enableMachine_SolarGenerators = false;
diff --git a/src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java b/src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java
index 05ed942bfa..8eb9e547e4 100644
--- a/src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java
+++ b/src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java
@@ -52,6 +52,37 @@ public final class MISC_MATERIALS {
new MaterialStack(ELEMENT.getInstance().STRONTIUM, 1),
new MaterialStack(FLUORIDES.HYDROXIDE, 2)
});
+
+ public static final Material SELENIUM_DIOXIDE = new Material(
+ "Selenium Dioxide",
+ MaterialState.PURE_LIQUID, //State
+ null, //Material Colour
+ -1, //Melting Point in C
+ -1, //Boiling Point in C
+ -1, //Protons
+ -1,
+ false, //Uses Blast furnace?
+ //Material Stacks with Percentage of required elements.
+ new MaterialStack[]{
+ new MaterialStack(ELEMENT.getInstance().SELENIUM, 1),
+ new MaterialStack(ELEMENT.getInstance().OXYGEN, 2)
+ });
+
+ public static final Material SELENIOUS_ACID = new Material(
+ "Selecious Acid",
+ MaterialState.PURE_LIQUID, //State
+ null, //Material Colour
+ -1, //Melting Point in C
+ -1, //Boiling Point in C
+ -1, //Protons
+ -1,
+ false, //Uses Blast furnace?
+ //Material Stacks with Percentage of required elements.
+ new MaterialStack[]{
+ new MaterialStack(SELENIUM_DIOXIDE, 1),
+ new MaterialStack(ELEMENT.getInstance().HYDROGEN, 8),
+ new MaterialStack(ELEMENT.getInstance().OXYGEN, 4)
+ });
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
index bd19eca5e9..85198f21cc 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
@@ -92,6 +92,17 @@ public class RECIPES_GREGTECH {
latheRecipes();
vacuumFreezerRecipes();
fluidheaterRecipes();
+
+
+ /**
+ * Special Recipe handlers
+ */
+ RECIPES_SeleniumProcessing.init();
+
+
+
+
+
addFuels();
}
@@ -575,7 +586,7 @@ public class RECIPES_GREGTECH {
new ItemStack[] {
CI.emptyCells(1)
},
- 100, //Output Chance
+ new int[] {10000}, //Output Chance
20 * 120,
122880);
@@ -595,41 +606,6 @@ public class RECIPES_GREGTECH {
20 * 300,
4000);
- // Selenium Roasting
- CORE.RA.addBlastSmelterRecipe(
- new ItemStack[] {
- ItemUtils.getGregtechCircuit(16),
- ItemUtils.getItemStackOfAmountFromOreDict("crushedPurifiedPyrite", 8),
- ELEMENT.getInstance().CARBON.getDust(32),
- },
- Materials.SulfuricAcid.getFluid(4000),
- ELEMENT.getInstance().SELENIUM.getFluid(144),
- 0,
- 20 * 300,
- 2000);
- CORE.RA.addBlastSmelterRecipe(
- new ItemStack[] {
- ItemUtils.getGregtechCircuit(17),
- ItemUtils.getItemStackOfAmountFromOreDict("crushedPurifiedChalcopyrite", 8),
- ELEMENT.getInstance().CARBON.getDust(32),
- },
- Materials.SulfuricAcid.getFluid(4000),
- ELEMENT.getInstance().SELENIUM.getFluid(144),
- 0,
- 20 * 300,
- 2000);
- CORE.RA.addBlastSmelterRecipe(
- new ItemStack[] {
- ItemUtils.getGregtechCircuit(18),
- ItemUtils.getItemStackOfAmountFromOreDict("crushedPurifiedGalena", 8),
- ELEMENT.getInstance().CARBON.getDust(32),
- },
- Materials.SulfuricAcid.getFluid(4000),
- ELEMENT.getInstance().SELENIUM.getFluid(144),
- 0,
- 20 * 300,
- 2000);
-
// Ruthenium Roasting
CORE.RA.addBlastSmelterRecipe(
@@ -741,7 +717,7 @@ public class RECIPES_GREGTECH {
ELEMENT.getInstance().ALUMINIUM.getIngot(8),
ELEMENT.getInstance().STRONTIUM.getIngot(8)
},
- 100, //Output Chance
+ new int[] {10000, 10000}, //Output Chance
20 * 120,
480*4);
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java
new file mode 100644
index 0000000000..5489827fe2
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java
@@ -0,0 +1,216 @@
+package gtPlusPlus.core.recipe;
+
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.material.ELEMENT;
+import gtPlusPlus.core.material.MISC_MATERIALS;
+import gtPlusPlus.core.recipe.common.CI;
+import gtPlusPlus.core.util.minecraft.FluidUtils;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+import gtPlusPlus.core.util.minecraft.MaterialUtils;
+import net.minecraft.item.ItemStack;
+
+public class RECIPES_SeleniumProcessing {
+
+ public static void init() {
+
+ //We need this
+ MaterialUtils.generateSpecialDustAndAssignToAMaterial(MISC_MATERIALS.SELENIUM_DIOXIDE);
+
+ // Makes Selenium Dioxide
+ processCopperRecipes();
+
+ //Liquify the Dried Dioxide
+ CORE.RA.addChemicalRecipe(CI.getNumberedCircuit(14), MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1), FluidUtils.getSteam(500), FluidUtils.getDistilledWater(2000), null, MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(1000), 20 * 30 * 2, 1024);
+
+
+ // Produce Selenious Acid
+ CORE.RA.addChemicalRecipe(CI.getNumberedCircuit(14), null, MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(1000), FluidUtils.getHotWater(4000), null, MISC_MATERIALS.SELENIOUS_ACID.getFluid(1000), 20 * 30 * 2, 2048);
+
+ // Make Selenium
+ CORE.RA.addBlastSmelterRecipe(
+ new ItemStack[] {
+ ItemUtils.getGregtechCircuit(14),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellSulfuricAcid", 8),
+ ELEMENT.getInstance().CARBON.getDust(16),
+ },
+ MISC_MATERIALS.SELENIOUS_ACID.getFluid(500),
+ ELEMENT.getInstance().SELENIUM.getFluid(144 * 1),
+ new ItemStack[] {
+ ELEMENT.getInstance().SELENIUM.getIngot(1),
+ ELEMENT.getInstance().SELENIUM.getIngot(1),
+ },
+ new int[] {2000, 2000, 2000},
+ 20 * 300,
+ 7200);
+
+
+ /*// Old recipes for Selenium Roasting
+ CORE.RA.addBlastSmelterRecipe(
+ new ItemStack[] {
+ ItemUtils.getGregtechCircuit(16),
+ ItemUtils.getItemStackOfAmountFromOreDict("crushedPurifiedPyrite", 8),
+ ELEMENT.getInstance().CARBON.getDust(32),
+ },
+ Materials.SulfuricAcid.getFluid(4000),
+ ELEMENT.getInstance().SELENIUM.getFluid(144),
+ 0,
+ 20 * 300,
+ 2000);
+ CORE.RA.addBlastSmelterRecipe(
+ new ItemStack[] {
+ ItemUtils.getGregtechCircuit(17),
+ ItemUtils.getItemStackOfAmountFromOreDict("crushedPurifiedChalcopyrite", 8),
+ ELEMENT.getInstance().CARBON.getDust(32),
+ },
+ Materials.SulfuricAcid.getFluid(4000),
+ ELEMENT.getInstance().SELENIUM.getFluid(144),
+ 0,
+ 20 * 300,
+ 2000);
+ CORE.RA.addBlastSmelterRecipe(
+ new ItemStack[] {
+ ItemUtils.getGregtechCircuit(18),
+ ItemUtils.getItemStackOfAmountFromOreDict("crushedPurifiedGalena", 8),
+ ELEMENT.getInstance().CARBON.getDust(32),
+ },
+ Materials.SulfuricAcid.getFluid(4000),
+ ELEMENT.getInstance().SELENIUM.getFluid(144),
+ 0,
+ 20 * 300,
+ 2000);*/
+ }
+
+
+ public static void processCopperRecipes() {
+
+ //Copper
+ CORE.RA.addDehydratorRecipe(
+ new ItemStack[]{
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Copper, 1), // Item Input
+ },
+ FluidUtils.getHotWater(1000), // Fluid
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(20), // Fluid
+ new ItemStack[] {
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Copper, 1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ }, // Output
+ new int[] {
+ 10000,
+ 100,
+ 100,
+ 500,
+ 500,
+ 500,
+ 1000,
+ 1000,
+ 1000
+ },
+ 40 * 20, // Time in ticks
+ 1024); // EU
+
+
+ //Tetra
+ CORE.RA.addDehydratorRecipe(
+ new ItemStack[]{
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Tetrahedrite, 1), // Item Input
+ },
+ FluidUtils.getHotWater(1000), // Fluid
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(10), // Fluid
+ new ItemStack[] {
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Tetrahedrite, 1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ }, // Output
+ new int[] {
+ 10000,
+ 100,
+ 100,
+ 300,
+ 300,
+ 300,
+ 800,
+ 800,
+ 800
+ },
+ 40 * 20, // Time in ticks
+ 1024); // EU
+ //Chalco
+ CORE.RA.addDehydratorRecipe(
+ new ItemStack[]{
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Chalcopyrite, 1), // Item Input
+ },
+ FluidUtils.getHotWater(1000), // Fluid
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(10), // Fluid
+ new ItemStack[] {
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Chalcopyrite, 1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ }, // Output
+ new int[] {
+ 10000,
+ 100,
+ 100,
+ 300,
+ 300,
+ 300,
+ 800,
+ 800,
+ 800
+ },
+ 40 * 20, // Time in ticks
+ 1024); // EU
+ //Chalco
+ CORE.RA.addDehydratorRecipe(
+ new ItemStack[]{
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Malachite, 1), // Item Input
+ },
+ FluidUtils.getHotWater(1000), // Fluid
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(10), // Fluid
+ new ItemStack[] {
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Malachite, 1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ MISC_MATERIALS.SELENIUM_DIOXIDE.getTinyDust(1),
+ }, // Output
+ new int[] {
+ 10000,
+ 100,
+ 100,
+ 300,
+ 300,
+ 300,
+ 800,
+ 800,
+ 800
+ },
+ 40 * 20, // Time in ticks
+ 1024); // EU
+ }
+
+}