aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/material
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus/core/material')
-rw-r--r--src/Java/gtPlusPlus/core/material/ALLOY.java4
-rw-r--r--src/Java/gtPlusPlus/core/material/ELEMENT.java2
-rw-r--r--src/Java/gtPlusPlus/core/material/Material.java53
-rw-r--r--src/Java/gtPlusPlus/core/material/MaterialGenerator.java5
4 files changed, 53 insertions, 11 deletions
diff --git a/src/Java/gtPlusPlus/core/material/ALLOY.java b/src/Java/gtPlusPlus/core/material/ALLOY.java
index 5e29a75725..54c8017b18 100644
--- a/src/Java/gtPlusPlus/core/material/ALLOY.java
+++ b/src/Java/gtPlusPlus/core/material/ALLOY.java
@@ -122,7 +122,7 @@ public final class ALLOY {
new MaterialStack(ELEMENT.getInstance().TIN, 20)
});
- public static final Material BEDROCKIUM = new Material(
+ /*public static final Material BEDROCKIUM = new Material(
"Bedrockium", //Material Name
new short[]{32, 32, 32, 0}, //Material Colour
7735, //Melting Point in C
@@ -131,7 +131,7 @@ public final class ALLOY {
100, //Neutrons
false, //Uses Blast furnace?
//Material Stacks with Percentage of required elements.
- null);
+ null);*/
public static final Material INCONEL_625 = new Material(
"Inconel-625", //Material Name
diff --git a/src/Java/gtPlusPlus/core/material/ELEMENT.java b/src/Java/gtPlusPlus/core/material/ELEMENT.java
index 8d42279e5a..f3e695478b 100644
--- a/src/Java/gtPlusPlus/core/material/ELEMENT.java
+++ b/src/Java/gtPlusPlus/core/material/ELEMENT.java
@@ -98,7 +98,7 @@ public final class ELEMENT {
public final Material PLATINUM = MaterialUtils.generateMaterialFromGtENUM(Materials.Platinum);
public final Material GOLD = MaterialUtils.generateMaterialFromGtENUM(Materials.Gold);
public final Material MERCURY = MaterialUtils.generateMaterialFromGtENUM(Materials.Mercury); //Mercury
- public final Material THALLIUM = new Material("Thallium", 25600, new short[]{175, 175, 175}, 304, 1457, 81, 123, false, "tl", 0);//Not a GT Inherited Material
+ public final Material THALLIUM = new Material("Thallium", 25600, new short[]{175, 175, 175}, 304, 1457, 81, 123, false, "Tl", 0);//Not a GT Inherited Material
public final Material LEAD = MaterialUtils.generateMaterialFromGtENUM(Materials.Lead);
public final Material BISMUTH = MaterialUtils.generateMaterialFromGtENUM(Materials.Bismuth);
public final Material POLONIUM = new Material("Polonium", 25600, new short[]{180, 170, 180}, 254, 962, 84, 125, false, "Po", 1);//Not a GT Inherited Material
diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java
index d21a133690..6f111b6551 100644
--- a/src/Java/gtPlusPlus/core/material/Material.java
+++ b/src/Java/gtPlusPlus/core/material/Material.java
@@ -23,12 +23,14 @@ public class Material {
private final String localizedName;
private final Fluid vMoltenFluid;
+ private final Fluid vPlasma;
protected Object dataVar = MathUtils.generateSingularRandomHexValue();
private ArrayList<MaterialStack> vMaterialInput = new ArrayList<MaterialStack>();
public final long[] vSmallestRatio;
-
+ public final short vComponentCount;
+
private final short[] RGBA;
private final boolean usesBlastFurnace;
@@ -47,7 +49,7 @@ public class Material {
public final int vVoltageMultiplier;
public final String vChemicalFormula;
public final String vChemicalSymbol;
-
+
public final long vDurability;
public final int vToolQuality;
public final int vHarvestLevel;
@@ -99,11 +101,12 @@ public class Material {
if (m.getStackMaterial().vDurability != 0){
durabilityTemp = (durabilityTemp+m.getStackMaterial().vDurability);
counterTemp++;
+
}
}
}
if (durabilityTemp != 0 && counterTemp != 0){
- this.vDurability = (durabilityTemp/counterTemp);
+ this.vDurability = (durabilityTemp/counterTemp);
}
else {
this.vDurability = 8196;
@@ -113,7 +116,7 @@ public class Material {
this.vDurability = 0;
}
}
-
+
if (this.vDurability >= 0 && this.vDurability < 64000){
this.vToolQuality = 1;
this.vHarvestLevel = 2;
@@ -168,6 +171,7 @@ public class Material {
}
}
+ this.vComponentCount = getComponentCount(inputs);
this.vSmallestRatio = getSmallestRatio(vMaterialInput);
int tempSmallestSize = 0;
@@ -200,21 +204,20 @@ public class Material {
if (isValid == Materials._NULL){
this.vMoltenFluid = generateFluid();
}
- else {
+ else {
if (isValid.mFluid != null){
this.vMoltenFluid = isValid.mFluid;
}
else if (isValid.mGas != null){
this.vMoltenFluid = isValid.mGas;
}
- /*else if (isValid.mPlasma != null){
- this.vMoltenFluid = isValid.mPlasma;
- }*/
else {
this.vMoltenFluid = generateFluid();
}
}
+ this.vPlasma = generatePlasma();
+
//dataVar = MathUtils.generateSingularRandomHexValue();
String ratio = "";
@@ -369,6 +372,10 @@ public class Material {
return ItemUtils.getItemStackOfAmountFromOreDictNoBroken("cell"+unlocalizedName, stacksize);
}
+ public final ItemStack getPlasmaCell(int stacksize){
+ return ItemUtils.getItemStackOfAmountFromOreDictNoBroken("cellPlasma"+unlocalizedName, stacksize);
+ }
+
public final ItemStack getNugget(int stacksize){
return ItemUtils.getItemStackOfAmountFromOreDictNoBroken("nugget"+unlocalizedName, stacksize);
}
@@ -418,6 +425,21 @@ public class Material {
}
return new int[]{};
}
+
+ private final short getComponentCount(MaterialStack[] inputs){
+ int counterTemp = 0;
+ for (MaterialStack m : inputs){
+ if (m.getStackMaterial() != null){
+ counterTemp++;
+ }
+ }
+ if (counterTemp != 0){
+ return (short) counterTemp;
+ }
+ else {
+ return 1;
+ }
+ }
@SuppressWarnings("static-method")
@@ -538,6 +560,21 @@ public class Material {
return Materials.get(localizedName).mFluid;
}
+ public final Fluid generatePlasma(){
+ Materials isValid = Materials.get(getLocalizedName());
+ if (isValid != Materials._NULL && isValid != null){
+ if (isValid.mPlasma != null){
+ Utils.LOG_INFO("Using a pre-defined Plasma from GT.");
+ return isValid.mPlasma;
+ }
+ }
+ Utils.LOG_INFO("Generating our own Plasma.");
+ return FluidUtils.addGTPlasma(this);
+ //return null;
+ }
+
+
+
final public FluidStack getFluid(int fluidAmount) {
Utils.LOG_WARNING("Attempting to get "+fluidAmount+"L of "+this.vMoltenFluid.getName());
FluidStack moltenFluid = new FluidStack(this.vMoltenFluid, fluidAmount);
diff --git a/src/Java/gtPlusPlus/core/material/MaterialGenerator.java b/src/Java/gtPlusPlus/core/material/MaterialGenerator.java
index eab0a301d8..a8d8f2bd82 100644
--- a/src/Java/gtPlusPlus/core/material/MaterialGenerator.java
+++ b/src/Java/gtPlusPlus/core/material/MaterialGenerator.java
@@ -27,7 +27,12 @@ public class MaterialGenerator {
generate(matInfo, true);
}
+
public static void generate(final Material matInfo, boolean generateEverything){
+ generate(matInfo, generateEverything, true);
+ }
+
+ public static void generate(final Material matInfo, boolean generateEverything, boolean generateBlastSmelterRecipes){
String unlocalizedName = matInfo.getUnlocalizedName();
String materialName = matInfo.getLocalizedName();
short[] C = matInfo.getRGBA();