aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/gregtech/api/enums/MaterialBuilder.java10
-rw-r--r--src/main/java/gregtech/api/enums/Materials.java27
-rw-r--r--src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java4
3 files changed, 33 insertions, 8 deletions
diff --git a/src/main/java/gregtech/api/enums/MaterialBuilder.java b/src/main/java/gregtech/api/enums/MaterialBuilder.java
index 7fde89d2da..cecbe8a7d0 100644
--- a/src/main/java/gregtech/api/enums/MaterialBuilder.java
+++ b/src/main/java/gregtech/api/enums/MaterialBuilder.java
@@ -31,6 +31,8 @@ public class MaterialBuilder {
private int extraData = 0;
private List<MaterialStack> materialList = new ArrayList<MaterialStack>();
private List<TC_Aspects.TC_AspectStack> aspects = new ArrayList<TC_Aspects.TC_AspectStack>();
+ private boolean hasCorrespondingFluid = false;
+ private boolean hasCorrespondingGas = false;
public MaterialBuilder(int metaItemSubID, TextureSet iconSet, String defaultLocalName) {
this.metaItemSubID = metaItemSubID;
@@ -41,7 +43,9 @@ public class MaterialBuilder {
public Materials constructMaterial() {
return new Materials(metaItemSubID, iconSet, toolSpeed, durability, toolQuality, types, r, g, b, a, name, defaultLocalName, fuelType, fuelPower, meltingPoint, blastFurnaceTemp,
- blastFurnaceRequired, transparent, oreValue, densityMultiplier, densityDivider, color, extraData, materialList, aspects);
+ blastFurnaceRequired, transparent, oreValue, densityMultiplier, densityDivider, color, extraData, materialList, aspects)
+ .setHasCorrespondingFluid(hasCorrespondingFluid)
+ .setHasCorrespondingGas(hasCorrespondingGas);
}
public MaterialBuilder setName(String name){
@@ -95,12 +99,12 @@ public class MaterialBuilder {
}
public MaterialBuilder addFluid(){
- types = types | 256;
+ this.hasCorrespondingFluid = true;
return this;
}
public MaterialBuilder addGas(){
- types = types | 512;
+ this.hasCorrespondingGas = true;
return this;
}
diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java
index 67d064c867..eb75390757 100644
--- a/src/main/java/gregtech/api/enums/Materials.java
+++ b/src/main/java/gregtech/api/enums/Materials.java
@@ -786,6 +786,8 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
public boolean mHasParentMod = true, mHasPlasma = false, mHasGas = false, mCustomOre = false;
public Fluid mSolid = null, mFluid = null, mGas = null, mPlasma = null;
+ private boolean hasCorrespondingFluid = false, hasCorrespondingGas = false;
+
/**
* This Fluid is used as standard Unit for Molten Materials. 1296 is a Molten Block, that means 144 is one Material Unit worth of fluid.
*/
@@ -1534,8 +1536,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
* 32 = Plasma Cells
* 64 = Tool Heads
* 128 = Gears
- * 256 = Automatically create a corresponding fluid for this material
- * 512 = Automatically create a corresponding gas for this material
+ * 256 = Designates something as empty (only used for the Empty material)
* @param aR, aG, aB Color of the Material 0-255 each.
* @param aA transparency of the Material Texture. 0 = fully visible, 255 = Invisible.
* @param aName The Name used as Default for localization.
@@ -1719,7 +1720,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
}
return mChemicalFormula;
}
-
+
/**
* Adds a Class implementing IMaterialRegistrator to the master list
*/
@@ -1936,4 +1937,24 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
public static Collection<Materials> getAll(){
return MATERIALS_MAP.values();
}
+
+
+ public boolean hasCorrespondingFluid() {
+ return hasCorrespondingFluid;
+ }
+
+
+ public Materials setHasCorrespondingFluid(boolean hasCorrespondingFluid) {
+ this.hasCorrespondingFluid = hasCorrespondingFluid;
+ return this;
+ }
+
+ public boolean hasCorrespondingGas() {
+ return hasCorrespondingGas;
+ }
+
+ public Materials setHasCorrespondingGas(boolean hasCorrespondingGas) {
+ this.hasCorrespondingGas = hasCorrespondingGas;
+ return this;
+ }
} \ No newline at end of file
diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java
index e457aadfbc..c00bf8c27d 100644
--- a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java
+++ b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java
@@ -494,10 +494,10 @@ public class GT_Loader_Item_Block_And_Fluid
if (tMaterial.mElement != null) {
GT_Mod.gregtechproxy.addAutogeneratedPlasmaFluid(tMaterial);
}
- if ((tMaterial.mTypes & 256) != 0) {
+ if (tMaterial.hasCorrespondingFluid()) {
GT_Mod.gregtechproxy.addAutoGeneratedCorrespondingFluid(tMaterial);
}
- if ((tMaterial.mTypes & 512) != 0) {
+ if (tMaterial.hasCorrespondingGas()) {
GT_Mod.gregtechproxy.addAutoGeneratedCorrespondingGas(tMaterial);
}
}