From cf938c1ed77f873782e2c2c4869947562236b7b3 Mon Sep 17 00:00:00 2001 From: Alkalus <3060479+draknyte1@users.noreply.github.com> Date: Fri, 10 Dec 2021 09:51:39 +0000 Subject: Added ability to clear all output hatches on GT++ multis with a plunger. Changed fluid textures for many autogenerated fluids. Renamed & remapped Cryolite to Cryolite (F). Fixed toArray() in AutoMap.java. Fixed Sparging. Final touches to Nuclear Fuel reprocessing. --- src/Java/gregtech/api/util/GasSpargingRecipe.java | 45 +- .../gregtech/api/util/GasSpargingRecipeMap.java | 17 +- src/Java/gtPlusPlus/GTplusplus.java | 70 +- src/Java/gtPlusPlus/api/objects/data/AutoMap.java | 12 +- src/Java/gtPlusPlus/core/material/ORES.java | 890 ++++++++++----------- src/Java/gtPlusPlus/core/util/data/ArrayUtils.java | 12 + .../gtPlusPlus/core/util/minecraft/FluidUtils.java | 2 +- .../gtPlusPlus/core/util/minecraft/ItemUtils.java | 42 +- .../core/util/minecraft/RecipeUtils.java | 5 +- src/Java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java | 20 +- src/Java/gtPlusPlus/nei/NEI_GT_Config.java | 4 +- .../base/GregtechMeta_MultiBlockBase.java | 39 +- .../GregtechMetaTileEntity_SpargeTower.java | 676 +++++++++------- .../production/GregtechMTE_NuclearReactor.java | 6 +- .../gregtech/loaders/recipe/RecipeLoader_LFTR.java | 63 +- .../recipe/RecipeLoader_NuclearFuelProcessing.java | 48 +- 16 files changed, 1103 insertions(+), 848 deletions(-) (limited to 'src/Java') diff --git a/src/Java/gregtech/api/util/GasSpargingRecipe.java b/src/Java/gregtech/api/util/GasSpargingRecipe.java index 86e52e19de..493c31dc65 100644 --- a/src/Java/gregtech/api/util/GasSpargingRecipe.java +++ b/src/Java/gregtech/api/util/GasSpargingRecipe.java @@ -1,32 +1,31 @@ package gregtech.api.util; +import gtPlusPlus.api.objects.data.AutoMap; +import gtPlusPlus.core.util.data.ArrayUtils; +import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.minecraft.MaterialUtils; -import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; public class GasSpargingRecipe implements Comparable { public final FluidStack mInputGas; public final FluidStack mInputSpentFuel; + public final FluidStack mOutputSpargedFuel; public final int[] mMaxOutputQuantity; public final FluidStack[] mFluidInputs; public final FluidStack[] mFluidOutputs; - public final ItemStack[] mInputs; - public final ItemStack[] mOutputs; public final int mDuration; public final int mEUt; - public GasSpargingRecipe(FluidStack aSpargeGas, FluidStack aSpentFuel, FluidStack[] aOutputs, int[] aMaxOutputQuantity) { + public GasSpargingRecipe(FluidStack aSpargeGas, FluidStack aSpentFuel, FluidStack aSpargedFuel, FluidStack[] aOutputs, int[] aMaxOutputQuantity) { mInputGas = aSpargeGas; mInputSpentFuel = aSpentFuel; + mOutputSpargedFuel = aSpargedFuel; mFluidInputs = new FluidStack[] {mInputGas, mInputSpentFuel}; + aOutputs = ArrayUtils.insertElementAtIndex(aOutputs, 0, aSpargeGas); + aOutputs = ArrayUtils.insertElementAtIndex(aOutputs, 1, aSpargedFuel); mFluidOutputs = aOutputs; mMaxOutputQuantity = aMaxOutputQuantity; - mInputs = new ItemStack[] {GT_Utility.getFluidDisplayStack(mFluidInputs[0], true), GT_Utility.getFluidDisplayStack(mFluidInputs[1], true)}; - mOutputs = new ItemStack[mFluidOutputs.length]; - for (int i=0; i { return false; } - public int getMaxOutput(final int aIndex) { + public int getMaxOutput(int aIndex) { + if (aIndex == 0) { + return mInputGas.amount * 100; + } + else if (aIndex == 1) { + return mOutputSpargedFuel.amount * 100; + } + aIndex -= 2; if ((aIndex < 0) || (aIndex >= this.mMaxOutputQuantity.length)) { return 10000; } @@ -59,6 +65,15 @@ public class GasSpargingRecipe implements Comparable { } return true; } + + public boolean containsInputs(FluidStack aSpargeGas, FluidStack aSpentFuel) { + if (aSpargeGas != null && aSpargeGas.getFluid().equals(this.mInputGas.getFluid())) { + if (aSpentFuel != null && aSpentFuel.getFluid().equals(this.mInputSpentFuel.getFluid())) { + return true; + } + } + return false; + } @Override public int compareTo(GasSpargingRecipe o) { @@ -70,5 +85,15 @@ public class GasSpargingRecipe implements Comparable { return -1; } } + + public String[] getRecipeInfo() { + AutoMap result = new AutoMap(); + result.put("Input "+ItemUtils.getArrayStackNames(mFluidInputs)); + result.put("Output "+ItemUtils.getArrayStackNames(mFluidOutputs)); + result.put("Duration: "+mDuration); + result.put("EU/t: "+mEUt); + String s[] = result.toArray(); + return s; + } } diff --git a/src/Java/gregtech/api/util/GasSpargingRecipeMap.java b/src/Java/gregtech/api/util/GasSpargingRecipeMap.java index bf12f4dc79..6e60cc7ac3 100644 --- a/src/Java/gregtech/api/util/GasSpargingRecipeMap.java +++ b/src/Java/gregtech/api/util/GasSpargingRecipeMap.java @@ -12,11 +12,12 @@ public class GasSpargingRecipeMap extends AutoMap{ public static final String mNEIName = mUnlocalizedName; public static final String mNEIDisplayName = "LFTR Gas Sparging"; public static final String mNEIGUIPath = RES_PATH_GUI + "basicmachines/FissionFuel.png"; - - - public static boolean addRecipe(FluidStack aSpargeGas, FluidStack aSpentFuel, FluidStack[] aOutputs, int[] aMaxOutputs) { + + + public static boolean addRecipe(FluidStack aSpargeGas, FluidStack aSpentFuel, FluidStack aSpargedFuel, FluidStack[] aOutputs, int[] aMaxOutputs) { if (aSpargeGas == null || aSpargeGas.amount <= 0 || aSpentFuel == null || aSpentFuel.amount <= 0 || + aSpargedFuel == null || aSpargedFuel.amount <= 0 || aOutputs == null || aOutputs.length < 1 || aMaxOutputs == null || aMaxOutputs.length < 1 || aOutputs.length != aMaxOutputs.length) { @@ -26,12 +27,22 @@ public class GasSpargingRecipeMap extends AutoMap{ GasSpargingRecipe aRecipe = new GasSpargingRecipe( aSpargeGas, aSpentFuel, + aSpargedFuel, aOutputs, aMaxOutputs ); mRecipes.put(aRecipe); return mRecipes.size() > aMapSize; } + + public static GasSpargingRecipe findRecipe(FluidStack aSpargeGas, FluidStack aSpentFuel) { + for (GasSpargingRecipe aRecipe : mRecipes) { + if (aRecipe.containsInputs(aSpargeGas, aSpentFuel)) { + return aRecipe; + } + } + return null; + } } diff --git a/src/Java/gtPlusPlus/GTplusplus.java b/src/Java/gtPlusPlus/GTplusplus.java index 9bb20de232..a70ce24e45 100644 --- a/src/Java/gtPlusPlus/GTplusplus.java +++ b/src/Java/gtPlusPlus/GTplusplus.java @@ -54,6 +54,7 @@ import gtPlusPlus.xmod.gregtech.loaders.GT_Material_Loader; import gtPlusPlus.xmod.gregtech.loaders.RecipeGen_BlastSmelterGT_GTNH; import gtPlusPlus.xmod.gregtech.loaders.RecipeGen_MultisUsingFluidInsteadOfCells; import gtPlusPlus.xmod.thaumcraft.commands.CommandDumpAspects; +import net.minecraft.block.Block; import net.minecraft.item.Item; import net.minecraft.launchwrapper.Launch; import net.minecraft.util.IIcon; @@ -499,38 +500,65 @@ public class GTplusplus implements ActionListener { // Force - Alloying mGregMatLoader.enableMaterial(Materials.Force); } - - private static final HashMap sMissingMappings = new HashMap(); + + private static final HashMap sMissingItemMappings = new HashMap(); + private static final HashMap sMissingBlockMappings = new HashMap(); private static void processMissingMappings() { - sMissingMappings.put("miscutils:Ammonium", GameRegistry.findItem(CORE.MODID, "itemCellAmmonium")); - sMissingMappings.put("miscutils:Hydroxide", GameRegistry.findItem(CORE.MODID, "itemCellHydroxide")); - sMissingMappings.put("miscutils:BerylliumHydroxide", GameRegistry.findItem(CORE.MODID, "itemCellmiscutils:BerylliumHydroxide")); - sMissingMappings.put("miscutils:Bromine", GameRegistry.findItem(CORE.MODID, "itemCellBromine")); - sMissingMappings.put("miscutils:Krypton", GameRegistry.findItem(CORE.MODID, "itemCellKrypton")); - sMissingMappings.put("miscutils:itemCellZirconiumTetrafluoride", GameRegistry.findItem(CORE.MODID, "ZirconiumTetrafluoride")); - sMissingMappings.put("miscutils:Li2BeF4", GameRegistry.findItem(CORE.MODID, "itemCellLithiumTetrafluoroberyllate")); + sMissingItemMappings.put("miscutils:Ammonium", GameRegistry.findItem(CORE.MODID, "itemCellAmmonium")); + sMissingItemMappings.put("miscutils:Hydroxide", GameRegistry.findItem(CORE.MODID, "itemCellHydroxide")); + sMissingItemMappings.put("miscutils:BerylliumHydroxide", GameRegistry.findItem(CORE.MODID, "itemCellmiscutils:BerylliumHydroxide")); + sMissingItemMappings.put("miscutils:Bromine", GameRegistry.findItem(CORE.MODID, "itemCellBromine")); + sMissingItemMappings.put("miscutils:Krypton", GameRegistry.findItem(CORE.MODID, "itemCellKrypton")); + sMissingItemMappings.put("miscutils:itemCellZirconiumTetrafluoride", GameRegistry.findItem(CORE.MODID, "ZirconiumTetrafluoride")); + sMissingItemMappings.put("miscutils:Li2BeF4", GameRegistry.findItem(CORE.MODID, "itemCellLithiumTetrafluoroberyllate")); + + // Cryolite + sMissingBlockMappings.put("miscutils:oreCryolite", GameRegistry.findBlock(CORE.MODID, "oreCryoliteF")); + sMissingItemMappings.put("miscutils:itemDustTinyCryolite", GameRegistry.findItem(CORE.MODID, "itemDustTinyCryoliteF")); + sMissingItemMappings.put("miscutils:itemDustSmallCryolite", GameRegistry.findItem(CORE.MODID, "itemDustSmallCryoliteF")); + sMissingItemMappings.put("miscutils:itemDustCryolite", GameRegistry.findItem(CORE.MODID, "itemDustCryoliteF")); + sMissingItemMappings.put("miscutils:dustPureCryolite", GameRegistry.findItem(CORE.MODID, "dustPureCryoliteF")); + sMissingItemMappings.put("miscutils:dustImpureCryolite", GameRegistry.findItem(CORE.MODID, "dustImpureCryoliteF")); + sMissingItemMappings.put("miscutils:crushedCryolite", GameRegistry.findItem(CORE.MODID, "crushedCryoliteF")); + sMissingItemMappings.put("miscutils:crushedPurifiedCryolite", GameRegistry.findItem(CORE.MODID, "crushedPurifiedCryoliteF")); + sMissingItemMappings.put("miscutils:crushedCentrifugedCryolite", GameRegistry.findItem(CORE.MODID, "crushedCentrifugedCryoliteF")); + sMissingItemMappings.put("miscutils:oreCryolite", GameRegistry.findItem(CORE.MODID, "oreCryoliteF")); } @Mod.EventHandler public void missingMapping(FMLMissingMappingsEvent event) { processMissingMappings(); - for (FMLMissingMappingsEvent.MissingMapping mapping : event.get()) { - if (mapping.type == GameRegistry.Type.ITEM) { - Item aReplacement = sMissingMappings.get(mapping.name); - if (aReplacement != null) { - remap(aReplacement, mapping); - } - else { - //Logger.INFO("Unable to remap: "+mapping.name+", item has no replacement mapping."); - } - } - } + for (FMLMissingMappingsEvent.MissingMapping mapping : event.get()) { + if (mapping.type == GameRegistry.Type.ITEM) { + Item aReplacement = sMissingItemMappings.get(mapping.name); + if (aReplacement != null) { + remap(aReplacement, mapping); + } + else { + //Logger.INFO("Unable to remap: "+mapping.name+", item has no replacement mapping."); + } + } + else if (mapping.type == GameRegistry.Type.BLOCK) { + Block aReplacement = sMissingBlockMappings.get(mapping.name); + if (aReplacement != null) { + remap(aReplacement, mapping); + } + else { + //Logger.INFO("Unable to remap: "+mapping.name+", block has no replacement mapping."); + } + } + } } - private void remap(Item item, FMLMissingMappingsEvent.MissingMapping mapping) { + private static void remap(Item item, FMLMissingMappingsEvent.MissingMapping mapping) { mapping.remap(item); Logger.INFO("Remapping item " + mapping.name + " to " + CORE.MODID + ":" + item.getUnlocalizedName()); } + + private static void remap(Block block, FMLMissingMappingsEvent.MissingMapping mapping) { + mapping.remap(block); + Logger.INFO("Remapping block " + mapping.name + " to " + CORE.MODID + ":" + block.getUnlocalizedName()); + } } diff --git a/src/Java/gtPlusPlus/api/objects/data/AutoMap.java b/src/Java/gtPlusPlus/api/objects/data/AutoMap.java index 02517097cf..e04f1af03a 100644 --- a/src/Java/gtPlusPlus/api/objects/data/AutoMap.java +++ b/src/Java/gtPlusPlus/api/objects/data/AutoMap.java @@ -153,14 +153,12 @@ public class AutoMap implements Iterable, Cloneable, Serializable, Collect } @SuppressWarnings("unchecked") - public synchronized V[] toArray() { - Collection col = this.mInternalMap.values(); - List abcList = new ArrayList(); - for (V g : col) { - abcList.add(g); + public V[] toArray() { + V[] toR = (V[]) java.lang.reflect.Array.newInstance(mInternalMap.get(0).getClass(), mInternalMap.size()); + for (int i = 0; i < mInternalMap.size(); i++) { + toR[i] = mInternalMap.get(i); } - return (V[]) abcList.toArray(); - //return (V[]) new AutoArray(this).getGenericArray(); + return toR; } public synchronized final int getInternalID() { diff --git a/src/Java/gtPlusPlus/core/material/ORES.java b/src/Java/gtPlusPlus/core/material/ORES.java index 363708859f..262852eec7 100644 --- a/src/Java/gtPlusPlus/core/material/ORES.java +++ b/src/Java/gtPlusPlus/core/material/ORES.java @@ -6,119 +6,147 @@ import gtPlusPlus.core.material.state.MaterialState; public final class ORES { - public static final Material GEIKIELITE = new Material( - "Geikielite", //Material Name + public static final Material AGARDITE_CD = new Material( + "Agardite (Cd)", //Material Name MaterialState.ORE, //State - TextureSets.GEM_A.get(), //Texture Set - new short[]{187, 193, 204, 0}, //Material Colour + TextureSet.SET_METALLIC, //Texture Set + new short[]{170, 188, 33, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().MAGNESIUM, 1), - new MaterialStack(ELEMENT.getInstance().TITANIUM, 1), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 3) + new MaterialStack[]{// (CdCa)Cu7(AsO2)4(O2H)5·3H2O + new MaterialStack(ELEMENT.getInstance().CADMIUM, 1), + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().COPPER, 7), + new MaterialStack(ELEMENT.getInstance().ARSENIC, 4), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 21), + new MaterialStack(ELEMENT.getInstance().HYDROGEN, 11) }); - public static final Material ZIMBABWEITE = new Material( - "Zimbabweite", //Material Name + public static final Material AGARDITE_LA = new Material( + "Agardite (La)", //Material Name MaterialState.ORE, //State TextureSet.SET_FINE, //Texture Set - new short[]{193, 187, 131, 0}, //Material Colour + new short[]{206, 232, 9, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().CALCIUM, 2), - new MaterialStack(ELEMENT.getInstance().POTASSIUM, 2), - new MaterialStack(ELEMENT.getInstance().LEAD, 1), - new MaterialStack(ELEMENT.getInstance().ARSENIC, 4), - new MaterialStack(ELEMENT.getInstance().NIOBIUM, 4), - new MaterialStack(ELEMENT.getInstance().TANTALUM, 4), - new MaterialStack(ELEMENT.getInstance().TITANIUM, 4), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 18) + new MaterialStack[]{// (LaCa)Cu5(AsO6)2(OH)4·3H2O + new MaterialStack(ELEMENT.getInstance().LANTHANUM, 1), + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().COPPER, 5), + new MaterialStack(ELEMENT.getInstance().ARSENIC, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 19), + new MaterialStack(ELEMENT.getInstance().HYDROGEN, 10) }); - public static final Material TITANITE = new Material( - "Titanite", //Material Name + public static final Material AGARDITE_ND = new Material( + "Agardite (Nd)", //Material Name MaterialState.ORE, //State TextureSet.SET_METALLIC, //Texture Set - new short[]{184, 198, 105, 0}, //Material Colour + new short[]{225, 244, 78, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().CALCIUM, 2), - new MaterialStack(ELEMENT.getInstance().TITANIUM, 2), - new MaterialStack(ELEMENT.getInstance().SILICON, 2), - new MaterialStack(ELEMENT.getInstance().THORIUM, 1), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 10) + new MaterialStack[]{// (NdCa)Cu6(As3O3)2(O2H)6·3H2O + new MaterialStack(ELEMENT.getInstance().NEODYMIUM, 1), + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().COPPER, 6), + new MaterialStack(ELEMENT.getInstance().ARSENIC, 6), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 21), + new MaterialStack(ELEMENT.getInstance().HYDROGEN, 12) }); - public static final Material ZIRCONILITE = new Material( - "Zirconolite", //Material Name + public static final Material AGARDITE_Y = new Material( + "Agardite (Y)", //Material Name MaterialState.ORE, //State - TextureSet.SET_FINE, //Texture Set - new short[]{45, 26, 0, 0}, //Material Colour + TextureSet.SET_METALLIC, //Texture Set + new short[]{210, 232, 44, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().CALCIUM, 2), - new MaterialStack(ELEMENT.getInstance().ZIRCONIUM, 2), - new MaterialStack(ELEMENT.getInstance().TITANIUM, 4), - new MaterialStack(ELEMENT.getInstance().CERIUM, 1), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 14) + new MaterialStack[]{// (YCa)Cu5(As2O4)3(OH)6·3H2O + new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().COPPER, 5), + new MaterialStack(ELEMENT.getInstance().ARSENIC, 6), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 21), + new MaterialStack(ELEMENT.getInstance().HYDROGEN, 12) }); - public static final Material CROCROITE = new Material( - "Crocoite", //Material Name + //Alburnite + //Ag8GeTe2S4 + public static final Material ALBURNITE = new Material( + "Alburnite", //Material Name MaterialState.ORE, //State - TextureSet.SET_GEM_VERTICAL, //Texture Set - new short[]{255, 143, 84, 0}, //Material Colour + TextureSet.SET_METALLIC, //Texture Set + new short[]{16, 5, 105, 0}, //Material Colour -1, -1, -1, -1, - -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().LEAD, 2), - new MaterialStack(ELEMENT.getInstance().CHROMIUM, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 3), - new MaterialStack(ELEMENT.getInstance().CAESIUM, 1), + 0, //Radiation + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().GOLD, 8), + new MaterialStack(ELEMENT.getInstance().GERMANIUM, 1), + new MaterialStack(ELEMENT.getInstance().TELLURIUM, 2), + new MaterialStack(ELEMENT.getInstance().SULFUR, 4) }); - public static final Material NICHROMITE = new Material( - "Nichromite", //Material Name + public static final Material CERITE = new Material( + "Cerite", //Material Name MaterialState.ORE, //State - TextureSet.SET_METALLIC, //Texture Set - new short[]{22, 19, 19, 0}, //Material Colour + TextureSets.REFINED.get(), //Texture Set + new short[]{68, 13, 0, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().NICKEL, 1), - new MaterialStack(ELEMENT.getInstance().COBALT, 1), + new MaterialStack[]{// (Ce,La,Ca)9(Mg,Fe+3)(SiO4)6(SiO3OH)(OH)3 + new MaterialStack(ELEMENT.getInstance().CERIUM, 9), + new MaterialStack(ELEMENT.getInstance().LANTHANUM, 9), + new MaterialStack(ELEMENT.getInstance().CALCIUM, 9), + new MaterialStack(ELEMENT.getInstance().MAGNESIUM, 3), new MaterialStack(ELEMENT.getInstance().IRON, 3), - new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 2), - new MaterialStack(ELEMENT.getInstance().CHROMIUM, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 8) + new MaterialStack(ELEMENT.getInstance().SILICON, 7), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 20), + new MaterialStack(ELEMENT.getInstance().HYDROGEN, 4) }); - public static final Material YTTRIAITE = new Material( //TODO - "Yttriaite", //Material Name + //Comancheite + //Hg55N24(NH2,OH)4(Cl,Br)34 + public static final Material COMANCHEITE = new Material( + "Comancheite", //Material Name MaterialState.ORE, //State - TextureSet.SET_METALLIC, //Texture Set + TextureSets.REFINED.get(), //Texture Set + new short[]{65, 205, 105, 0}, //Material Colour + -1, + -1, + -1, + -1, + 0, //Radiation + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().MERCURY, 54/4), + new MaterialStack(ELEMENT.getInstance().NITROGEN, 28/4), + new MaterialStack(ELEMENT.getInstance().HYDROGEN, 12/4), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 8/4), + new MaterialStack(ELEMENT.getInstance().CHLORINE, 34/4), + new MaterialStack(ELEMENT.getInstance().BROMINE, 34/4) + }); + + public static final Material CROCROITE = new Material( + "Crocoite", //Material Name + MaterialState.ORE, //State + TextureSet.SET_GEM_VERTICAL, //Texture Set new short[]{255, 143, 84, 0}, //Material Colour -1, -1, @@ -126,67 +154,82 @@ public final class ORES { -1, -1, //Radiation new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), //Y not YT/YB + new MaterialStack(ELEMENT.getInstance().LEAD, 2), + new MaterialStack(ELEMENT.getInstance().CHROMIUM, 2), new MaterialStack(ELEMENT.getInstance().OXYGEN, 3), - new MaterialStack(ELEMENT.getInstance().IRON, 4), - new MaterialStack(ELEMENT.getInstance().TIN, 1), - new MaterialStack(ELEMENT.getInstance().NITROGEN, 2) - }); + new MaterialStack(ELEMENT.getInstance().CAESIUM, 1), + }); - //Samarskite_Y - public static final Material SAMARSKITE_Y = new Material( - "Samarskite (Y)", //Material Name + public static final Material CRYOLITE = new Material( + "Cryolite (F)", //Material Name MaterialState.ORE, //State - TextureSets.ENRICHED.get(), //Texture Set - new short[]{65, 163, 164, 0}, //Material Colour + TextureSet.SET_SHINY, //Texture Set + new short[]{205, 205, 255, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().YTTRIUM, 2), //Y not YT/YB - new MaterialStack(ELEMENT.getInstance().IRON, 10), - new MaterialStack(ELEMENT.getInstance().URANIUM235, 2), - new MaterialStack(ELEMENT.getInstance().THORIUM, 3), - new MaterialStack(ELEMENT.getInstance().NIOBIUM, 2), - new MaterialStack(ELEMENT.getInstance().TANTALUM, 3) + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().SODIUM, 3), + new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 1), + new MaterialStack(ELEMENT.getInstance().FLUORINE, 6) }); - //Samarskite_YB - public static final Material SAMARSKITE_YB = new Material( - "Samarskite (Yb)", //Material Name + //Demicheleite-(Br) + // BiSBr + public static final Material DEMICHELEITE_BR = new Material( + "Demicheleite (Br)", //Material Name MaterialState.ORE, //State - TextureSets.ENRICHED.get(), //Texture Set - new short[]{95, 193, 194, 0}, //Material Colour + TextureSet.SET_SHINY, //Texture Set + new short[]{165, 75, 75, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().YTTERBIUM, 2), //Y not YT/YB - new MaterialStack(ELEMENT.getInstance().IRON, 9), - new MaterialStack(ELEMENT.getInstance().URANIUM235, 3), - new MaterialStack(ELEMENT.getInstance().THORIUM, 2), - new MaterialStack(ELEMENT.getInstance().NIOBIUM, 3), - new MaterialStack(ELEMENT.getInstance().TANTALUM, 2) + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().BISMUTH, 13), + new MaterialStack(ELEMENT.getInstance().SULFUR, 11), + new MaterialStack(ELEMENT.getInstance().BROMINE, 1) }); - public static final Material ZIRCON = new Material( - "Zircon", //Material Name + public static final Material FLORENCITE = new Material( + "Florencite", //Material Name MaterialState.ORE, //State - TextureSets.GEM_A.get(), //Texture Set - new short[]{195, 19, 19, 0}, //Material Colour + TextureSet.SET_METALLIC, //Texture Set + new short[]{249, 249, 124, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().ZIRCONIUM, 1), - new MaterialStack(ELEMENT.getInstance().SILICON, 1), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 4), + new MaterialStack[]{// SmAl3(PO4)2(OH)6 + new MaterialStack(ELEMENT.getInstance().SAMARIUM, 1), + new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 3), + new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 1), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 10), + new MaterialStack(ELEMENT.getInstance().HYDROGEN, 6) + }); + + public static final Material FLUORCAPHITE = new Material( + "Fluorcaphite", //Material Name + MaterialState.ORE, //State + TextureSet.SET_FINE, //Texture Set + new short[]{255, 255, 30, 0}, //Material Colour + -1, + -1, + -1, + -1, + -1, //Radiation + new MaterialStack[]{// (Ca,Sr,Ce,Na)5(PO4)3F + new MaterialStack(ELEMENT.getInstance().CALCIUM, 5), + new MaterialStack(MISC_MATERIALS.STRONTIUM_OXIDE, 5), + new MaterialStack(ELEMENT.getInstance().CERIUM, 5), + new MaterialStack(ELEMENT.getInstance().SODIUM, 5), + new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 3), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 12), + new MaterialStack(ELEMENT.getInstance().FLUORINE, 6), }); //Gadolinite_Ce @@ -233,172 +276,161 @@ public final class ORES { new MaterialStack(ELEMENT.getInstance().OXYGEN, 9), }); - public static final Material LEPERSONNITE = new Material( - "Lepersonnite", //Material Name + public static final Material GEIKIELITE = new Material( + "Geikielite", //Material Name MaterialState.ORE, //State - TextureSet.SET_EMERALD, //Texture Set - new short[]{175, 175, 20, 0}, //Material Colour + TextureSets.GEM_A.get(), //Texture Set + new short[]{187, 193, 204, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().GADOLINIUM, 2), - new MaterialStack(ELEMENT.getInstance().DYSPROSIUM, 2), - new MaterialStack(ELEMENT.getInstance().URANIUM235, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN,32), - new MaterialStack(ELEMENT.getInstance().HYDROGEN, 24) - }); - - public static final Material XENOTIME = new Material( - "Xenotime", //Material Name + new MaterialStack(ELEMENT.getInstance().MAGNESIUM, 1), + new MaterialStack(ELEMENT.getInstance().TITANIUM, 1), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 3) + }); + + public static final Material GREENOCKITE = new Material( + "Greenockite", //Material Name MaterialState.ORE, //State - TextureSet.SET_OPAL, //Texture Set - new short[]{235, 89, 199, 0}, //Material Colour + TextureSets.GEM_A.get(), //Texture Set + new short[]{110, 193, 25, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().YTTRIUM, 2), - new MaterialStack(ELEMENT.getInstance().YTTERBIUM, 2), - new MaterialStack(ELEMENT.getInstance().EUROPIUM, 1), - new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 8) + new MaterialStack(ELEMENT.getInstance().CADMIUM, 2), + new MaterialStack(ELEMENT.getInstance().SULFUR, 2), }); - - public static final Material YTTRIALITE = new Material( - "Yttrialite", //Material Name + + public static final Material HIBONITE = new Material( + "Hibonite", //Material Name MaterialState.ORE, //State - TextureSet.SET_RUBY, //Texture Set - new short[]{35, 189, 99, 0}, //Material Colour + TextureSet.SET_METALLIC, //Texture Set + new short[]{58, 31, 0, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().YTTRIUM, 2), - new MaterialStack(ELEMENT.getInstance().THORIUM, 2), - new MaterialStack(ELEMENT.getInstance().SILICON, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 7), + new MaterialStack[]{// ((Ca,Ce)(Al,Ti,Mg)12O19) + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().CERIUM, 1), + new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 12), + new MaterialStack(ELEMENT.getInstance().TITANIUM, 12), + new MaterialStack(ELEMENT.getInstance().MAGNESIUM, 12), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 19), }); - - public static final Material YTTROCERITE = new Material( - "Yttrocerite", //Material Name + + //Honeaite + //Au3TlTe2 + public static final Material HONEAITE = new Material( + "Honeaite", //Material Name MaterialState.ORE, //State - TextureSet.SET_DIAMOND, //Texture Set - new short[]{35, 19, 199, 0}, //Material Colour + TextureSet.SET_FINE, //Texture Set + new short[]{165, 165, 5, 0}, //Material Colour -1, -1, -1, -1, - -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().CERIUM, 1), - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().FLUORINE, 5), - new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), + 0, //Radiation + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().GOLD, 3), + new MaterialStack(ELEMENT.getInstance().THALLIUM, 1), + new MaterialStack(ELEMENT.getInstance().TELLURIUM, 2) }); - public static final Material POLYCRASE = new Material( - "Polycrase", //Material Name + //Irarsite + //(Ir,Ru,Rh,Pt)AsS + public static final Material IRARSITE = new Material( + "Irarsite", //Material Name MaterialState.ORE, //State - TextureSet.SET_ROUGH, //Texture Set - new short[]{51, 0, 11, 0}, //Material Colour + TextureSets.ENRICHED.get(), //Texture Set + new short[]{125, 105, 105, 0}, //Material Colour -1, -1, -1, -1, - -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().CERIUM, 1), - new MaterialStack(ELEMENT.getInstance().URANIUM235, 1), - new MaterialStack(ELEMENT.getInstance().THORIUM, 1), - new MaterialStack(ELEMENT.getInstance().TITANIUM, 2), - new MaterialStack(ELEMENT.getInstance().NIOBIUM, 2), - new MaterialStack(ELEMENT.getInstance().TANTALUM, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 6) + 0, //Radiation + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().IRIDIUM, 1), + new MaterialStack(ELEMENT.getInstance().RUTHENIUM, 1), + new MaterialStack(ELEMENT.getInstance().RHODIUM, 1), + new MaterialStack(ELEMENT.getInstance().PLATINUM, 1), + new MaterialStack(ELEMENT.getInstance().ARSENIC, 1), + new MaterialStack(ELEMENT.getInstance().SULFUR, 1), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 1) }); - public static final Material ZIRCOPHYLLITE = new Material( - "Zircophyllite", //Material Name + //Kashinite + //(Ir,Rh)2S3 + public static final Material KASHINITE = new Material( + "Kashinite", //Material Name MaterialState.ORE, //State - TextureSets.REFINED.get(), //Texture Set - new short[]{30, 0, 6, 0}, //Material Colour + TextureSet.SET_SHINY, //Texture Set + new short[]{75, 105, 75, 0}, //Material Colour -1, -1, -1, -1, - -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().POTASSIUM, 3), - new MaterialStack(ELEMENT.getInstance().SODIUM, 3), - new MaterialStack(ELEMENT.getInstance().MANGANESE, 7), - new MaterialStack(ELEMENT.getInstance().IRON, 7), - new MaterialStack(ELEMENT.getInstance().ZIRCONIUM, 2), - new MaterialStack(ELEMENT.getInstance().TITANIUM, 2), - new MaterialStack(ELEMENT.getInstance().NIOBIUM, 2), - new MaterialStack(ELEMENT.getInstance().SILICON, 8), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 13), - new MaterialStack(ELEMENT.getInstance().FLUORINE, 7), + 0, //Radiation + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().IRIDIUM, 2), + new MaterialStack(ELEMENT.getInstance().RHODIUM, 2), + new MaterialStack(ELEMENT.getInstance().SULFUR, 3) }); - public static final Material ZIRKELITE = new Material( - "Zirkelite", //Material Name + // Tl(Cl,Br) + public static final Material LAFOSSAITE = new Material( + "Lafossaite", //Material Name MaterialState.ORE, //State - TextureSets.GEM_A.get(), //Texture Set - new short[]{229, 208, 48, 0}, //Material Colour + TextureSets.REFINED.get(), //Texture Set + new short[]{165, 105, 205, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// (Ca,Th,Ce)Zr(Ti,Nb)2O7 - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().THORIUM, 1), - new MaterialStack(ELEMENT.getInstance().CERIUM, 1), - new MaterialStack(ELEMENT.getInstance().ZIRCONIUM, 1), - new MaterialStack(ELEMENT.getInstance().TITANIUM, 2), - new MaterialStack(ELEMENT.getInstance().NIOBIUM, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 7) + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().CHLORINE, 1), + new MaterialStack(ELEMENT.getInstance().BROMINE, 1), + new MaterialStack(ELEMENT.getInstance().THALLIUM, 1) }); - public static final Material LANTHANITE_LA = new Material( - "Lanthanite (La)", //Material Name + public static final Material LANTHANITE_CE = new Material( + "Lanthanite (Ce)", //Material Name MaterialState.ORE, //State - TextureSets.REFINED.get(), //Texture Set - new short[]{219, 160, 214, 0}, //Material Colour + TextureSet.SET_METALLIC, //Texture Set + new short[]{186, 113, 179, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// (La)2(CO3)3·8(H2O) - new MaterialStack(ELEMENT.getInstance().LANTHANUM, 2), + new MaterialStack[]{// (Ce)2(CO3)3·8(H2O) + new MaterialStack(ELEMENT.getInstance().CERIUM, 2), new MaterialStack(ELEMENT.getInstance().OXYGEN, 3), new MaterialStack(ELEMENT.getInstance().CALCIUM, 3), new MaterialStack(ELEMENT.getInstance().HYDROGEN, 2), new MaterialStack(ELEMENT.getInstance().OXYGEN, 1), }); - public static final Material LANTHANITE_CE = new Material( - "Lanthanite (Ce)", //Material Name + public static final Material LANTHANITE_LA = new Material( + "Lanthanite (La)", //Material Name MaterialState.ORE, //State - TextureSet.SET_METALLIC, //Texture Set - new short[]{186, 113, 179, 0}, //Material Colour + TextureSets.REFINED.get(), //Texture Set + new short[]{219, 160, 214, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// (Ce)2(CO3)3·8(H2O) - new MaterialStack(ELEMENT.getInstance().CERIUM, 2), + new MaterialStack[]{// (La)2(CO3)3·8(H2O) + new MaterialStack(ELEMENT.getInstance().LANTHANUM, 2), new MaterialStack(ELEMENT.getInstance().OXYGEN, 3), new MaterialStack(ELEMENT.getInstance().CALCIUM, 3), new MaterialStack(ELEMENT.getInstance().HYDROGEN, 2), @@ -423,399 +455,367 @@ public final class ORES { new MaterialStack(ELEMENT.getInstance().OXYGEN, 1), }); - public static final Material HIBONITE = new Material( - "Hibonite", //Material Name + //Iodine Source + public static final Material LAUTARITE = new Material( + "Lautarite", //Material Name MaterialState.ORE, //State - TextureSet.SET_METALLIC, //Texture Set - new short[]{58, 31, 0, 0}, //Material Colour + TextureSet.SET_FINE, //Texture Set + new short[]{165, 105, 205, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// ((Ca,Ce)(Al,Ti,Mg)12O19) + new MaterialStack[]{// Na3AlF6 new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().CERIUM, 1), - new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 12), - new MaterialStack(ELEMENT.getInstance().TITANIUM, 12), - new MaterialStack(ELEMENT.getInstance().MAGNESIUM, 12), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 19), + new MaterialStack(ELEMENT.getInstance().IODINE, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 6) }); - public static final Material CERITE = new Material( - "Cerite", //Material Name + public static final Material LEPERSONNITE = new Material( + "Lepersonnite", //Material Name MaterialState.ORE, //State - TextureSets.REFINED.get(), //Texture Set - new short[]{68, 13, 0, 0}, //Material Colour + TextureSet.SET_EMERALD, //Texture Set + new short[]{175, 175, 20, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// (Ce,La,Ca)9(Mg,Fe+3)(SiO4)6(SiO3OH)(OH)3 - new MaterialStack(ELEMENT.getInstance().CERIUM, 9), - new MaterialStack(ELEMENT.getInstance().LANTHANUM, 9), - new MaterialStack(ELEMENT.getInstance().CALCIUM, 9), - new MaterialStack(ELEMENT.getInstance().MAGNESIUM, 3), - new MaterialStack(ELEMENT.getInstance().IRON, 3), - new MaterialStack(ELEMENT.getInstance().SILICON, 7), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 20), - new MaterialStack(ELEMENT.getInstance().HYDROGEN, 4) + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().GADOLINIUM, 2), + new MaterialStack(ELEMENT.getInstance().DYSPROSIUM, 2), + new MaterialStack(ELEMENT.getInstance().URANIUM235, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN,32), + new MaterialStack(ELEMENT.getInstance().HYDROGEN, 24) }); - public static final Material AGARDITE_Y = new Material( - "Agardite (Y)", //Material Name + //Miessiite + //Pd11Te2Se2 + public static final Material MIESSIITE = new Material( + "Miessiite", //Material Name MaterialState.ORE, //State - TextureSet.SET_METALLIC, //Texture Set - new short[]{210, 232, 44, 0}, //Material Colour + TextureSet.SET_FINE, //Texture Set + new short[]{75, 75, 75, 0}, //Material Colour -1, -1, -1, -1, - -1, //Radiation - new MaterialStack[]{// (YCa)Cu5(As2O4)3(OH)6·3H2O - new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().COPPER, 5), - new MaterialStack(ELEMENT.getInstance().ARSENIC, 6), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 21), - new MaterialStack(ELEMENT.getInstance().HYDROGEN, 12) + 0, //Radiation + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().PALLADIUM, 11), + new MaterialStack(ELEMENT.getInstance().TELLURIUM, 2), + new MaterialStack(ELEMENT.getInstance().SELENIUM, 2) }); - public static final Material AGARDITE_CD = new Material( - "Agardite (Cd)", //Material Name + public static final Material NICHROMITE = new Material( + "Nichromite", //Material Name MaterialState.ORE, //State TextureSet.SET_METALLIC, //Texture Set - new short[]{170, 188, 33, 0}, //Material Colour + new short[]{22, 19, 19, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// (CdCa)Cu7(AsO2)4(O2H)5·3H2O - new MaterialStack(ELEMENT.getInstance().CADMIUM, 1), - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().COPPER, 7), - new MaterialStack(ELEMENT.getInstance().ARSENIC, 4), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 21), - new MaterialStack(ELEMENT.getInstance().HYDROGEN, 11) + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().NICKEL, 1), + new MaterialStack(ELEMENT.getInstance().COBALT, 1), + new MaterialStack(ELEMENT.getInstance().IRON, 3), + new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 2), + new MaterialStack(ELEMENT.getInstance().CHROMIUM, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 8) }); - public static final Material AGARDITE_LA = new Material( - "Agardite (La)", //Material Name - MaterialState.ORE, //State - TextureSet.SET_FINE, //Texture Set - new short[]{206, 232, 9, 0}, //Material Colour - -1, - -1, - -1, - -1, - -1, //Radiation - new MaterialStack[]{// (LaCa)Cu5(AsO6)2(OH)4·3H2O - new MaterialStack(ELEMENT.getInstance().LANTHANUM, 1), - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().COPPER, 5), - new MaterialStack(ELEMENT.getInstance().ARSENIC, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 19), - new MaterialStack(ELEMENT.getInstance().HYDROGEN, 10) - }); - - public static final Material AGARDITE_ND = new Material( - "Agardite (Nd)", //Material Name + //Perroudite + //Hg5Ag4S5(I,Br)2Cl2 + public static final Material PERROUDITE = new Material( + "Perroudite", //Material Name MaterialState.ORE, //State TextureSet.SET_METALLIC, //Texture Set - new short[]{225, 244, 78, 0}, //Material Colour + new short[]{77, 165, 174, 0}, //Material Colour -1, -1, -1, -1, - -1, //Radiation - new MaterialStack[]{// (NdCa)Cu6(As3O3)2(O2H)6·3H2O - new MaterialStack(ELEMENT.getInstance().NEODYMIUM, 1), - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().COPPER, 6), - new MaterialStack(ELEMENT.getInstance().ARSENIC, 6), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 21), - new MaterialStack(ELEMENT.getInstance().HYDROGEN, 12) + 0, //Radiation + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().SULFUR, 5), + new MaterialStack(ELEMENT.getInstance().SILVER, 4), + new MaterialStack(ELEMENT.getInstance().IODINE, 2), + new MaterialStack(ELEMENT.getInstance().MERCURY, 5), + new MaterialStack(ELEMENT.getInstance().BROMINE, 2), + new MaterialStack(ELEMENT.getInstance().CHLORINE, 2) }); - public static final Material FLUORCAPHITE = new Material( - "Fluorcaphite", //Material Name + public static final Material POLYCRASE = new Material( + "Polycrase", //Material Name MaterialState.ORE, //State - TextureSet.SET_FINE, //Texture Set - new short[]{255, 255, 30, 0}, //Material Colour + TextureSet.SET_ROUGH, //Texture Set + new short[]{51, 0, 11, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// (Ca,Sr,Ce,Na)5(PO4)3F - new MaterialStack(ELEMENT.getInstance().CALCIUM, 5), - new MaterialStack(MISC_MATERIALS.STRONTIUM_OXIDE, 5), - new MaterialStack(ELEMENT.getInstance().CERIUM, 5), - new MaterialStack(ELEMENT.getInstance().SODIUM, 5), - new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 3), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 12), - new MaterialStack(ELEMENT.getInstance().FLUORINE, 6), + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().CERIUM, 1), + new MaterialStack(ELEMENT.getInstance().URANIUM235, 1), + new MaterialStack(ELEMENT.getInstance().THORIUM, 1), + new MaterialStack(ELEMENT.getInstance().TITANIUM, 2), + new MaterialStack(ELEMENT.getInstance().NIOBIUM, 2), + new MaterialStack(ELEMENT.getInstance().TANTALUM, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 6) }); - - public static final Material FLORENCITE = new Material( - "Florencite", //Material Name + + //Radiobarite + //Radium, Barium, Barite? + public static final Material RADIOBARITE = new Material( + "Barite (Rd)", //Material Name MaterialState.ORE, //State - TextureSet.SET_METALLIC, //Texture Set - new short[]{249, 249, 124, 0}, //Material Colour + TextureSet.SET_FLINT, //Texture Set + new short[]{205, 205, 205, 0}, //Material Colour -1, -1, -1, -1, - -1, //Radiation - new MaterialStack[]{// SmAl3(PO4)2(OH)6 - new MaterialStack(ELEMENT.getInstance().SAMARIUM, 1), - new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 3), - new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 1), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 10), - new MaterialStack(ELEMENT.getInstance().HYDROGEN, 6) - }); + 0, //Radiation + new MaterialStack[]{// Na3AlF6 + new MaterialStack(ELEMENT.getInstance().BARIUM, 32), + new MaterialStack(ELEMENT.getInstance().RADIUM, 1), + new MaterialStack(ELEMENT.getInstance().SULFUR, 16), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 15) + }); - public static final Material CRYOLITE = new Material( - "Cryolite", //Material Name + //Samarskite_Y + public static final Material SAMARSKITE_Y = new Material( + "Samarskite (Y)", //Material Name MaterialState.ORE, //State - TextureSet.SET_SHINY, //Texture Set - new short[]{205, 205, 255, 0}, //Material Colour + TextureSets.ENRICHED.get(), //Texture Set + new short[]{65, 163, 164, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().SODIUM, 3), - new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 1), - new MaterialStack(ELEMENT.getInstance().FLUORINE, 6) + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().YTTRIUM, 2), //Y not YT/YB + new MaterialStack(ELEMENT.getInstance().IRON, 10), + new MaterialStack(ELEMENT.getInstance().URANIUM235, 2), + new MaterialStack(ELEMENT.getInstance().THORIUM, 3), + new MaterialStack(ELEMENT.getInstance().NIOBIUM, 2), + new MaterialStack(ELEMENT.getInstance().TANTALUM, 3) }); - - //Iodine Source - public static final Material LAUTARITE = new Material( - "Lautarite", //Material Name - MaterialState.ORE, //State - TextureSet.SET_FINE, //Texture Set - new short[]{165, 105, 205, 0}, //Material Colour - -1, - -1, - -1, - -1, - -1, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), - new MaterialStack(ELEMENT.getInstance().IODINE, 2), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 6) - }); - // Tl(Cl,Br) - public static final Material LAFOSSAITE = new Material( - "Lafossaite", //Material Name + //Samarskite_YB + public static final Material SAMARSKITE_YB = new Material( + "Samarskite (Yb)", //Material Name MaterialState.ORE, //State - TextureSets.REFINED.get(), //Texture Set - new short[]{165, 105, 205, 0}, //Material Colour + TextureSets.ENRICHED.get(), //Texture Set + new short[]{95, 193, 194, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().CHLORINE, 1), - new MaterialStack(ELEMENT.getInstance().BROMINE, 1), - new MaterialStack(ELEMENT.getInstance().THALLIUM, 1) + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().YTTERBIUM, 2), //Y not YT/YB + new MaterialStack(ELEMENT.getInstance().IRON, 9), + new MaterialStack(ELEMENT.getInstance().URANIUM235, 3), + new MaterialStack(ELEMENT.getInstance().THORIUM, 2), + new MaterialStack(ELEMENT.getInstance().NIOBIUM, 3), + new MaterialStack(ELEMENT.getInstance().TANTALUM, 2) }); - //Demicheleite-(Br) - // BiSBr - public static final Material DEMICHELEITE_BR = new Material( - "Demicheleite (Br)", //Material Name + public static final Material TITANITE = new Material( + "Titanite", //Material Name MaterialState.ORE, //State - TextureSet.SET_SHINY, //Texture Set - new short[]{165, 75, 75, 0}, //Material Colour + TextureSet.SET_METALLIC, //Texture Set + new short[]{184, 198, 105, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().BISMUTH, 13), - new MaterialStack(ELEMENT.getInstance().SULFUR, 11), - new MaterialStack(ELEMENT.getInstance().BROMINE, 1) + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().CALCIUM, 2), + new MaterialStack(ELEMENT.getInstance().TITANIUM, 2), + new MaterialStack(ELEMENT.getInstance().SILICON, 2), + new MaterialStack(ELEMENT.getInstance().THORIUM, 1), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 10) }); - //Comancheite - //Hg55N24(NH2,OH)4(Cl,Br)34 - public static final Material COMANCHEITE = new Material( - "Comancheite", //Material Name + public static final Material XENOTIME = new Material( + "Xenotime", //Material Name MaterialState.ORE, //State - TextureSets.REFINED.get(), //Texture Set - new short[]{65, 205, 105, 0}, //Material Colour + TextureSet.SET_OPAL, //Texture Set + new short[]{235, 89, 199, 0}, //Material Colour -1, -1, -1, -1, - 0, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().MERCURY, 54/4), - new MaterialStack(ELEMENT.getInstance().NITROGEN, 28/4), - new MaterialStack(ELEMENT.getInstance().HYDROGEN, 12/4), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 8/4), - new MaterialStack(ELEMENT.getInstance().CHLORINE, 34/4), - new MaterialStack(ELEMENT.getInstance().BROMINE, 34/4) + -1, //Radiation + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().YTTRIUM, 2), + new MaterialStack(ELEMENT.getInstance().YTTERBIUM, 2), + new MaterialStack(ELEMENT.getInstance().EUROPIUM, 1), + new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 8) }); - //Perroudite - //Hg5Ag4S5(I,Br)2Cl2 - public static final Material PERROUDITE = new Material( - "Perroudite", //Material Name + public static final Material YTTRIAITE = new Material( //TODO + "Yttriaite", //Material Name MaterialState.ORE, //State TextureSet.SET_METALLIC, //Texture Set - new short[]{77, 165, 174, 0}, //Material Colour + new short[]{255, 143, 84, 0}, //Material Colour -1, -1, -1, -1, - 0, //Radiation + -1, //Radiation new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().SULFUR, 5), - new MaterialStack(ELEMENT.getInstance().SILVER, 4), - new MaterialStack(ELEMENT.getInstance().IODINE, 2), - new MaterialStack(ELEMENT.getInstance().MERCURY, 5), - new MaterialStack(ELEMENT.getInstance().BROMINE, 2), - new MaterialStack(ELEMENT.getInstance().CHLORINE, 2) + new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), //Y not YT/YB + new MaterialStack(ELEMENT.getInstance().OXYGEN, 3), + new MaterialStack(ELEMENT.getInstance().IRON, 4), + new MaterialStack(ELEMENT.getInstance().TIN, 1), + new MaterialStack(ELEMENT.getInstance().NITROGEN, 2) }); - //Honeaite - //Au3TlTe2 - public static final Material HONEAITE = new Material( - "Honeaite", //Material Name + public static final Material YTTRIALITE = new Material( + "Yttrialite", //Material Name MaterialState.ORE, //State - TextureSet.SET_FINE, //Texture Set - new short[]{165, 165, 5, 0}, //Material Colour + TextureSet.SET_RUBY, //Texture Set + new short[]{35, 189, 99, 0}, //Material Colour -1, -1, -1, -1, - 0, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().GOLD, 3), - new MaterialStack(ELEMENT.getInstance().THALLIUM, 1), - new MaterialStack(ELEMENT.getInstance().TELLURIUM, 2) + -1, //Radiation + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().YTTRIUM, 2), + new MaterialStack(ELEMENT.getInstance().THORIUM, 2), + new MaterialStack(ELEMENT.getInstance().SILICON, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 7), }); - //Alburnite - //Ag8GeTe2S4 - public static final Material ALBURNITE = new Material( - "Alburnite", //Material Name + public static final Material YTTROCERITE = new Material( + "Yttrocerite", //Material Name MaterialState.ORE, //State - TextureSet.SET_METALLIC, //Texture Set - new short[]{16, 5, 105, 0}, //Material Colour + TextureSet.SET_DIAMOND, //Texture Set + new short[]{35, 19, 199, 0}, //Material Colour -1, -1, -1, -1, - 0, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().GOLD, 8), - new MaterialStack(ELEMENT.getInstance().GERMANIUM, 1), - new MaterialStack(ELEMENT.getInstance().TELLURIUM, 2), - new MaterialStack(ELEMENT.getInstance().SULFUR, 4) + -1, //Radiation + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().CERIUM, 1), + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().FLUORINE, 5), + new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), }); - //Miessiite - //Pd11Te2Se2 - public static final Material MIESSIITE = new Material( - "Miessiite", //Material Name + public static final Material ZIMBABWEITE = new Material( + "Zimbabweite", //Material Name MaterialState.ORE, //State TextureSet.SET_FINE, //Texture Set - new short[]{75, 75, 75, 0}, //Material Colour + new short[]{193, 187, 131, 0}, //Material Colour -1, -1, -1, -1, - 0, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().PALLADIUM, 11), - new MaterialStack(ELEMENT.getInstance().TELLURIUM, 2), - new MaterialStack(ELEMENT.getInstance().SELENIUM, 2) + -1, //Radiation + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().CALCIUM, 2), + new MaterialStack(ELEMENT.getInstance().POTASSIUM, 2), + new MaterialStack(ELEMENT.getInstance().LEAD, 1), + new MaterialStack(ELEMENT.getInstance().ARSENIC, 4), + new MaterialStack(ELEMENT.getInstance().NIOBIUM, 4), + new MaterialStack(ELEMENT.getInstance().TANTALUM, 4), + new MaterialStack(ELEMENT.getInstance().TITANIUM, 4), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 18) }); - //Kashinite - //(Ir,Rh)2S3 - public static final Material KASHINITE = new Material( - "Kashinite", //Material Name + public static final Material ZIRCON = new Material( + "Zircon", //Material Name MaterialState.ORE, //State - TextureSet.SET_SHINY, //Texture Set - new short[]{75, 105, 75, 0}, //Material Colour + TextureSets.GEM_A.get(), //Texture Set + new short[]{195, 19, 19, 0}, //Material Colour -1, -1, -1, -1, - 0, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().IRIDIUM, 2), - new MaterialStack(ELEMENT.getInstance().RHODIUM, 2), - new MaterialStack(ELEMENT.getInstance().SULFUR, 3) + -1, //Radiation + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().ZIRCONIUM, 1), + new MaterialStack(ELEMENT.getInstance().SILICON, 1), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 4), }); - //Irarsite - //(Ir,Ru,Rh,Pt)AsS - public static final Material IRARSITE = new Material( - "Irarsite", //Material Name + public static final Material ZIRCONILITE = new Material( + "Zirconolite", //Material Name MaterialState.ORE, //State - TextureSets.ENRICHED.get(), //Texture Set - new short[]{125, 105, 105, 0}, //Material Colour + TextureSet.SET_FINE, //Texture Set + new short[]{45, 26, 0, 0}, //Material Colour -1, -1, -1, -1, - 0, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().IRIDIUM, 1), - new MaterialStack(ELEMENT.getInstance().RUTHENIUM, 1), - new MaterialStack(ELEMENT.getInstance().RHODIUM, 1), - new MaterialStack(ELEMENT.getInstance().PLATINUM, 1), - new MaterialStack(ELEMENT.getInstance().ARSENIC, 1), - new MaterialStack(ELEMENT.getInstance().SULFUR, 1), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 1) + -1, //Radiation + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().CALCIUM, 2), + new MaterialStack(ELEMENT.getInstance().ZIRCONIUM, 2), + new MaterialStack(ELEMENT.getInstance().TITANIUM, 4), + new MaterialStack(ELEMENT.getInstance().CERIUM, 1), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 14) }); - - //Radiobarite - //Radium, Barium, Barite? - public static final Material RADIOBARITE = new Material( - "Barite (Rd)", //Material Name + + public static final Material ZIRCOPHYLLITE = new Material( + "Zircophyllite", //Material Name MaterialState.ORE, //State - TextureSet.SET_FLINT, //Texture Set - new short[]{205, 205, 205, 0}, //Material Colour + TextureSets.REFINED.get(), //Texture Set + new short[]{30, 0, 6, 0}, //Material Colour -1, -1, -1, -1, - 0, //Radiation - new MaterialStack[]{// Na3AlF6 - new MaterialStack(ELEMENT.getInstance().BARIUM, 32), - new MaterialStack(ELEMENT.getInstance().RADIUM, 1), - new MaterialStack(ELEMENT.getInstance().SULFUR, 16), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 15) + -1, //Radiation + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().POTASSIUM, 3), + new MaterialStack(ELEMENT.getInstance().SODIUM, 3), + new MaterialStack(ELEMENT.getInstance().MANGANESE, 7), + new MaterialStack(ELEMENT.getInstance().IRON, 7), + new MaterialStack(ELEMENT.getInstance().ZIRCONIUM, 2), + new MaterialStack(ELEMENT.getInstance().TITANIUM, 2), + new MaterialStack(ELEMENT.getInstance().NIOBIUM, 2), + new MaterialStack(ELEMENT.getInstance().SILICON, 8), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 13), + new MaterialStack(ELEMENT.getInstance().FLUORINE, 7), }); + - public static final Material GREENOCKITE = new Material( - "Greenockite", //Material Name + public static final Material ZIRKELITE = new Material( + "Zirkelite", //Material Name MaterialState.ORE, //State TextureSets.GEM_A.get(), //Texture Set - new short[]{110, 193, 25, 0}, //Material Colour + new short[]{229, 208, 48, 0}, //Material Colour -1, -1, -1, -1, -1, //Radiation - new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().CADMIUM, 2), - new MaterialStack(ELEMENT.getInstance().SULFUR, 2), + new MaterialStack[]{// (Ca,Th,Ce)Zr(Ti,Nb)2O7 + new MaterialStack(ELEMENT.getInstance().CALCIUM, 1), + new MaterialStack(ELEMENT.getInstance().THORIUM, 1), + new MaterialStack(ELEMENT.getInstance().CERIUM, 1), + new MaterialStack(ELEMENT.getInstance().ZIRCONIUM, 1), + new MaterialStack(ELEMENT.getInstance().TITANIUM, 2), + new MaterialStack(ELEMENT.getInstance().NIOBIUM, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 7) }); - public static final Material DEEP_EARTH_REACTOR_FUEL_DEPOSIT = new Material( "Radioactive Mineral Mix", //Material Name diff --git a/src/Java/gtPlusPlus/core/util/data/ArrayUtils.java b/src/Java/gtPlusPlus/core/util/data/ArrayUtils.java index c9c8d26744..62f703f5f5 100644 --- a/src/Java/gtPlusPlus/core/util/data/ArrayUtils.java +++ b/src/Java/gtPlusPlus/core/util/data/ArrayUtils.java @@ -26,6 +26,18 @@ public class ArrayUtils { return series; } + public static V[] insertElementAtIndex(V[] aArray, int aIndex, V aObjectToInsert) { + V[] newArray = Arrays.copyOf(aArray, aArray.length + 1); + for (int i=0;i Object getMostCommonElement(List list) { Optional r = list.stream().map(V::getTextureSet).collect(Collectors.groupingBy(Function.identity(), Collectors.counting())).entrySet().stream().max(Map.Entry.comparingByValue()).map(Map.Entry::getKey); return r.get(); diff --git a/src/Java/gtPlusPlus/core/util/minecraft/FluidUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/FluidUtils.java index 3988cdb0c4..a6bd50ff17 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/FluidUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/FluidUtils.java @@ -175,7 +175,7 @@ public class FluidUtils { } public static Fluid addGTFluid(final String aName, final String aLocalized, final short[] aRGBa, final int aState, final long aTemperatureK, final ItemStack aFullContainer, final ItemStack aEmptyContainer, final int aFluidAmount, final boolean aGenerateCell) { - return addGTFluid("molten."+aName, "molten.autogenerated", aLocalized, aRGBa, aState, aTemperatureK, aFullContainer, aEmptyContainer, aFluidAmount, aGenerateCell); + return addGTFluid("molten."+aName, "fluid.autogenerated", aLocalized, aRGBa, aState, aTemperatureK, aFullContainer, aEmptyContainer, aFluidAmount, aGenerateCell); } public static Fluid addGTFluidNonMolten(final String aName, final String aLocalized, final short[] aRGBa, final int aState, final long aTemperatureK, final ItemStack aFullContainer, final ItemStack aEmptyContainer, final int aFluidAmount, final boolean aGenerateCell) { diff --git a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java index 6330efd694..e96bd3391b 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java @@ -703,6 +703,44 @@ public class ItemUtils { } return sRadiation; } + + public static String getArrayStackNames(ArrayList aStack) { + Object aType = aStack.get(0); + if (aType instanceof FluidStack) { + FluidStack[] aItems = new FluidStack[aStack.size()]; + for (int i=0;i aStack) { + Object aType = aStack.get(0); + if (aType instanceof FluidStack) { + FluidStack[] aItems = new FluidStack[aStack.size()]; + for (int i=0;i