aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2019-08-24 21:21:48 +0100
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2019-08-24 21:21:48 +0100
commitb851ee133b5f0a0d1ca5837d9dac3cdfec922561 (patch)
treeec288dacabbe87a784932508cb81fab6dce88aa3 /src
parent7403427bbb0026962665c2f46d4108ae5777814d (diff)
downloadGT5-Unofficial-b851ee133b5f0a0d1ca5837d9dac3cdfec922561.tar.gz
GT5-Unofficial-b851ee133b5f0a0d1ca5837d9dac3cdfec922561.tar.bz2
GT5-Unofficial-b851ee133b5f0a0d1ca5837d9dac3cdfec922561.zip
+ Added new recipes for Hydrogen Chloride, Sodium Hydroxide, Brine.
+ Added new UV/IR laser lens. $ Fixed Chemical formula not showing up correctly on some mixed materials. $ Fixed Tooltips of Rare Earth materials being too long. $ Fixed Voltage of Rare Earth materials being a tier too high.
Diffstat (limited to 'src')
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java6
-rw-r--r--src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java13
-rw-r--r--src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java14
-rw-r--r--src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java116
-rw-r--r--src/Java/gtPlusPlus/core/material/Material.java21
-rw-r--r--src/Java/gtPlusPlus/core/material/nuclear/FLUORIDES.java55
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java21
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java174
-rw-r--r--src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java7
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java1
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java6
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java31
-rw-r--r--src/resources/assets/miscutils/textures/items/MU-metaitem.01/140.pngbin0 -> 660 bytes
14 files changed, 371 insertions, 96 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index 3b919ee431..007079b9c8 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -565,9 +565,9 @@ public final class ModItems {
MaterialGenerator.generate(ALLOY.TUNGSTEN_TITANIUM_CARBIDE);
//LFTR Fuel components
- MaterialGenerator.generate(FLUORIDES.HYDROXIDE); //LFTR fuel component
- MaterialGenerator.generate(FLUORIDES.AMMONIA); //LFTR fuel component
- MaterialGenerator.generate(FLUORIDES.AMMONIUM); //LFTR fuel component
+ MaterialGenerator.generate(MISC_MATERIALS.HYDROXIDE); //LFTR fuel component
+ MaterialGenerator.generate(MISC_MATERIALS.AMMONIA); //LFTR fuel component
+ MaterialGenerator.generate(MISC_MATERIALS.AMMONIUM); //LFTR fuel component
MaterialGenerator.generate(FLUORIDES.AMMONIUM_BIFLUORIDE); //LFTR fuel component
MaterialGenerator.generate(FLUORIDES.BERYLLIUM_HYDROXIDE); //LFTR fuel component
MaterialGenerator.generate(FLUORIDES.AMMONIUM_TETRAFLUOROBERYLLATE); //LFTR fuel component
diff --git a/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java b/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java
index 90e831cbb4..dc2c0232a6 100644
--- a/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java
+++ b/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java
@@ -169,9 +169,20 @@ public class BaseItemComponent extends Item{
if (this.componentMaterial != null){
- if ((!this.componentMaterial.vChemicalFormula.equals("??")) && (!this.componentMaterial.vChemicalFormula.equals("?")) && (this.componentMaterial.getState() != MaterialState.PURE_LIQUID)) {
+ if (!this.componentMaterial.vChemicalFormula.contains("?") && this.componentMaterial.getState() != MaterialState.PURE_LIQUID) {
list.add(Utils.sanitizeStringKeepBrackets(this.componentMaterial.vChemicalFormula));
}
+ else if (this.componentMaterial.vChemicalFormula.contains("?") && this.componentMaterial.getState() != MaterialState.PURE_LIQUID) {
+ String temp = componentMaterial.vChemicalFormula;
+ temp = temp.replace(" ", "");
+ temp = temp.replace("-", "");
+ temp = temp.replace("_", "");
+ temp = temp.replace("!", "");
+ temp = temp.replace("@", "");
+ temp = temp.replace("#", "");
+ temp = temp.replace(" ", "");
+ list.add(temp);
+ }
if (this.componentMaterial.isRadioactive){
list.add(CORE.GT_Tooltip_Radioactive);
diff --git a/src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java b/src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java
index 277114a6ae..c5b7191ddd 100644
--- a/src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java
+++ b/src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java
@@ -128,10 +128,20 @@ public class BaseOreComponent extends Item{
public final void addInformation(final ItemStack stack, final EntityPlayer aPlayer, final List list, final boolean bool) {
if (this.materialName != null && !this.materialName.equals("")){
if (this.componentMaterial != null){
- if (!this.componentMaterial.vChemicalFormula.equals("??") && !this.componentMaterial.vChemicalFormula.equals("?") && this.componentMaterial.getState() != MaterialState.PURE_LIQUID) {
+ if (!this.componentMaterial.vChemicalFormula.contains("?") && this.componentMaterial.getState() != MaterialState.PURE_LIQUID) {
list.add(Utils.sanitizeStringKeepBrackets(this.componentMaterial.vChemicalFormula));
}
-
+ else if (this.componentMaterial.vChemicalFormula.contains("?") && this.componentMaterial.getState() != MaterialState.PURE_LIQUID) {
+ String temp = componentMaterial.vChemicalFormula;
+ temp = temp.replace(" ", "");
+ temp = temp.replace("-", "");
+ temp = temp.replace("_", "");
+ temp = temp.replace("!", "");
+ temp = temp.replace("@", "");
+ temp = temp.replace("#", "");
+ temp = temp.replace(" ", "");
+ list.add(temp);
+ }
if (this.componentMaterial.isRadioactive){
list.add(CORE.GT_Tooltip_Radioactive+" | Level: "+this.componentMaterial.vRadiationLevel);
}
diff --git a/src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java b/src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java
index 236af1b060..aa80f784a9 100644
--- a/src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java
+++ b/src/Java/gtPlusPlus/core/material/MISC_MATERIALS.java
@@ -3,8 +3,8 @@ package gtPlusPlus.core.material;
import gregtech.api.enums.Materials;
import gregtech.api.enums.TextureSet;
import gtPlusPlus.core.client.CustomTextureSet.TextureSets;
-import gtPlusPlus.core.material.nuclear.FLUORIDES;
import gtPlusPlus.core.material.state.MaterialState;
+import gtPlusPlus.core.util.minecraft.FluidUtils;
import gtPlusPlus.core.util.minecraft.MaterialUtils;
public final class MISC_MATERIALS {
@@ -17,6 +17,7 @@ public final class MISC_MATERIALS {
public static void run() {
MaterialUtils.generateSpecialDustAndAssignToAMaterial(STRONTIUM_OXIDE, false);
MaterialUtils.generateSpecialDustAndAssignToAMaterial(STRONTIUM_HYDROXIDE, false);
+ WATER.registerComponentForMaterial(FluidUtils.getWater(1000));
}
public static final Material STRONTIUM_OXIDE = new Material(
@@ -52,7 +53,7 @@ public final class MISC_MATERIALS {
false,
new MaterialStack[]{
new MaterialStack(ELEMENT.getInstance().STRONTIUM, 1),
- new MaterialStack(FLUORIDES.HYDROXIDE, 2)
+ new MaterialStack(MISC_MATERIALS.HYDROXIDE, 2)
});
public static final Material SELENIUM_DIOXIDE = new Material(
@@ -116,14 +117,12 @@ public final class MISC_MATERIALS {
new MaterialStack(ELEMENT.getInstance().CARBON, 1),
new MaterialStack(ELEMENT.getInstance().OXYGEN, 2)
});
-
-
-
-
+
+
/*
* Rare Earth Materials
*/
-
+
public static final Material RARE_EARTH_LOW = new Material(
"Rare Earth (I)", //Material Name
MaterialState.ORE, //State
@@ -145,7 +144,7 @@ public final class MISC_MATERIALS {
new MaterialStack(MaterialUtils.generateMaterialFromGtENUM(Materials.Cobaltite), 1),
new MaterialStack(ELEMENT.STANDALONE.BLACK_METAL, 1)
});
-
+
public static final Material RARE_EARTH_MID = new Material(
"Rare Earth (II)", //Material Name
MaterialState.ORE, //State
@@ -167,7 +166,7 @@ public final class MISC_MATERIALS {
new MaterialStack(ELEMENT.STANDALONE.WHITE_METAL, 1),
new MaterialStack(ELEMENT.STANDALONE.RUNITE, 1)
});
-
+
public static final Material RARE_EARTH_HIGH = new Material(
"Rare Earth (III)", //Material Name
MaterialState.ORE, //State
@@ -190,6 +189,105 @@ public final class MISC_MATERIALS {
new MaterialStack(ORES.AGARDITE_LA, 1),
});
+ public static final Material WATER = new Material(
+ "Water",
+ MaterialState.PURE_LIQUID,
+ new MaterialStack[]{
+ new MaterialStack(ELEMENT.getInstance().HYDROGEN, 2),
+ new MaterialStack(ELEMENT.getInstance().OXYGEN, 1)
+ });
+
+ //OH
+ public static final Material HYDROXIDE = new Material(
+ "Hydroxide", //Material Name
+ 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().OXYGEN, 1),
+ new MaterialStack(ELEMENT.getInstance().HYDROGEN, 1)
+ });
+
+ //NH3
+ public static final Material AMMONIA = new Material(
+ "Ammonia", //Material Name
+ MaterialState.PURE_LIQUID, //State
+ null, //Material Colour
+ -77, //Melting Point in C
+ -33, //Boiling Point in C
+ -1, //Protons
+ -1,
+ false, //Uses Blast furnace?
+ //Material Stacks with Percentage of required elements.
+ new MaterialStack[]{
+ new MaterialStack(ELEMENT.getInstance().NITROGEN, 1),
+ new MaterialStack(ELEMENT.getInstance().HYDROGEN, 3)
+ });
+
+ //NH4
+ public static final Material AMMONIUM = new Material(
+ "Ammonium", //Material Name
+ 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().NITROGEN, 1),
+ new MaterialStack(ELEMENT.getInstance().HYDROGEN, 4)
+ });
+
+
+ public static final Material HYDROGEN_CHLORIDE = new Material(
+ "Hydrogen Chloride",
+ MaterialState.PURE_LIQUID,
+ new MaterialStack[]{
+ new MaterialStack(ELEMENT.getInstance().HYDROGEN, 1),
+ new MaterialStack(ELEMENT.getInstance().CHLORINE, 1),
+ });
+
+
+ public static final Material SODIUM_CHLORIDE = new Material(
+ "Sodium Chloride",
+ MaterialState.PURE_LIQUID,
+ new MaterialStack[]{
+ new MaterialStack(ELEMENT.getInstance().SODIUM, 1),
+ new MaterialStack(ELEMENT.getInstance().CHLORINE, 1),
+ });
+
+
+ public static final Material SODIUM_HYDROXIDE = new Material(
+ "Sodium Hydroxide",
+ MaterialState.PURE_LIQUID,
+ new MaterialStack[]{
+ new MaterialStack(ELEMENT.getInstance().SODIUM, 1),
+ new MaterialStack(HYDROXIDE, 1),
+ });
+
+ public static final Material SALT_WATER = new Material(
+ "Salt Water",
+ MaterialState.PURE_LIQUID,
+ new MaterialStack[]{
+ new MaterialStack(WATER, 3),
+ new MaterialStack(SODIUM_CHLORIDE, 1),
+ });
+
+ public static final Material BRINE = new Material(
+ "Brine",
+ MaterialState.PURE_LIQUID,
+ new MaterialStack[]{
+ new MaterialStack(SALT_WATER, 1),
+ new MaterialStack(SODIUM_CHLORIDE, 2),
+ });
+
}
diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java
index 5fca2fb2fe..904d1fb4df 100644
--- a/src/Java/gtPlusPlus/core/material/Material.java
+++ b/src/Java/gtPlusPlus/core/material/Material.java
@@ -85,8 +85,17 @@ public class Material {
public static AutoMap<Materials> invalidMaterials = new AutoMap<Materials>();
+
+
+ public Material(final String materialName, final MaterialState defaultState, final MaterialStack... inputs){
+ this(materialName, defaultState, null, inputs);
+ }
+
+ public Material(final String materialName, final MaterialState defaultState, final short[] rgba, final MaterialStack... inputs){
+ this(materialName, defaultState, null, 0, rgba, -1, -1, -1, -1, false, "", 0, false, false, inputs);
+ }
- public Material(String materialName, MaterialState defaultState, short[] rgba, int radiationLevel, MaterialStack[] materialStacks) {
+ public Material(final String materialName, final MaterialState defaultState, final short[] rgba, int radiationLevel, MaterialStack... materialStacks) {
this(materialName, defaultState, null, 0, rgba, -1, -1, -1, -1, false, "", radiationLevel, false, materialStacks);
}
@@ -1335,7 +1344,17 @@ public class Material {
}
+ public boolean registerComponentForMaterial(FluidStack aStack) {
+ return registerComponentForMaterial(this, aStack);
+ }
+ private static boolean registerComponentForMaterial(Material componentMaterial, FluidStack aStack) {
+ if (componentMaterial != null && aStack != null && componentMaterial.vMoltenFluid == null) {
+ componentMaterial.vMoltenFluid = aStack.getFluid();
+ return true;
+ }
+ return false;
+ }
public boolean registerComponentForMaterial(ComponentTypes aPrefix, ItemStack aStack) {
return registerComponentForMaterial(this, aPrefix.getGtOrePrefix(), aStack);
diff --git a/src/Java/gtPlusPlus/core/material/nuclear/FLUORIDES.java b/src/Java/gtPlusPlus/core/material/nuclear/FLUORIDES.java
index b7a5f6074d..bfa08d3c29 100644
--- a/src/Java/gtPlusPlus/core/material/nuclear/FLUORIDES.java
+++ b/src/Java/gtPlusPlus/core/material/nuclear/FLUORIDES.java
@@ -3,6 +3,7 @@ package gtPlusPlus.core.material.nuclear;
import gregtech.api.enums.Materials;
import gregtech.api.enums.TextureSet;
import gtPlusPlus.core.material.ELEMENT;
+import gtPlusPlus.core.material.MISC_MATERIALS;
import gtPlusPlus.core.material.Material;
import gtPlusPlus.core.material.MaterialStack;
import gtPlusPlus.core.material.state.MaterialState;
@@ -166,54 +167,6 @@ public class FLUORIDES {
//LFTR sub components
- //OH
- public static final Material HYDROXIDE = new Material(
- "Hydroxide", //Material Name
- 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().OXYGEN, 1),
- new MaterialStack(ELEMENT.getInstance().HYDROGEN, 1)
- });
-
- //NH3
- public static final Material AMMONIA = new Material(
- "Ammonia", //Material Name
- MaterialState.PURE_LIQUID, //State
- null, //Material Colour
- -77, //Melting Point in C
- -33, //Boiling Point in C
- -1, //Protons
- -1,
- false, //Uses Blast furnace?
- //Material Stacks with Percentage of required elements.
- new MaterialStack[]{
- new MaterialStack(ELEMENT.getInstance().NITROGEN, 1),
- new MaterialStack(ELEMENT.getInstance().HYDROGEN, 3)
- });
-
- //NH4
- public static final Material AMMONIUM = new Material(
- "Ammonium", //Material Name
- 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().NITROGEN, 1),
- new MaterialStack(ELEMENT.getInstance().HYDROGEN, 4)
- });
-
//(NH4)HF2
public static final Material AMMONIUM_BIFLUORIDE = new Material(
"Ammonium Bifluoride", //Material Name
@@ -226,7 +179,7 @@ public class FLUORIDES {
false, //Uses Blast furnace?
//Material Stacks with Percentage of required elements.
new MaterialStack[]{
- new MaterialStack(FLUORIDES.AMMONIUM, 1),
+ new MaterialStack(MISC_MATERIALS.AMMONIUM, 1),
new MaterialStack(ELEMENT.getInstance().HYDROGEN, 1),
new MaterialStack(ELEMENT.getInstance().FLUORINE, 2)
});
@@ -244,7 +197,7 @@ public class FLUORIDES {
//Material Stacks with Percentage of required elements.
new MaterialStack[]{
new MaterialStack(ELEMENT.getInstance().BERYLLIUM, 1),
- new MaterialStack(FLUORIDES.HYDROXIDE, 2)
+ new MaterialStack(MISC_MATERIALS.HYDROXIDE, 2)
});
// (NH4)2Be(OH)2 / (NH4)2BeF4
@@ -259,7 +212,7 @@ public class FLUORIDES {
false, //Uses Blast furnace?
//Material Stacks with Percentage of required elements.
new MaterialStack[]{
- new MaterialStack(FLUORIDES.AMMONIUM, 2),
+ new MaterialStack(MISC_MATERIALS.AMMONIUM, 2),
new MaterialStack(FLUORIDES.BERYLLIUM_HYDROXIDE, 1)
});
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
index a481ff17bf..3d36ffb2ab 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
@@ -724,6 +724,26 @@ public class RECIPES_GREGTECH {
480*4);
+ //Wood's Glass Laser Lens
+ CORE.RA.addBlastSmelterRecipe(
+ new ItemStack[] {
+ ItemUtils.getGregtechCircuit(5),
+ ItemList.Shape_Mold_Ball.get(0),
+ ELEMENT.getInstance().BARIUM.getDust(1),
+ ELEMENT.getInstance().SODIUM.getDust(1),
+ ELEMENT.getInstance().SILICON.getDust(2),
+ ELEMENT.getInstance().NICKEL.getDust(1),
+ ItemUtils.getItemStackOfAmountFromOreDict("dustGlass", 5)
+ },
+ FluidUtils.getUUM(1000),
+ null,
+ new ItemStack[] {
+ GregtechItemList.Laser_Lens_WoodsGlass.get(1)
+ },
+ new int[] {10000},
+ 20 * 300,
+ (int) GT_Values.V[3]);
+
}
@@ -1893,7 +1913,6 @@ public class RECIPES_GREGTECH {
Materials.Titanium.mBlastFurnaceTemp);
}
-
}
private static void autoclaveRecipes() {
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java
index f8059f8217..d3c0b4c093 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java
@@ -1,46 +1,168 @@
package gtPlusPlus.core.recipe;
+import static gtPlusPlus.core.material.MISC_MATERIALS.BRINE;
+import static gtPlusPlus.core.material.MISC_MATERIALS.HYDROGEN_CHLORIDE;
import static gtPlusPlus.core.material.MISC_MATERIALS.RARE_EARTH_HIGH;
import static gtPlusPlus.core.material.MISC_MATERIALS.RARE_EARTH_LOW;
import static gtPlusPlus.core.material.MISC_MATERIALS.RARE_EARTH_MID;
+import static gtPlusPlus.core.material.MISC_MATERIALS.SALT_WATER;
+import static gtPlusPlus.core.material.MISC_MATERIALS.SODIUM_CHLORIDE;
+import static gtPlusPlus.core.material.MISC_MATERIALS.SODIUM_HYDROXIDE;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_OreDictUnificator;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.material.ELEMENT;
+import gtPlusPlus.core.material.MISC_MATERIALS;
import gtPlusPlus.core.material.MaterialGenerator;
import gtPlusPlus.core.material.ORES;
+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;
import net.minecraftforge.fluids.Fluid;
+import net.minecraftforge.fluids.FluidStack;
public class RECIPES_RareEarthProcessing {
- public static void init() {
+ private static ItemStack mDustSodiumHydroxide;
+ private static ItemStack mDustSalt;
+ private static FluidStack mSaltWater;
+ private static FluidStack mBrine;
+ private static FluidStack mHydrogenChloride;
- // Set Material Tiers correctly
- ORES.GREENOCKITE.vTier = 1;
- RARE_EARTH_LOW.vTier = 1;
- RARE_EARTH_MID.vTier = 3;
- RARE_EARTH_HIGH.vTier = 5;
+ public static void init() {
- // Set Material Voltages correctly
- ORES.GREENOCKITE.vVoltageMultiplier = 30;
- RARE_EARTH_LOW.vVoltageMultiplier = 30;
- RARE_EARTH_MID.vVoltageMultiplier = 480;
- RARE_EARTH_HIGH.vVoltageMultiplier = 7680;
+ // Salt Check and Assignment
+ mDustSalt = ItemUtils.getItemStackOfAmountFromOreDict("dustSalt", 1);
+ if (mDustSalt == null) {
+ MaterialUtils.generateSpecialDustAndAssignToAMaterial(SODIUM_CHLORIDE, false);
+ mDustSalt = SODIUM_CHLORIDE.getDust(1);
+ }
+ else {
+ SODIUM_CHLORIDE.registerComponentForMaterial(OrePrefixes.dust, mDustSalt);
+ }
- // Generate Ore Materials
+ // Salt water Check and Assignment
+ mSaltWater = FluidUtils.getFluidStack("saltwater", 1000);
+ if (mSaltWater == null) {
+ Fluid f = SALT_WATER.generateFluid();
+ SALT_WATER.registerComponentForMaterial(FluidUtils.getFluidStack(f, 1000));
+ mSaltWater = SALT_WATER.getFluid(1000);
+ }
+ else {
+ SALT_WATER.registerComponentForMaterial(FluidUtils.getFluidStack(mSaltWater, 1000));
+ }
+
+ // Brine Check and assignment
+ mBrine = FluidUtils.getFluidStack("brine", 1000);
+ if (mBrine == null) {
+ Fluid f = BRINE.generateFluid();
+ BRINE.registerComponentForMaterial(FluidUtils.getFluidStack(f, 1000));
+ mBrine = BRINE.getFluid(1000);
+ }
+ else {
+ BRINE.registerComponentForMaterial(FluidUtils.getFluidStack(mBrine, 1000));
+ }
+
+ // Check Sodium Hydroxide Exists, generate if not.
+ mDustSodiumHydroxide = ItemUtils.getItemStackOfAmountFromOreDict("dustSodiumHydroxide", 1);
+ if (mDustSodiumHydroxide == null) {
+ mDustSodiumHydroxide = ItemUtils.getItemStackOfAmountFromOreDict("dustSodiumHydroxide_GT5U", 1);
+ if (mDustSodiumHydroxide == null) {
+ MaterialUtils.generateSpecialDustAndAssignToAMaterial(SODIUM_HYDROXIDE, false);
+ mDustSodiumHydroxide = SODIUM_HYDROXIDE.getDust(1);
+ }
+ else {
+ SODIUM_HYDROXIDE.registerComponentForMaterial(OrePrefixes.dust, mDustSodiumHydroxide);
+ }
+ }
+ else {
+ SODIUM_HYDROXIDE.registerComponentForMaterial(OrePrefixes.dust, mDustSodiumHydroxide);
+ }
+
+ // Hydrogen Chloride Check and assignment
+ mHydrogenChloride = FluidUtils.getFluidStack("hydrogenchloride", 1000);
+ if (mHydrogenChloride == null) {
+ HYDROGEN_CHLORIDE.generateFluid();
+ mHydrogenChloride = BRINE.getFluid(1000);
+ }
+ else {
+ HYDROGEN_CHLORIDE.registerComponentForMaterial(FluidUtils.getFluidStack(mHydrogenChloride, 1000));
+ }
+
+
+ // Add Process for creating Brine
+ CORE.RA.addBrewingRecipe(
+ ItemUtils.getSimpleStack(mDustSalt, 16),
+ MISC_MATERIALS.SALT_WATER.getFluid(2000),
+ FluidUtils.getFluidStack(mBrine, 4000),
+ 20 * 20,
+ 120,
+ false);
+
+ // Chloralkali process
+ GT_Values.RA.addElectrolyzerRecipe(
+ CI.getNumberedCircuit(16),
+ CI.emptyCells(4),
+ FluidUtils.getFluidStack(mBrine, 4000),
+ null, // Out
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChlorine", 2),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogen", 2),
+ ItemUtils.getSimpleStack(mDustSodiumHydroxide, 2),
+ null,
+ null,
+ null,
+ new int[] {10000, 10000, 10000},
+ 20 * 30,
+ (int) GT_Values.V[2]);
+
+ // Generate Special Laser Recipe
+ CORE.RA.addUvLaserRecipe(
+ ELEMENT.getInstance().CHLORINE.getCell(2),
+ ELEMENT.getInstance().HYDROGEN.getCell(2),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogenChloride", 4),
+ 20 * 30,
+ 480);
+
+
+ // Set Material Tiers correctly
+ ORES.GREENOCKITE.vTier = 1;
+ RARE_EARTH_LOW.vTier = 1;
+ RARE_EARTH_MID.vTier = 3;
+ RARE_EARTH_HIGH.vTier = 5;
+
+ // Set Material Voltages correctly
+ ORES.GREENOCKITE.vVoltageMultiplier = 30;
+ RARE_EARTH_LOW.vVoltageMultiplier = 30;
+ RARE_EARTH_MID.vVoltageMultiplier = 480;
+ RARE_EARTH_HIGH.vVoltageMultiplier = 7680;
+
+ // Set Material Tooltips to be shorter
+ RARE_EARTH_LOW.vChemicalFormula = "??????";
+ RARE_EARTH_MID.vChemicalFormula = "??????";
+ RARE_EARTH_HIGH.vChemicalFormula = "??????";
+
+ // Set Material Tooltips to be shorter
+ RARE_EARTH_LOW.vChemicalSymbol = "??";
+ RARE_EARTH_MID.vChemicalSymbol = "??";
+ RARE_EARTH_HIGH.vChemicalSymbol = "??";
+
+ // Generate Ore Materials
MaterialGenerator.generateOreMaterial(RARE_EARTH_LOW);
MaterialGenerator.generateOreMaterial(RARE_EARTH_MID);
MaterialGenerator.generateOreMaterial(RARE_EARTH_HIGH);
-
+
ItemStack aRareEarth = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 1L);
-
+
Fluid aSulfuric = FluidUtils.getFluidStack("sulfuricacid", 1).getFluid();
- Fluid aHydrocholric = FluidUtils.getFluidStack("hydrochloricacid_gt5u", 1).getFluid();
- Fluid aNitric = FluidUtils.getFluidStack("nitricacid", 1).getFluid();
+ Fluid aHydrocholric = FluidUtils.getFluidStack("hydrogenchloride", 1).getFluid();
+ Fluid aNitric = FluidUtils.getFluidStack("hydrofluoricacid", 1).getFluid();
+
+
// LV Rare Earth
GT_Values.RA.addChemicalBathRecipe(
@@ -52,7 +174,7 @@ public class RECIPES_RareEarthProcessing {
new int[] {10000, 10000, 9000},
20 * 30,
(int) GT_Values.V[1]);
-
+
// HV Rare Earth
GT_Values.RA.addChemicalBathRecipe(
ItemUtils.getSimpleStack(aRareEarth, 6),
@@ -63,7 +185,7 @@ public class RECIPES_RareEarthProcessing {
new int[] {10000, 9000, 8000},
20 * 60,
(int) GT_Values.V[3]);
-
+
// IV Rare Earth
GT_Values.RA.addChemicalBathRecipe(
ItemUtils.getSimpleStack(aRareEarth, 9),
@@ -74,12 +196,12 @@ public class RECIPES_RareEarthProcessing {
new int[] {9000, 8000, 7000},
20 * 90,
(int) GT_Values.V[5]);
-
-
- }
-
-
- public static void processCopperRecipes() {
+
+
+ }
+
+
+ public static void processCopperRecipes() {
// Rare Earth Processing
/*GT_Values.RA.addSifterRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustRareEarth", 1),
@@ -98,7 +220,7 @@ public class RECIPES_RareEarthProcessing {
//ELEMENT.getInstance().GADOLINIUM.getTinyDust(1)
},
new int[] { 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000 }, 20 * 30, 500);*/
-
- }
+
+ }
}
diff --git a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java
index cd5583e223..25d1eb2793 100644
--- a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java
+++ b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java
@@ -221,7 +221,12 @@ public class ItemUtils {
if (size < 0 || size > 64) {
size = 1;
}
- Logger.INFO("Found Metastack: " + item.getUnlocalizedName() + ":" + meta);
+ //Logger.INFO("Found Metastack: " + item.getUnlocalizedName() + ":" + meta);
+ //Logger.INFO(""+ReflectionUtils.getMethodName(0));
+ //Logger.INFO(""+ReflectionUtils.getMethodName(1));
+ //Logger.INFO(""+ReflectionUtils.getMethodName(2));
+ //Logger.INFO(""+ReflectionUtils.getMethodName(3));
+ //Logger.INFO(""+ReflectionUtils.getMethodName(4));
final ItemStack metaStack = new ItemStack(item, size, meta);
return metaStack;
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java b/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java
index 93d81034f6..726fc1869d 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java
@@ -102,6 +102,7 @@ public enum GregtechItemList implements GregtechItemContainer {
Carbyne_Sheet_Finished,
//End Game Laser Engraver Lens
+ Laser_Lens_WoodsGlass,
Laser_Lens_Special,
//Bombs
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java b/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java
index 0df892828e..94ddda283d 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java
@@ -255,7 +255,11 @@ public interface IGregtech_RecipeAdder {
public boolean addFusionReactorRecipe(ItemStack aInputStackA, ItemStack aInputStackB, FluidStack plasma, int aOutputChance, int aFusionDurationInTicks, int aEu, int aSpecial);
- boolean addVacuumFurnaceRecipe(ItemStack aInput1, ItemStack aInput2,
+ public boolean addVacuumFurnaceRecipe(ItemStack aInput1, ItemStack aInput2,
FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1,
ItemStack aOutput2, int aDuration, int aEUt, int aLevel);
+
+
+ public boolean addUvLaserRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int time, long eu);
+ public boolean addIrLaserRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int time, long eu);
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java b/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java
index 8fc5996c6e..db691cefc7 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java
@@ -337,6 +337,8 @@ public class MetaGeneratedGregtechItems extends Gregtech_MetaItem_X32 {
GregTech_API.registerCover(mMachineCasingCovers[i].get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[i][0]}), new GTPP_Cover_ToggleVisual());
}
}
+ GregtechItemList.Laser_Lens_WoodsGlass.set(this.addItem(140, "Wood's Glass Lens", "Allows UV & IF to pass through, blocks visible light spectrums", new Object[0]));
+
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java
index b8c791b1a0..83704b6af9 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java
@@ -19,11 +19,13 @@ import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.api.objects.data.AutoMap;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.LoadedMods;
+import gtPlusPlus.core.material.ELEMENT;
import gtPlusPlus.core.material.MaterialGenerator;
import gtPlusPlus.core.recipe.common.CI;
import gtPlusPlus.core.util.data.ArrayUtils;
import gtPlusPlus.core.util.minecraft.ItemUtils;
import gtPlusPlus.core.util.reflect.ReflectionUtils;
+import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList;
import gtPlusPlus.xmod.gregtech.api.interfaces.internal.IGregtech_RecipeAdder;
import gtPlusPlus.xmod.gregtech.common.StaticFields59;
import gtPlusPlus.xmod.gregtech.recipes.machines.RECIPEHANDLER_MatterFabricator;
@@ -1115,6 +1117,35 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder {
}
}
+ @Override
+ public boolean addUvLaserRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int time, long eu) {
+ // Generate Special Laser Recipe
+ GT_Recipe u = new Recipe_GT(
+ false,
+ new ItemStack[] {
+ aInput1,
+ aInput2,
+ },
+ new ItemStack[] {
+ aOutput
+ },
+ GregtechItemList.Laser_Lens_WoodsGlass.get(1),
+ new int[] {
+ 10000
+ },
+ new FluidStack[] {},
+ new FluidStack[] {},
+ time,
+ (int) eu,
+ 0);
+ return GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes.mRecipeList.add(u);
+ }
+
+ @Override
+ public boolean addIrLaserRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int time, long eu) {
+ return addUvLaserRecipe(aInput1, aInput2, aOutput, time, eu);
+ }
+
diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/140.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/140.png
new file mode 100644
index 0000000000..8b38dcd9ce
--- /dev/null
+++ b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/140.png
Binary files differ