aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorbartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com>2019-11-03 19:25:29 +0100
committerbartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com>2019-11-03 19:25:29 +0100
commit87304c5f763e328fdc447d9c9d2cf9d7779b0658 (patch)
tree33100f1531e2039f97d16706c97769ba70d67a4d /src/main
parentf04832f47680f4a164d242e02389f04813075a78 (diff)
downloadGT5-Unofficial-87304c5f763e328fdc447d9c9d2cf9d7779b0658.tar.gz
GT5-Unofficial-87304c5f763e328fdc447d9c9d2cf9d7779b0658.tar.bz2
GT5-Unofficial-87304c5f763e328fdc447d9c9d2cf9d7779b0658.zip
fixed small ores showing up on non-small ore screen
+autogenerated a color for every registered fluid +version increase Signed-off-by: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com>
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/detrav/DetravScannerMod.java19
-rw-r--r--src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java2
-rw-r--r--src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java4
-rw-r--r--src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java42
-rw-r--r--src/main/java/com/detrav/net/DetravProPickPacket00.java66
-rw-r--r--src/main/java/com/detrav/utils/BartWorksHelper.java5
-rw-r--r--src/main/java/com/detrav/utils/FluidColors.java129
7 files changed, 111 insertions, 156 deletions
diff --git a/src/main/java/com/detrav/DetravScannerMod.java b/src/main/java/com/detrav/DetravScannerMod.java
index 3fb2b777c6..9c9a1addb6 100644
--- a/src/main/java/com/detrav/DetravScannerMod.java
+++ b/src/main/java/com/detrav/DetravScannerMod.java
@@ -1,6 +1,7 @@
package com.detrav;
import com.detrav.net.DetravProPickPacket00;
+import com.detrav.utils.FluidColors;
import org.apache.logging.log4j.LogManager;
import com.detrav.net.DetravNetwork;
@@ -37,8 +38,7 @@ public class DetravScannerMod
@Mod.Instance(DetravScannerMod.MODID)
public static DetravScannerMod instance;
- public DetravScannerMod()
- {
+ public DetravScannerMod() {
GregTech_API.sAfterGTPreload.add(new Detrav_AfterGTPreload_Loader());
new DetravNetwork();
}
@@ -56,17 +56,9 @@ public class DetravScannerMod
proxy.onPreInit();
}
- @EventHandler
- public void init(FMLInitializationEvent event)
- {
- // some example code
- //System.out.println("DIRT BLOCK >> "+Blocks.dirt.getUnlocalizedName());
- NetworkRegistry.INSTANCE.registerGuiHandler(instance, proxy );
- }
-
@EventHandler
- public void onLoad(FMLInitializationEvent aEvent)
- {
+ public void init(FMLInitializationEvent event) {
+ NetworkRegistry.INSTANCE.registerGuiHandler(instance, proxy);
proxy.onLoad();
}
@@ -75,8 +67,7 @@ public class DetravScannerMod
proxy.onPostLoad();
if (Loader.isModLoaded("miscutils"))
GTppHelper.generate_OreIDs();
-
- DetravProPickPacket00.reFillFluidColors();
+ FluidColors.makeColors();
}
}
diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
index c614a844f6..46c01af8ee 100644
--- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
+++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
@@ -115,6 +115,8 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi
short meta = GTppHelper.getGTppMeta(tBlock);
packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, meta);
} else if (Loader.isModLoaded("bartworks") && BartWorksHelper.isOre(tBlock)) {
+ if (data != 1 && BartWorksHelper.isSmallOre(tBlock))
+ continue;
packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, BartWorksHelper.getMetaFromBlock(c, x, y, z, tBlock));
} else if (data == 1) {
ItemData tAssotiation = GT_OreDictUnificator.getAssociation(new ItemStack(tBlock, 1, tMetaID));
diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
index 4a8655360f..297266819b 100644
--- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
+++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
@@ -221,7 +221,9 @@ public class BehaviourDetravToolProPick extends Behaviour_None {
if (!name.isEmpty())
addOreToHashMap(name, aPlayer);
} else if (Loader.isModLoaded("bartworks") && BartWorksHelper.isOre(tBlock)){
- addOreToHashMap(GT_LanguageManager.getTranslation("bw.blockores.01." + ((BartWorksHelper.getMetaFromBlock(aChunk,x,y,z,tBlock))*-1) + ".name"), aPlayer);
+ if (data != 1 && BartWorksHelper.isSmallOre(tBlock))
+ continue;
+ addOreToHashMap(GT_LanguageManager.getTranslation((BartWorksHelper.isSmallOre(tBlock) ? "bw.blockores.02." : "bw.blockores.01.") + ((BartWorksHelper.getMetaFromBlock(aChunk,x,y,z,tBlock))*-1) + ".name"), aPlayer);
} else if (data == 1) {
tAssotiation = GT_OreDictUnificator.getAssociation(new ItemStack(tBlock, 1, tMetaID));
if ((tAssotiation != null) && (tAssotiation.mPrefix.toString().startsWith("ore"))) {
diff --git a/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java b/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java
index 52b8627944..0dd97fb0fc 100644
--- a/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java
+++ b/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java
@@ -2,14 +2,11 @@ package com.detrav.items.processing;
import com.detrav.items.DetravMetaGeneratedTool01;
import com.dreammaster.gthandler.CustomItemList;
-
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
-import gtPlusPlus.core.util.minecraft.ItemUtils;
-import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;
@@ -29,26 +26,27 @@ public class ProcessingDetravToolProPick implements gregtech.api.interfaces.IOre
return;
if (DEBUGBUILD)
return;
- //ULV disabled
- //GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(0, 1, aMaterial, Materials.Lead, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellSulfuricAcid").get(0),'S',OreDictionary.getOres("cellHydroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Primitive),'X',gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList.Sensor_ULV});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(2, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellSulfuricAcid").get(0),'S',OreDictionary.getOres("cellHydroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Basic),'X',ItemList.Sensor_LV});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(4, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellSulfuricAcid").get(0),'S',OreDictionary.getOres("cellHydroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Good),'X',ItemList.Sensor_MV});
-
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(6, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellNitricAcid").get(0),'S',OreDictionary.getOres("cellSodiumPersulfate").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Advanced),'X',ItemList.Sensor_HV});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(8, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellNitricAcid").get(0),'S',OreDictionary.getOres("cellSodiumPersulfate").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Data),'X',ItemList.Sensor_EV});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(10, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellNitricAcid").get(0),'S',OreDictionary.getOres("cellSodiumPersulfate").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Elite),'X',ItemList.Sensor_IV});
-
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(12, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellHydrofluoricAcid").get(0),'S',OreDictionary.getOres("cellLithiumPeroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Master),'X',ItemList.Sensor_LuV});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(14, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellHydrofluoricAcid").get(0),'S',OreDictionary.getOres("cellLithiumPeroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Ultimate),'X',ItemList.Sensor_ZPM});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(16, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellHydrofluoricAcid").get(0),'S',OreDictionary.getOres("cellLithiumPeroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Superconductor),'X',ItemList.Sensor_UV});
-
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(18, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellHydrofluoricAcid").get(0),'S',OreDictionary.getOres("cellHydrogenPeroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Infinite),'X',ItemList.Sensor_UHV});
-
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(100, 1, aMaterial, Materials.Iridium, new long[]{102400000L, GT_Values.V[6], 6L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_LuV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial),Character.valueOf('E'), ItemList.Emitter_LuV,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Iridium), Character.valueOf('B'), CustomItemList.BatteryHull_LuV_Full.get(1L)});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(102, 1, aMaterial, Materials.Osmium, new long[]{409600000L, GT_Values.V[7], 7L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_ZPM, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_ZPM,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Ultimate), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Osmium), Character.valueOf('B'), CustomItemList.BatteryHull_ZPM_Full.get(1L)});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(104, 1, aMaterial, Materials.Neutronium, new long[]{1638400000L, GT_Values.V[8], 8L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UV,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Superconductor), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Neutronium), Character.valueOf('B'), CustomItemList.BatteryHull_UV_Full.get(1L)});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(106, 1, aMaterial, Materials.Infinity, new long[]{6553600000L, GT_Values.V[9], 9L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UHV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UHV,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Infinite), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Infinity), Character.valueOf('B'), CustomItemList.BatteryHull_UHV_Full.get(1L)});
+ try {
+ //ULV disabled
+ //GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(0, 1, aMaterial, Materials.Lead, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellSulfuricAcid").get(0),'S',OreDictionary.getOres("cellHydroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Primitive),'X',gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList.Sensor_ULV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(2, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellSulfuricAcid").get(0), 'S', OreDictionary.getOres("cellHydroxide").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Basic), 'X', ItemList.Sensor_LV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(4, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellSulfuricAcid").get(0), 'S', OreDictionary.getOres("cellHydroxide").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Good), 'X', ItemList.Sensor_MV});
+
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(6, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellNitricAcid").get(0), 'S', OreDictionary.getOres("cellSodiumPersulfate").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Advanced), 'X', ItemList.Sensor_HV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(8, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellNitricAcid").get(0), 'S', OreDictionary.getOres("cellSodiumPersulfate").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Data), 'X', ItemList.Sensor_EV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(10, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellNitricAcid").get(0), 'S', OreDictionary.getOres("cellSodiumPersulfate").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Elite), 'X', ItemList.Sensor_IV});
+
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(12, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellHydrofluoricAcid").get(0), 'S', OreDictionary.getOres("cellLithiumPeroxide").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Master), 'X', ItemList.Sensor_LuV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(14, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellHydrofluoricAcid").get(0), 'S', OreDictionary.getOres("cellLithiumPeroxide").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Ultimate), 'X', ItemList.Sensor_ZPM});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(16, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellHydrofluoricAcid").get(0), 'S', OreDictionary.getOres("cellLithiumPeroxide").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'X', ItemList.Sensor_UV});
+
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(18, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellHydrofluoricAcid").get(0), 'S', OreDictionary.getOres("cellHydrogenPeroxide").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Infinite), 'X', ItemList.Sensor_UHV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(100, 1, aMaterial, Materials.Iridium, new long[]{102400000L, GT_Values.V[6], 6L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_LuV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_LuV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Iridium), Character.valueOf('B'), CustomItemList.BatteryHull_LuV_Full.get(1L)});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(102, 1, aMaterial, Materials.Osmium, new long[]{409600000L, GT_Values.V[7], 7L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_ZPM, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_ZPM, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Ultimate), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Osmium), Character.valueOf('B'), CustomItemList.BatteryHull_ZPM_Full.get(1L)});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(104, 1, aMaterial, Materials.Neutronium, new long[]{1638400000L, GT_Values.V[8], 8L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Superconductor), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Neutronium), Character.valueOf('B'), CustomItemList.BatteryHull_UV_Full.get(1L)});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(106, 1, aMaterial, Materials.Infinity, new long[]{6553600000L, GT_Values.V[9], 9L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UHV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UHV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Infinite), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Infinity), Character.valueOf('B'), CustomItemList.BatteryHull_UHV_Full.get(1L)});
+ }catch (Exception ignored){}
}
}
diff --git a/src/main/java/com/detrav/net/DetravProPickPacket00.java b/src/main/java/com/detrav/net/DetravProPickPacket00.java
index 703ae581c4..fc4555075a 100644
--- a/src/main/java/com/detrav/net/DetravProPickPacket00.java
+++ b/src/main/java/com/detrav/net/DetravProPickPacket00.java
@@ -11,14 +11,11 @@ import com.google.common.io.ByteStreams;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Materials;
import gregtech.api.util.GT_LanguageManager;
-import gtPlusPlus.core.material.Material;
-import gtPlusPlus.core.material.ORES;
-
-import net.minecraftforge.fluids.*;
+import net.minecraftforge.fluids.FluidRegistry;
+import net.minecraftforge.fluids.FluidStack;
import java.awt.image.BufferedImage;
import java.awt.image.WritableRaster;
-import java.lang.reflect.Field;
import java.util.HashMap;
/*
@@ -36,47 +33,8 @@ public class DetravProPickPacket00 extends DetravPacket {
public int chunkZ;
public int size;
public int ptype;
- HashMap<Byte,Short>[][] map = null;
- public static HashMap<Integer, short[]> fluidColors = null;
-
- public static void reFillFluidColors(){
- if( fluidColors == null ) { // Should probably be put somewhere else, but I suck at Java
- fluidColors = new HashMap<Integer, short[]>();
-
- fluidColors.put( Materials.NatruralGas.mGas.getID(), new short[]{0x00,0xff,0xff} );
- fluidColors.put( Materials.OilLight.mFluid.getID(), new short[]{0xff,0xff,0x00} );
- fluidColors.put( Materials.OilMedium.mFluid.getID(), new short[]{0x00,0xFF,0x00} );
- fluidColors.put( Materials.OilHeavy.mFluid.getID(), new short[]{0xFF,0x00,0xFF} );
- fluidColors.put( Materials.Oil.mFluid.getID(), new short[]{0x00,0x00,0x00} );
- fluidColors.put( Materials.Helium_3.mGas.getID(), new short[]{0x80,0x20,0xe0} );
- fluidColors.put( Materials.SaltWater.mFluid.getID(), new short[]{0x80,0xff,0x80} );
- fluidColors.put( Materials.Naquadah.getMolten(0).getFluid().getID(), new short[]{0x20,0x20,0x20} );
- fluidColors.put( Materials.NaquadahEnriched.getMolten(0).getFluid().getID(), new short[]{0x60,0x60,0x60} );
- fluidColors.put( Materials.Lead.getMolten(0).getFluid().getID(), new short[]{0xd0,0xd0,0xd0} );
- fluidColors.put( Materials.Chlorobenzene.mFluid.getID(), new short[]{0x40,0x80,0x40} );
- fluidColors.put( FluidRegistry.getFluid("liquid_extra_heavy_oil").getID(), new short[]{0x00,0x00,0x50} );
- fluidColors.put( Materials.Oxygen.mGas.getID(), new short[]{0x40,0x40,0xA0} );
- fluidColors.put( Materials.Nitrogen.mGas.getID(), new short[]{0x00,0x80,0xd0} );
- fluidColors.put( Materials.Methane.mGas.getID(), new short[]{0x80,0x20,0x20} );
- fluidColors.put( Materials.Ethane.mGas.getID(), new short[]{0x40,0x80,0x20} );
- fluidColors.put( Materials.Ethylene.mGas.getID(), new short[]{0xd0,0xd0,0xd0} );
- fluidColors.put( Materials.LiquidAir.mFluid.getID(), new short[]{0x40,0x80,0x40} );
- fluidColors.put( FluidRegistry.LAVA.getID(), new short[]{0xFF,0x00,0x00} );
-
-/*
- Set set = fluidColors.entrySet();
- Iterator iterator = set.iterator();
- System.out.println( "DETRAV SCANNER DEBUG" );
- while(iterator.hasNext()) {
- Map.Entry mentry = (Map.Entry) iterator.next();
- System.out.println( "key is: "+ (Integer)mentry.getKey() + " & Value is: " +
- ((short[])mentry.getValue())[0] + " " +
- ((short[])mentry.getValue())[1] + " " +
- ((short[])mentry.getValue())[2] );
- }
-*/
- }
- }
+ private HashMap<Byte,Short>[][] map = null;
+ public static HashMap<Integer, short[]> fluidColors = new HashMap<>();
@Override
public int getPacketID() {
@@ -130,7 +88,7 @@ public class DetravProPickPacket00 extends DetravPacket {
for (int j = 0; j < aSize; j++) {
byte kSize = aData.readByte();
if(kSize == 0) continue;
- packet.map[i][j] = new HashMap<Byte, Short>();
+ packet.map[i][j] = new HashMap<>();
for (int k = 0; k < kSize; k++) {
packet.map[i][j].put(aData.readByte(),aData.readShort());
checkOut++;
@@ -214,7 +172,7 @@ public class DetravProPickPacket00 extends DetravPacket {
raster.setSample(i, j, 2, rgba[2]);
raster.setSample(i, j, 3, 255);
if (!ores.containsKey(name))
- ores.put(name, (0xFF << 24) + ((rgba[0] & 0xFF) << 16) + ((rgba[1] & 0xFF) << 8) + ((rgba[2] & 0xFF)));
+ ores.put(name, ((rgba[0] & 0xFF) << 16) + ((rgba[1] & 0xFF) << 8) + ((rgba[2] & 0xFF)));
}
else if (meta<=0){
name = GT_LanguageManager.getTranslation("bw.blockores.01." + (meta*-1) + ".name");
@@ -229,7 +187,7 @@ public class DetravProPickPacket00 extends DetravPacket {
raster.setSample(i, j, 2, rgba[2]);
raster.setSample(i, j, 3, 255);
if (!ores.containsKey(name))
- ores.put(name, (0xFF << 24) + ((rgba[0] & 0xFF) << 16) + ((rgba[1] & 0xFF) << 8) + ((rgba[2] & 0xFF)));
+ ores.put(name, ((rgba[0] & 0xFF) << 16) + ((rgba[1] & 0xFF) << 8) + ((rgba[2] & 0xFF)));
} else {
if (pMaterial == null) {
exception++;
@@ -244,7 +202,7 @@ public class DetravProPickPacket00 extends DetravPacket {
raster.setSample(i, j, 2, rgba[2]);
raster.setSample(i, j, 3, 255);
if (!ores.containsKey(name))
- ores.put(name, (0xFF << 24) + ((rgba[0] & 0xFF) << 16) + ((rgba[1] & 0xFF) << 8) + ((rgba[2] & 0xFF)));
+ ores.put(name,((rgba[0] & 0xFF) << 16) + ((rgba[1] & 0xFF) << 8) + ((rgba[2] & 0xFF)));
}
}
}
@@ -271,8 +229,8 @@ public class DetravProPickPacket00 extends DetravPacket {
raster.setSample(i, j, 2, 255);
raster.setSample(i, j, 3, 255);
} else {
- metas[0] = map[i][j].get(Byte.valueOf((byte)1)); // fluidID
- metas[1] = map[i][j].get(Byte.valueOf((byte)2)); // Size of the field
+ metas[0] = map[i][j].get((byte) 1); // fluidID
+ metas[1] = map[i][j].get((byte) 2); // Size of the field
String name = null;
short[] rgba = null;
@@ -288,7 +246,7 @@ public class DetravProPickPacket00 extends DetravPacket {
}
if (!ores.containsKey(name))
- ores.put(name, (0xFF << 24) + ((rgba[0] & 0xFF) << 16) + ((rgba[1] & 0xFF) << 8) + ((rgba[2] & 0xFF)));
+ ores.put(name, ((rgba[0] & 0xFF) << 16) + ((rgba[1] & 0xFF) << 8) + ((rgba[2] & 0xFF)));
int k = (i % 16); // Variables used to locate within a chunk.
int l = (j % 16);
@@ -319,7 +277,7 @@ public class DetravProPickPacket00 extends DetravPacket {
}
break;
case 3:
- ores.put("Pollution", (0xFF << 24) + ((0 & 0xFF) << 16) + ((0 & 0xFF) << 8) + ((0 & 0xFF)));
+ ores.put("Pollution", ((0 & 0xFF) << 16) + ((0 & 0xFF) << 8) + ((0 & 0xFF)));
for (int i = 0; i < wh; i++)
for (int j = 0; j < wh; j++) {
if (map[i][j] == null) {
diff --git a/src/main/java/com/detrav/utils/BartWorksHelper.java b/src/main/java/com/detrav/utils/BartWorksHelper.java
index 5143571087..6f59ccb491 100644
--- a/src/main/java/com/detrav/utils/BartWorksHelper.java
+++ b/src/main/java/com/detrav/utils/BartWorksHelper.java
@@ -1,6 +1,7 @@
package com.detrav.utils;
import com.github.bartimaeusnek.bartworks.system.material.BW_MetaGenerated_Ores;
+import com.github.bartimaeusnek.bartworks.system.material.BW_MetaGenerated_SmallOres;
import net.minecraft.block.Block;
import net.minecraft.world.chunk.Chunk;
@@ -10,6 +11,10 @@ public class BartWorksHelper {
return tBlock instanceof BW_MetaGenerated_Ores;
}
+ public static boolean isSmallOre(Block tBlock){
+ return tBlock instanceof BW_MetaGenerated_SmallOres;
+ }
+
public static short getMetaFromBlock(Chunk c, int x, int y, int z, Block tBlock){
return (short) (tBlock.getDamageValue(c.worldObj,c.xPosition * 16 + x, y, c.zPosition * 16 + z)*-1);
}
diff --git a/src/main/java/com/detrav/utils/FluidColors.java b/src/main/java/com/detrav/utils/FluidColors.java
index d70a348fcc..b5c2cda6df 100644
--- a/src/main/java/com/detrav/utils/FluidColors.java
+++ b/src/main/java/com/detrav/utils/FluidColors.java
@@ -1,85 +1,84 @@
package com.detrav.utils;
+import com.detrav.net.DetravProPickPacket00;
+import cpw.mods.fml.common.ProgressManager;
import gregtech.api.enums.Materials;
import net.minecraftforge.fluids.FluidRegistry;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.SplittableRandom;
+import java.util.Arrays;
+import java.util.Objects;
+
+import static com.detrav.net.DetravProPickPacket00.fluidColors;
public class FluidColors {
- public static final HashMap<Integer, Integer> COLORS = new HashMap<Integer, Integer>(); //contains all FluidIDs and their color counterpath
- public static final ArrayList<Integer> USEDC = new ArrayList<Integer>(); //contains all used Colors
+ public static void makeColors(){
+ reFillFluidColors();
- public static synchronized void setup_colors_from_fluid_registry(){ //should populate COLORS with all the fluids from the Fluid registry and an unique color
- if (FluidRegistry.getMaxID()>0){
- for (int i = 0; i < FluidRegistry.getMaxID(); i++) {
- if(!USEDC.contains(FluidRegistry.getFluid(i).getColor())) {
- USEDC.add(FluidRegistry.getFluid(i).getColor());
- COLORS.put(i,FluidRegistry.getFluid(i).getColor());
- }else{
- int nuclor=getnucolor();
- USEDC.add(nuclor);
- COLORS.put(i,nuclor);
+ //ProgressManager.ProgressBar progressBar = ProgressManager.push("Making Fluid Colors", (int) (Materials.values().length + FluidRegistry.getRegisteredFluids().values().stream().filter(Objects::nonNull).count()));
+ Arrays.stream(Materials.values()).forEach(
+ mat -> {
+ //progressBar.step(mat.mDefaultLocalName);
+ if ( mat.getSolid(0) != null)
+ fluidColors.putIfAbsent(mat.getSolid(0).getFluidID(), mat.mRGBa);
+ if ( mat.getGas(0) != null)
+ fluidColors.putIfAbsent(mat.getGas(0).getFluidID(), mat.mRGBa);
+ if ( mat.getFluid(0) != null)
+ fluidColors.putIfAbsent(mat.getFluid(0).getFluidID(), mat.mRGBa);
+ if ( mat.getMolten(0) != null)
+ fluidColors.putIfAbsent(mat.getMolten(0).getFluidID(), mat.mRGBa);
}
-
+ );
+ FluidRegistry.getRegisteredFluids().values().stream().filter(Objects::nonNull).forEach(fluid -> {
+ // progressBar.step(fluid.getName());
+ fluidColors.putIfAbsent(fluid.getID(), convertColorInt(fluid.getColor()));
}
- }
+ );
+ // ProgressManager.pop(progressBar);
}
- public static synchronized void setup_gt_colors(){ //should populate COLORS with all the fluids from the Materials and an unique color
- for (Materials M : Materials.getAll()){
- final int LCOLOR = M.getRGBA()[0]<<24 | M.getRGBA()[1]<<16 | M.getRGBA()[2]<<8 | M.getRGBA()[3];
+ private static void reFillFluidColors(){
+ try {
+ // Should probably be put somewhere else, but I suck at Java
+ fluidColors.put(Materials.NatruralGas.mGas.getID(), new short[]{0x00, 0xff, 0xff});
+ fluidColors.put(Materials.OilLight.mFluid.getID(), new short[]{0xff, 0xff, 0x00});
+ fluidColors.put(Materials.OilMedium.mFluid.getID(), new short[]{0x00, 0xFF, 0x00});
+ fluidColors.put(Materials.OilHeavy.mFluid.getID(), new short[]{0xFF, 0x00, 0xFF});
+ fluidColors.put(Materials.Oil.mFluid.getID(), new short[]{0x00, 0x00, 0x00});
+ fluidColors.put(Materials.Helium_3.mGas.getID(), new short[]{0x80, 0x20, 0xe0});
+ fluidColors.put(Materials.SaltWater.mFluid.getID(), new short[]{0x80, 0xff, 0x80});
+ fluidColors.put(Materials.Naquadah.getMolten(0).getFluid().getID(), new short[]{0x20, 0x20, 0x20});
+ fluidColors.put(Materials.NaquadahEnriched.getMolten(0).getFluid().getID(), new short[]{0x60, 0x60, 0x60});
+ fluidColors.put(Materials.Lead.getMolten(0).getFluid().getID(), new short[]{0xd0, 0xd0, 0xd0});
+ fluidColors.put(Materials.Chlorobenzene.mFluid.getID(), new short[]{0x40, 0x80, 0x40});
+ fluidColors.put(FluidRegistry.getFluid("liquid_extra_heavy_oil").getID(), new short[]{0x00, 0x00, 0x50});
+ fluidColors.put(Materials.Oxygen.mGas.getID(), new short[]{0x40, 0x40, 0xA0});
+ fluidColors.put(Materials.Nitrogen.mGas.getID(), new short[]{0x00, 0x80, 0xd0});
+ fluidColors.put(Materials.Methane.mGas.getID(), new short[]{0x80, 0x20, 0x20});
+ fluidColors.put(Materials.Ethane.mGas.getID(), new short[]{0x40, 0x80, 0x20});
+ fluidColors.put(Materials.Ethylene.mGas.getID(), new short[]{0xd0, 0xd0, 0xd0});
+ fluidColors.put(FluidRegistry.LAVA.getID(), new short[]{0xFF, 0x00, 0x00});
- if ( M.mHasGas || //if Material has a Gas
- (M.mFluid != null && !M.mFluid.equals(Materials._NULL.mFluid)) || //or a fluid
- (M.getMolten(0).getFluid() != null && !M.getMolten(0).equals(Materials._NULL.mFluid))) //or can be molten add it here
- if (!addnucolor(M,LCOLOR)){
- boolean nosucess;
- do {
- nosucess=!addnucolor(M,getnucolor());
- }while (nosucess);
- }
- }
+ //possible nulls
+ fluidColors.put(Materials.LiquidAir.mFluid.getID(), new short[]{0x40, 0x80, 0x40});
+ }catch (Exception ignored){}
+/*
+ Set set = fluidColors.entrySet();
+ Iterator iterator = set.iterator();
+ System.out.println( "DETRAV SCANNER DEBUG" );
+ while(iterator.hasNext()) {
+ Map.Entry mentry = (Map.Entry) iterator.next();
+ System.out.println( "key is: "+ (Integer)mentry.getKey() + " & Value is: " +
+ ((short[])mentry.getValue())[0] + " " +
+ ((short[])mentry.getValue())[1] + " " +
+ ((short[])mentry.getValue())[2] );
+ }
+*/
}
- /**
- *
- * @return a new and unique color
- */
- private static synchronized int getnucolor(){ //gets a new unique color
- int nucolor = makenu();
- return !USEDC.contains(nucolor) ? nucolor : getnucolor(); //if the color already is in the list, recall this method and get a new random color.
+ private static short[] convertColorInt(int color){
+ return new short[]{(short) (color << 16 &0xff), (short) (color << 8 &0xff), (short) (color &0xff)};
}
- /**
- *
- * @return a new random color
- */
- private static synchronized int makenu() {
- return new SplittableRandom().nextInt(0,256)<<24 & 0xFF | //r
- new SplittableRandom().nextInt(0,256)<<16 & 0xFF | //g
- new SplittableRandom().nextInt(0,256)<<8 & 0xFF | //b
- new SplittableRandom().nextInt(0,256) & 0xFF; //a
- }
-
- /**
- * Should add a new and unique Color linked to a Material
- * @return if the color was added
- */
- private static synchronized boolean addnucolor(Materials M, int color){
- if (!USEDC.contains(color)){
- USEDC.add(color);
- if(M.mHasGas)
- COLORS.put(M.mGas.getID(), color);
- else if (M.mFluid != null && !M.mFluid.equals(Materials._NULL.mFluid))
- COLORS.put(M.mFluid.getID(), color);
- else if (M.getMolten(0).getFluid() != null && !M.getMolten(0).equals(Materials._NULL.mFluid))
- COLORS.put(M.getMolten(0).getFluid().getID(), color);
- return true;
- }
- return false;
- }
}