aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2021-12-10 09:51:39 +0000
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2021-12-10 09:51:39 +0000
commitcf938c1ed77f873782e2c2c4869947562236b7b3 (patch)
treecc7aa78ef92b263b3d8a4ffaec6c10ee603f889f /src/Java/gtPlusPlus
parent8f6560f3c2cfaa36f57d3220a72fbb931fb9324d (diff)
downloadGT5-Unofficial-cf938c1ed77f873782e2c2c4869947562236b7b3.tar.gz
GT5-Unofficial-cf938c1ed77f873782e2c2c4869947562236b7b3.tar.bz2
GT5-Unofficial-cf938c1ed77f873782e2c2c4869947562236b7b3.zip
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.
Diffstat (limited to 'src/Java/gtPlusPlus')
-rw-r--r--src/Java/gtPlusPlus/GTplusplus.java70
-rw-r--r--src/Java/gtPlusPlus/api/objects/data/AutoMap.java12
-rw-r--r--src/Java/gtPlusPlus/core/material/ORES.java886
-rw-r--r--src/Java/gtPlusPlus/core/util/data/ArrayUtils.java12
-rw-r--r--src/Java/gtPlusPlus/core/util/minecraft/FluidUtils.java2
-rw-r--r--src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java42
-rw-r--r--src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java5
-rw-r--r--src/Java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java20
-rw-r--r--src/Java/gtPlusPlus/nei/NEI_GT_Config.java4
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java39
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java676
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java6
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java63
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java48
14 files changed, 1052 insertions, 833 deletions
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<String, Item> sMissingMappings = new HashMap<String, Item>();
+
+ private static final HashMap<String, Item> sMissingItemMappings = new HashMap<String, Item>();
+ private static final HashMap<String, Block> sMissingBlockMappings = new HashMap<String, Block>();
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<V> implements Iterable<V>, Cloneable, Serializable, Collect
}
@SuppressWarnings("unchecked")
- public synchronized V[] toArray() {
- Collection<V> col = this.mInternalMap.values();
- List<V> abcList = new ArrayList<V>();
- 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)
+ new MaterialStack(ELEMENT.getInstance().MAGNESIUM, 1),
+ new MaterialStack(ELEMENT.getInstance().TITANIUM, 1),
+ new MaterialStack(ELEMENT.getInstance().OXYGEN, 3)
});
-
- public static final Material XENOTIME = new Material(
- "Xenotime", //Material Name
+
+ 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
+ //Perroudite
+ //Hg5Ag4S5(I,Br)2Cl2
+ public static final Material PERROUDITE = new Material(
+ "Perroudite", //Material Name
MaterialState.ORE, //State
- TextureSet.SET_FINE, //Texture Set
- new short[]{206, 232, 9, 0}, //Material Colour
+ TextureSet.SET_METALLIC, //Texture Set
+ new short[]{77, 165, 174, 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)
+ 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 AGARDITE_ND = new Material(
- "Agardite (Nd)", //Material Name
+ public static final Material POLYCRASE = new Material(
+ "Polycrase", //Material Name
MaterialState.ORE, //State
- TextureSet.SET_METALLIC, //Texture Set
- new short[]{225, 244, 78, 0}, //Material Colour
+ TextureSet.SET_ROUGH, //Texture Set
+ new short[]{51, 0, 11, 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[]{
+ new MaterialStack(ELEMENT.getInstance().YTTRIUM, 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)
+ 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 FLUORCAPHITE = new Material(
- "Fluorcaphite", //Material Name
+
+ //Radiobarite
+ //Radium, Barium, Barite?
+ public static final Material RADIOBARITE = new Material(
+ "Barite (Rd)", //Material Name
MaterialState.ORE, //State
- TextureSet.SET_FINE, //Texture Set
- new short[]{255, 255, 30, 0}, //Material Colour
+ TextureSet.SET_FLINT, //Texture Set
+ new short[]{205, 205, 205, 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),
- });
+ 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 FLORENCITE = new Material(
- "Florencite", //Material Name
+ //Samarskite_Y
+ public static final Material SAMARSKITE_Y = new Material(
+ "Samarskite (Y)", //Material Name
MaterialState.ORE, //State
- TextureSet.SET_METALLIC, //Texture Set
- new short[]{249, 249, 124, 0}, //Material Colour
+ TextureSets.ENRICHED.get(), //Texture Set
+ new short[]{65, 163, 164, 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)
+ 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)
});
- public static final Material CRYOLITE = new Material(
- "Cryolite", //Material Name
+ //Samarskite_YB
+ public static final Material SAMARSKITE_YB = new Material(
+ "Samarskite (Yb)", //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[]{95, 193, 194, 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().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)
});
-
- //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
+ public static final Material TITANITE = new Material(
+ "Titanite", //Material Name
MaterialState.ORE, //State
- TextureSets.REFINED.get(), //Texture Set
- new short[]{165, 105, 205, 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().CHLORINE, 1),
- new MaterialStack(ELEMENT.getInstance().BROMINE, 1),
- new MaterialStack(ELEMENT.getInstance().THALLIUM, 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)
});
- //Demicheleite-(Br)
- // BiSBr
- public static final Material DEMICHELEITE_BR = new Material(
- "Demicheleite (Br)", //Material Name
+ public static final Material XENOTIME = new Material(
+ "Xenotime", //Material Name
MaterialState.ORE, //State
- TextureSet.SET_SHINY, //Texture Set
- new short[]{165, 75, 75, 0}, //Material Colour
+ TextureSet.SET_OPAL, //Texture Set
+ new short[]{235, 89, 199, 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)
- });
-
- //Comancheite
- //Hg55N24(NH2,OH)4(Cl,Br)34
- public static final Material COMANCHEITE = new Material(
- "Comancheite", //Material Name
- MaterialState.ORE, //State
- 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)
+ 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> V[] insertElementAtIndex(V[] aArray, int aIndex, V aObjectToInsert) {
+ V[] newArray = Arrays.copyOf(aArray, aArray.length + 1);
+ for (int i=0;i<aIndex;i++) {
+ newArray[i] = aArray[i];
+ }
+ newArray[aIndex] = aObjectToInsert;
+ for (int i=(aIndex+1);i<newArray.length;i++) {
+ newArray[i] = aArray[i-1];
+ }
+ return newArray;
+ }
+
/*public static <V> Object getMostCommonElement(List<V> 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<aItems.length;i++) {
+ aItems[i] = (FluidStack) aStack.get(i);
+ }
+ return getArrayStackNames(aItems);
+ }
+ if (aType instanceof ItemStack) {
+ ItemStack[] aItems = new ItemStack[aStack.size()];
+ for (int i=0;i<aItems.length;i++) {
+ aItems[i] = (ItemStack) aStack.get(i);
+ }
+ return getArrayStackNames(aItems);
+ }
+ return "";
+ }
+
+ public static String getArrayStackNames(final AutoMap<?> aStack) {
+ Object aType = aStack.get(0);
+ if (aType instanceof FluidStack) {
+ FluidStack[] aItems = new FluidStack[aStack.size()];
+ for (int i=0;i<aItems.length;i++) {
+ aItems[i] = (FluidStack) aStack.get(i);
+ }
+ return getArrayStackNames(aItems);
+ }
+ if (aType instanceof ItemStack) {
+ ItemStack[] aItems = new ItemStack[aStack.size()];
+ for (int i=0;i<aItems.length;i++) {
+ aItems[i] = (ItemStack) aStack.get(i);
+ }
+ return getArrayStackNames(aItems);
+ }
+ return "";
+ }
public static String getArrayStackNames(final FluidStack[] aStack) {
String itemNames = "Fluid Array: ";
@@ -717,7 +755,7 @@ public class ItemUtils {
}
return itemNames;
}
-
+
public static String getArrayStackNames(final ItemStack[] aStack) {
String itemNames = "";
int aPos = 0;
@@ -1376,6 +1414,6 @@ public class ItemUtils {
public static boolean areItemsEqual(ItemStack aStack1, ItemStack aStack2, boolean aIgnoreNBT) {
return GT_Utility.areStacksEqual(aStack1, aStack2, aIgnoreNBT);
- }
+ }
}
diff --git a/src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java
index 0a5779d109..8c1b6a4c02 100644
--- a/src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java
+++ b/src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java
@@ -506,10 +506,7 @@ public static int mInvalidID = 1;
result.put("Is Enabled? "+m.mEnabled);
result.put("Special Value: "+m.mSpecialValue);
result.put("=====================================");
- String s[] = new String[result.size()];
- for (int i=0;i<result.size();i++) {
- s[i] = result.get(i);
- }
+ String s[] = result.toArray();
return s;
}
diff --git a/src/Java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java b/src/Java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java
index 63c96b4f07..acaea3fa4b 100644
--- a/src/Java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java
+++ b/src/Java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java
@@ -170,13 +170,17 @@ public class GT_NEI_LFTR_Sparging extends TemplateRecipeHandler {
final TemplateRecipeHandler.CachedRecipe tObject = this.arecipes.get(aRecipeIndex);
if ((tObject instanceof GasSpargingRecipeNEI)) {
final GasSpargingRecipeNEI tRecipe = (GasSpargingRecipeNEI) tObject;
- ItemStack aInput = tRecipe.mInputs.get(0).item;
+ ItemStack aSpargeInput = tRecipe.mOutputs.get(0).item;
+ ItemStack aSpentFuel = tRecipe.mOutputs.get(1).item;
for (final PositionedStack tStack : tRecipe.mOutputs) {
if (aStack == tStack.item) {
- if (ItemList.Display_Fluid.isStackEqual(tStack.item, true, true) && ((FixedPositionedStack) tStack).mChance < 10000) {
- if (GT_Utility.areStacksEqual(aStack, aInput, true)) {
- currenttip.add("The amount returned is the remainder after all other outputs.");
+ if (ItemList.Display_Fluid.isStackEqual(tStack.item, true, true)) {
+ if (GT_Utility.areStacksEqual(aStack, aSpentFuel, true)) {
+ break;
}
+ if (GT_Utility.areStacksEqual(aStack, aSpargeInput, true)) {
+ currenttip.add("The amount returned is the remainder after all other outputs.");
+ }
currenttip.add("Maximum Output: " + (((FixedPositionedStack) tStack).mChance / 100) + "." + ((((FixedPositionedStack) tStack).mChance % 100) < 10 ? "0" + (((FixedPositionedStack) tStack).mChance % 100) : Integer.valueOf(((FixedPositionedStack) tStack).mChance % 100)) + "L");
break;
}
@@ -259,10 +263,10 @@ public class GT_NEI_LFTR_Sparging extends TemplateRecipeHandler {
int tStartIndex = 0;
if (tRecipe.mFluidInputs.length > 0) {
if ((tRecipe.mFluidInputs[0] != null) && (tRecipe.mFluidInputs[0].getFluid() != null)) {
- this.mInputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidInputs[0], true), 12, 5));
+ this.mInputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidInputs[0], true), 30, 5));
}
if ((tRecipe.mFluidInputs.length > 1) && (tRecipe.mFluidInputs[1] != null) && (tRecipe.mFluidInputs[1].getFluid() != null)) {
- this.mInputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidInputs[1], true), 30, 5));
+ this.mInputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidInputs[1], true), 12, 5));
}
if ((tRecipe.mFluidInputs.length > 2) && (tRecipe.mFluidInputs[2] != null) && (tRecipe.mFluidInputs[2].getFluid() != null)) {
this.mInputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidInputs[2], true), 48, 5));
@@ -290,10 +294,10 @@ public class GT_NEI_LFTR_Sparging extends TemplateRecipeHandler {
tStartIndex = 0;
if (tRecipe.mFluidOutputs.length > 0) {
if ((tRecipe.mFluidOutputs[0] != null) && (tRecipe.mFluidOutputs[0].getFluid() != null)) {
- this.mOutputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidOutputs[0], true), 102, 5, tRecipe.getMaxOutput(tStartIndex++)));
+ this.mOutputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidOutputs[0], false), 120, 5, tRecipe.getMaxOutput(tStartIndex++)));
}
if ((tRecipe.mFluidOutputs.length > 1) && (tRecipe.mFluidOutputs[1] != null) && (tRecipe.mFluidOutputs[1].getFluid() != null)) {
- this.mOutputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidOutputs[1], false), 120, 5, tRecipe.getMaxOutput(tStartIndex++)));
+ this.mOutputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidOutputs[1], true), 102, 5, tRecipe.getMaxOutput(tStartIndex++)));
}
if ((tRecipe.mFluidOutputs.length > 2) && (tRecipe.mFluidOutputs[2] != null) && (tRecipe.mFluidOutputs[2].getFluid() != null)) {
this.mOutputs.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(tRecipe.mFluidOutputs[2], false), 138, 5, tRecipe.getMaxOutput(tStartIndex++)));
diff --git a/src/Java/gtPlusPlus/nei/NEI_GT_Config.java b/src/Java/gtPlusPlus/nei/NEI_GT_Config.java
index 671e1db3ac..1595bc8c8e 100644
--- a/src/Java/gtPlusPlus/nei/NEI_GT_Config.java
+++ b/src/Java/gtPlusPlus/nei/NEI_GT_Config.java
@@ -70,8 +70,8 @@ implements IConfigureNEI {
new GT_NEI_MultiNoCell(GTPP_Recipe_Map.sMultiblockElectrolyzerRecipes_GT);
Logger.INFO("NEI Registration: Registering NEI handler for "+GTPP_Recipe_Map.sMultiblockMixerRecipes_GT.mNEIName);
new GT_NEI_MultiNoCell(GTPP_Recipe_Map.sMultiblockMixerRecipes_GT);
- Logger.INFO("NEI Registration: Registering NEI handler for "+GTPP_Recipe_Map.sSpargeTowerRecipes.mNEIName);
- new GT_NEI_MultiNoCell(GTPP_Recipe_Map.sSpargeTowerRecipes);
+ //Logger.INFO("NEI Registration: Registering NEI handler for "+GTPP_Recipe_Map.sSpargeTowerRecipes.mNEIName);
+ //new GT_NEI_MultiNoCell(GTPP_Recipe_Map.sSpargeTowerRecipes);
Logger.INFO("NEI Registration: Registering NEI handler for "+DecayableRecipeHandler.mNEIName);
API.registerRecipeHandler(new DecayableRecipeHandler());
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
index 3878583b60..9aff009ec5 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
@@ -7,6 +7,7 @@ import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Materials;
import gregtech.api.gui.GT_Container_MultiMachine;
import gregtech.api.gui.GT_GUIContainer_MultiMachine;
+import gregtech.api.interfaces.IToolStats;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords;
@@ -30,6 +31,7 @@ import gtPlusPlus.core.lib.LoadedMods;
import gtPlusPlus.core.recipe.common.CI;
import gtPlusPlus.core.util.math.MathUtils;
import gtPlusPlus.core.util.minecraft.ItemUtils;
+import gtPlusPlus.core.util.minecraft.PlayerUtils;
import gtPlusPlus.core.util.reflect.ReflectionUtils;
import gtPlusPlus.preloader.CORE_Preloader;
import gtPlusPlus.preloader.asm.AsmConfig;
@@ -51,6 +53,8 @@ import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import net.minecraftforge.fluids.FluidStack;
+import net.minecraftforge.oredict.OreDictionary;
+
import org.apache.commons.lang3.ArrayUtils;
import java.lang.reflect.InvocationTargetException;
@@ -2392,20 +2396,43 @@ public abstract class GregtechMeta_MultiBlockBase<T extends GT_MetaTileEntity_En
@Override
public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, byte aSide, float aX,
float aY, float aZ) {
- //Do Super
- boolean aSuper = super.onRightclick(aBaseMetaTileEntity, aPlayer, aSide, aX, aY, aZ);
// Do Things
if (this.getBaseMetaTileEntity().isServerSide()) {
+ //Logger.INFO("Right Clicked Controller.");
ItemStack tCurrentItem = aPlayer.inventory.getCurrentItem();
- if (tCurrentItem != null) {
- if (GT_Utility.isStackInList(tCurrentItem, GregTech_API.sSoftHammerList)) {
-
- }
+ if (tCurrentItem != null) {
+ //Logger.INFO("Holding Item.");
+ if (tCurrentItem.getItem() instanceof GT_MetaGenerated_Tool) {
+ //Logger.INFO("Is GT_MetaGenerated_Tool.");
+ int[] aOreID = OreDictionary.getOreIDs(tCurrentItem);
+ for (int id : aOreID) {
+ // Plunger
+ if (OreDictionary.getOreName(id).equals("craftingToolPlunger")) {
+ //Logger.INFO("Is Plunger.");
+ return onPlungerRightClick(aPlayer, aSide, aX, aY, aZ);
+ }
+ }
+ }
}
}
+ //Do Super
+ boolean aSuper = super.onRightclick(aBaseMetaTileEntity, aPlayer, aSide, aX, aY, aZ);
return aSuper;
}
+ public boolean onPlungerRightClick(EntityPlayer aPlayer, byte aSide, float aX, float aY, float aZ) {
+ int aHatchIndex = 0;
+ PlayerUtils.messagePlayer(aPlayer, "Trying to clear "+mOutputHatches.size()+" output hatches.");
+ for (GT_MetaTileEntity_Hatch_Output hatch : this.mOutputHatches) {
+ if (hatch.mFluid != null) {
+ PlayerUtils.messagePlayer(aPlayer, "Clearing "+hatch.mFluid.amount+"L of "+hatch.mFluid.getLocalizedName()+" from hatch "+aHatchIndex+".");
+ hatch.mFluid = null;
+ }
+ aHatchIndex++;
+ }
+ return aHatchIndex > 0;
+ }
+
@Override
public boolean onSolderingToolRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
boolean tSuper = super.onSolderingToolRightClick(aSide, aWrenchingSide, aPlayer, aX, aY, aZ);
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java
index 57c5aab480..a75b148442 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java
@@ -30,286 +30,414 @@ import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.GasSpargingRecipe;
import gregtech.api.util.GasSpargingRecipeMap;
+import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.api.objects.data.AutoMap;
import gtPlusPlus.core.block.ModBlocks;
import gtPlusPlus.core.lib.CORE;
-import gtPlusPlus.core.util.minecraft.MaterialUtils;
+import gtPlusPlus.core.util.math.MathUtils;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+import gtPlusPlus.core.util.minecraft.PlayerUtils;
+import gtPlusPlus.core.util.minecraft.RecipeUtils;
+import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase;
import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock;
+import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
-public class GregtechMetaTileEntity_SpargeTower extends GT_MetaTileEntity_EnhancedMultiBlockBase<GregtechMetaTileEntity_SpargeTower> {
-
- protected static final String STRUCTURE_PIECE_BASE = "base";
- protected static final String STRUCTURE_PIECE_LAYER = "layer";
- protected static final String STRUCTURE_PIECE_LAYER_HINT = "layerHint";
- protected static final String STRUCTURE_PIECE_TOP_HINT = "topHint";
- private static final IStructureDefinition<GregtechMetaTileEntity_SpargeTower> STRUCTURE_DEFINITION = StructureDefinition.<GregtechMetaTileEntity_SpargeTower>builder()
- .addShape(STRUCTURE_PIECE_BASE, transpose(new String[][]{
- {"b~b", "bbb", "bbb"},
- }))
- .addShape(STRUCTURE_PIECE_LAYER, transpose(new String[][]{
- {"lll", "lcl", "lll"}
- }))
- .addShape(STRUCTURE_PIECE_LAYER_HINT, transpose(new String[][]{
- {"lll", "l-l", "lll"}
- }))
- .addShape(STRUCTURE_PIECE_TOP_HINT, transpose(new String[][]{
- {"lll", "lll", "lll"}
- }))
- .addElement('b', ofChain(
- ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addEnergyInputToMachineList, getCasingIndex(), 1),
- ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addOutputToMachineList, getCasingIndex(), 1),
- ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addInputToMachineList, getCasingIndex(), 1),
- ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addMaintenanceToMachineList, getCasingIndex(), 1),
- onElementPass(GregtechMetaTileEntity_SpargeTower::onCasingFound, ofBlock(ModBlocks.blockCasings5Misc, 4))
- ))
- .addElement('l', ofChain(
- ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addEnergyInputToMachineList, getCasingIndex(), 2),
- ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addLayerOutputHatch, getCasingIndex(), 2),
- ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addMaintenanceToMachineList, getCasingIndex(), 2),
- onElementPass(GregtechMetaTileEntity_SpargeTower::onCasingFound, ofBlock(ModBlocks.blockCasings5Misc, 4))
- ))
- .addElement('c', ofChain(
- onElementPass(t -> t.onTopLayerFound(false), ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addOutputToMachineList, getCasingIndex(), 3)),
- onElementPass(t -> t.onTopLayerFound(false), ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addMaintenanceToMachineList, getCasingIndex(), 3)),
- onElementPass(t -> t.onTopLayerFound(true), ofBlock(ModBlocks.blockCasings5Misc, 4)),
- isAir()
- ))
- .build();
-
- protected final List<List<GT_MetaTileEntity_Hatch_Output>> mOutputHatchesByLayer = new ArrayList<>();
- protected int mHeight;
- protected int mCasing;
- protected boolean mTopLayerFound;
-
- public GregtechMetaTileEntity_SpargeTower(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GregtechMetaTileEntity_SpargeTower(String aName) {
- super(aName);
- }
-
- public static int getCasingIndex() {
- return 68;
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntity_SpargeTower(this.mName);
- }
-
- @Override
- protected GT_Multiblock_Tooltip_Builder createTooltip() {
- final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder();
- tt.addMachineType("Gas Sparge Tower")
- .addInfo("Controller block for the Sparging Tower")
- .addInfo("Fluids are only put out at the correct height")
- .addInfo("The correct height equals the slot number in the NEI recipe")
- .addSeparator()
- .beginVariableStructureBlock(3, 3, 7, 7, 3, 3, true)
- .addController("Front bottom")
- .addOtherStructurePart("Sparge Tower Exterior Casing", "45 (minimum)")
- .addEnergyHatch("Any casing", 1, 2)
- .addMaintenanceHatch("Any casing", 1, 2, 3)
- .addInputHatch("Any bottom layer casing", 1)
- .addOutputHatch("6x Output Hatches (At least one per layer except bottom layer)", 2, 3)
- .toolTipFinisher(CORE.GT_Tooltip_Builder);
- return tt;
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- if (aActive)
- return new ITexture[]{
- BlockIcons.getCasingTextureForId(getCasingIndex()),
- TextureFactory.builder().addIcon(TexturesGtBlock.Overlay_Machine_Controller_Advanced_Active).extFacing().build()};
- return new ITexture[]{
- BlockIcons.getCasingTextureForId(getCasingIndex()),
- TextureFactory.builder().addIcon(TexturesGtBlock.Overlay_Machine_Controller_Advanced).extFacing().build()};
- }
- return new ITexture[]{Textures.BlockIcons.getCasingTextureForId(getCasingIndex())};
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "DistillationTower.png");
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- if (GTPP_Recipe_Map.sSpargeTowerRecipes.mRecipeList.isEmpty()) {
- generateRecipes();
- }
+public class GregtechMetaTileEntity_SpargeTower extends GregtechMeta_MultiBlockBase<GregtechMetaTileEntity_SpargeTower> {
+
+ protected static final String STRUCTURE_PIECE_BASE = "base";
+ protected static final String STRUCTURE_PIECE_LAYER = "layer";
+ protected static final String STRUCTURE_PIECE_LAYER_HINT = "layerHint";
+ protected static final String STRUCTURE_PIECE_TOP_HINT = "topHint";
+ private static final IStructureDefinition<GregtechMetaTileEntity_SpargeTower> STRUCTURE_DEFINITION = StructureDefinition.<GregtechMetaTileEntity_SpargeTower>builder()
+ .addShape(STRUCTURE_PIECE_BASE, transpose(new String[][]{
+ {"b~b", "bbb", "bbb"},
+ }))
+ .addShape(STRUCTURE_PIECE_LAYER, transpose(new String[][]{
+ {"lll", "lcl", "lll"}
+ }))
+ .addShape(STRUCTURE_PIECE_LAYER_HINT, transpose(new String[][]{
+ {"lll", "l-l", "lll"}
+ }))
+ .addShape(STRUCTURE_PIECE_TOP_HINT, transpose(new String[][]{
+ {"lll", "lll", "lll"}
+ }))
+ .addElement('b', ofChain(
+ ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addEnergyInputToMachineList, getCasingIndex(), 1),
+ ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addOutputToMachineList, getCasingIndex(), 1),
+ ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addInputToMachineList, getCasingIndex(), 1),
+ ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addMaintenanceToMachineList, getCasingIndex(), 1),
+ onElementPass(GregtechMetaTileEntity_SpargeTower::onCasingFound, ofBlock(ModBlocks.blockCasings5Misc, 4))
+ ))
+ .addElement('l', ofChain(
+ ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addEnergyInputToMachineList, getCasingIndex(), 2),
+ ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addLayerOutputHatch, getCasingIndex(), 2),
+ ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addMaintenanceToMachineList, getCasingIndex(), 2),
+ onElementPass(GregtechMetaTileEntity_SpargeTower::onCasingFound, ofBlock(ModBlocks.blockCasings5Misc, 4))
+ ))
+ .addElement('c', ofChain(
+ onElementPass(t -> t.onTopLayerFound(false), ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addOutputToMachineList, getCasingIndex(), 3)),
+ onElementPass(t -> t.onTopLayerFound(false), ofHatchAdder(GregtechMetaTileEntity_SpargeTower::addMaintenanceToMachineList, getCasingIndex(), 3)),
+ onElementPass(t -> t.onTopLayerFound(true), ofBlock(ModBlocks.blockCasings5Misc, 4)),
+ isAir()
+ ))
+ .build();
+
+ protected final List<List<GT_MetaTileEntity_Hatch_Output>> mOutputHatchesByLayer = new ArrayList<>();
+ protected int mHeight;
+ protected int mCasing;
+ protected boolean mTopLayerFound;
+
+ public GregtechMetaTileEntity_SpargeTower(int aID, String aName, String aNameRegional) {
+ super(aID, aName, aNameRegional);
+ }
+
+ public GregtechMetaTileEntity_SpargeTower(String aName) {
+ super(aName);
+ }
+
+ public static int getCasingIndex() {
+ return 68;
+ }
+
+ @Override
+ public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
+ return new GregtechMetaTileEntity_SpargeTower(this.mName);
+ }
+
+ @Override
+ protected GT_Multiblock_Tooltip_Builder createTooltip() {
+ final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder();
+ tt.addMachineType("Gas Sparge Tower")
+ .addInfo("Controller block for the Sparging Tower")
+ .addInfo("Fluids are only put out at the correct height")
+ .addInfo("The correct height equals the slot number in the NEI recipe")
+ .addSeparator()
+ .beginStructureBlock(3, 8, 3, true)
+ .addController("Front bottom")
+ .addOtherStructurePart("Sparge Tower Exterior Casing", "45 (minimum)")
+ .addEnergyHatch("Any casing", 1, 2)
+ .addMaintenanceHatch("Any casing", 1, 2, 3)
+ .addInputHatch("2x Input Hatches (Any bottom layer casing)", 1)
+ .addOutputHatch("6x Output Hatches (At least one per layer except bottom layer)", 2, 3)
+ .toolTipFinisher(CORE.GT_Tooltip_Builder);
+ return tt;
+ }
+
+ @Override
+ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
+ if (aSide == aFacing) {
+ if (aActive)
+ return new ITexture[]{
+ BlockIcons.getCasingTextureForId(getCasingIndex()),
+ TextureFactory.builder().addIcon(TexturesGtBlock.Overlay_Machine_Controller_Advanced_Active).extFacing().build()};
+ return new ITexture[]{
+ BlockIcons.getCasingTextureForId(getCasingIndex()),
+ TextureFactory.builder().addIcon(TexturesGtBlock.Overlay_Machine_Controller_Advanced).extFacing().build()};
+ }
+ return new ITexture[]{Textures.BlockIcons.getCasingTextureForId(getCasingIndex())};
+ }
+
+ @Override
+ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
+ return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "DistillationTower.png");
+ }
+
+ @Override
+ public GT_Recipe.GT_Recipe_Map getRecipeMap() {
+ GTPP_Recipe_Map.sSpargeTowerRecipes.mRecipeList.clear();
+ if (GTPP_Recipe_Map.sSpargeTowerRecipes.mRecipeList.isEmpty()) {
+ generateRecipes();
+ }
return GTPP_Recipe_Map.sSpargeTowerRecipes;
- }
-
- private static boolean generateRecipes() {
- for (GasSpargingRecipe aRecipe : GasSpargingRecipeMap.mRecipes) {
- GTPP_Recipe newRecipe = new GTPP_Recipe(
- false,
- new ItemStack[] {},
- new ItemStack[] {},
- null,
- aRecipe.mMaxOutputQuantity,
- aRecipe.mFluidInputs,
- aRecipe.mFluidOutputs,
- aRecipe.mDuration,
- aRecipe.mEUt,
- 0);
- GTPP_Recipe_Map.sSpargeTowerRecipes.add(newRecipe);
- }
-
-
-
- return false;
- }
-
- @Override
- public boolean isCorrectMachinePart(ItemStack aStack) {
- return true;
- }
-
- @Override
- public boolean checkRecipe(ItemStack aStack) {
- ArrayList<FluidStack> tFluidList = getStoredFluids();
- for (int i = 0; i < tFluidList.size() - 1; i++) {
- for (int j = i + 1; j < tFluidList.size(); j++) {
- if (GT_Utility.areFluidsEqual(tFluidList.get(i), tFluidList.get(j))) {
- if (tFluidList.get(i).amount >= tFluidList.get(j).amount) {
- tFluidList.remove(j--);
- } else {
- tFluidList.remove(i--);
- break;
- }
- }
- }
- }
-
- long tVoltage = getMaxInputVoltage();
- byte tTier = (byte) Math.max(0, GT_Utility.getTier(tVoltage));
- FluidStack[] tFluids = tFluidList.toArray(new FluidStack[0]);
- if (tFluids.length > 0) {
- for (FluidStack tFluid : tFluids) {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sDistillationRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], new FluidStack[]{tFluid});
- if (tRecipe != null) {
- if (tRecipe.isRecipeInputEqual(true, tFluids)) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
- calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage);
- //In case recipe is too OP for that machine
- if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1)
- return false;
- if (this.mEUt > 0) {
- this.mEUt = (-this.mEUt);
- }
- this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
- this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0)};
- this.mOutputFluids = tRecipe.mFluidOutputs.clone();
- updateSlots();
- return true;
- }
- }
- }
- }
-
- return false;
- }
-
- protected void onCasingFound() {
- mCasing++;
- }
-
- protected void onTopLayerFound(boolean aIsCasing) {
- mTopLayerFound = true;
- if (aIsCasing)
- onCasingFound();
- }
-
- protected boolean addLayerOutputHatch(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
- if (aTileEntity == null || aTileEntity.isDead() || !(aTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_Hatch_Output))
- return false;
- while (mOutputHatchesByLayer.size() < mHeight)
- mOutputHatchesByLayer.add(new ArrayList<>());
- GT_MetaTileEntity_Hatch_Output tHatch = (GT_MetaTileEntity_Hatch_Output) aTileEntity.getMetaTileEntity();
- tHatch.updateTexture(aBaseCasingIndex);
- return mOutputHatchesByLayer.get(mHeight - 1).add(tHatch);
- }
-
- @Override
- protected IAlignmentLimits getInitialAlignmentLimits() {
- // don't rotate a freaking tower, it won't work
- return (d, r, f) -> d.offsetY == 0 && r.isNotRotated() && !f.isVerticallyFliped();
- }
-
- @Override
- public IStructureDefinition<GregtechMetaTileEntity_SpargeTower> getStructureDefinition() {
- return STRUCTURE_DEFINITION;
- }
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- // reset
- mOutputHatchesByLayer.forEach(List::clear);
- mHeight = 1;
- mTopLayerFound = false;
- mCasing = 0;
-
- // check base
- if (!checkPiece(STRUCTURE_PIECE_BASE, 1, 0, 0))
- return false;
-
- // check each layer
- while (mHeight < 7 && checkPiece(STRUCTURE_PIECE_LAYER, 1, mHeight, 0) && !mTopLayerFound) {
- if (mOutputHatchesByLayer.get(mHeight - 1).isEmpty())
- // layer without output hatch
- return false;
- // not top
- mHeight++;
- }
-
- // validate final invariants...
- return mCasing >= 7 * mHeight - 5 && mHeight >= 2 && mTopLayerFound && mMaintenanceHatches.size() == 1;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getDamageToComponent(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-
- @Override
- protected void addFluidOutputs(FluidStack[] mOutputFluids2) {
- for (int i = 0; i < mOutputFluids2.length && i < mOutputHatchesByLayer.size(); i++) {
- FluidStack tStack = mOutputFluids2[i].copy();
- if (!dumpFluid(mOutputHatchesByLayer.get(i), tStack, true))
- dumpFluid(mOutputHatchesByLayer.get(i), tStack, false);
- }
- }
-
- @Override
- public void construct(ItemStack stackSize, boolean hintsOnly) {
- buildPiece(STRUCTURE_PIECE_BASE, stackSize, hintsOnly, 1, 0, 0);
- int tTotalHeight = 7; // min 2 output layer, so at least 1 + 2 height
- for (int i = 1; i < tTotalHeight - 1; i++) {
- buildPiece(STRUCTURE_PIECE_LAYER_HINT, stackSize, hintsOnly, 1, i, 0);
- }
- buildPiece(STRUCTURE_PIECE_TOP_HINT, stackSize, hintsOnly, 1, tTotalHeight - 1, 0);
- }
+ }
+
+ private static boolean generateRecipes() {
+ for (GasSpargingRecipe aRecipe : GasSpargingRecipeMap.mRecipes) {
+ GTPP_Recipe newRecipe = new GTPP_Recipe(
+ false,
+ new ItemStack[] {},
+ new ItemStack[] {},
+ null,
+ null,
+ aRecipe.mFluidInputs.clone(),
+ new FluidStack[] {},
+ aRecipe.mDuration,
+ aRecipe.mEUt,
+ 0);
+ GTPP_Recipe_Map.sSpargeTowerRecipes.add(newRecipe);
+ }
+ if (GTPP_Recipe_Map.sSpargeTowerRecipes.mRecipeList.isEmpty()) {
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public boolean isCorrectMachinePart(ItemStack aStack) {
+ return true;
+ }
+
+ @Override
+ public boolean checkRecipe(ItemStack aStack) {
+ ArrayList<FluidStack> tFluidList = getStoredFluids();
+ long tVoltage = getMaxInputVoltage();
+ byte tTier = (byte) Math.max(0, GT_Utility.getTier(tVoltage));
+ FluidStack[] tFluids = tFluidList.toArray(new FluidStack[0]);
+ if (tFluids.length > 0) {
+ Logger.INFO("Found "+tFluids.length+" input fluids. Searching "+GTPP_Recipe_Map.sSpargeTowerRecipes.mRecipeList.size()+" recipes.");
+ GT_Recipe tRecipe = getRecipeMap().findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluids);
+ if (tRecipe != null) {
+ Logger.INFO("Found recipe!");
+ try {
+ String[] aRecipeInfo = RecipeUtils.getRecipeInfo(tRecipe);
+ for (String info : aRecipeInfo) {
+ Logger.INFO(" "+info);
+ }
+ }
+ catch (Throwable e) {
+ e.printStackTrace();
+ }
+ if (tRecipe.isRecipeInputEqual(true, tFluids)) {
+ Logger.INFO("Found recipe that matches!");
+ this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
+ this.mEfficiencyIncrease = 10000;
+
+ // Reset outputs and progress stats
+ this.mEUt = 0;
+ this.mProgresstime = 0;
+ this.mMaxProgresstime = 0;
+ this.mOutputItems = new ItemStack[]{};
+ this.mOutputFluids = new FluidStack[]{};
+ this.mLastRecipe = tRecipe;
+
+ // Deplete Inputs
+ if (tRecipe.mFluidInputs.length > 0) {
+ for (FluidStack aInputToConsume : tRecipe.mFluidInputs) {
+ Logger.INFO("Depleting "+aInputToConsume.getLocalizedName()+" - "+aInputToConsume.amount+"L");
+ this.depleteInput(aInputToConsume);
+ }
+ }
+ else {
+ this.mEUt = 0;
+ this.mEfficiency = 0;
+ return false;
+ }
+
+ calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage);
+ int aDevProgress = this.mMaxProgresstime / 10;
+ this.mMaxProgresstime = Math.max(1, aDevProgress);
+ this.mOutputItems = new ItemStack[]{};
+ ArrayList<FluidStack> aFluidOutputs = getByproductsOfSparge(tRecipe.mFluidInputs[0], tRecipe.mFluidInputs[1]);
+ this.mOutputFluids = (FluidStack[]) aFluidOutputs.toArray(new FluidStack[0]).clone();
+ updateSlots();
+ Logger.INFO("Done!");
+ return true;
+ }
+ }
+ else {
+ Logger.INFO("Did not find recipe!");
+ }
+ }
+ this.mEUt = 0;
+ this.mEfficiency = 0;
+ Logger.INFO("Did not find recipe! (2)");
+ return false;
+ }
+
+ private static ArrayList<FluidStack> getByproductsOfSparge(final FluidStack aSpargeGas, final FluidStack aSpentFuel){
+ GasSpargingRecipe aSpargeRecipe = GasSpargingRecipeMap.findRecipe(aSpargeGas, aSpentFuel);
+ ArrayList<FluidStack> aOutputGases = new ArrayList<FluidStack>();
+ if (aSpargeRecipe == null) {
+ Logger.INFO("Did not find sparge recipe!");
+ return aOutputGases;
+ }
+ else {
+ Logger.INFO("Found sparge recipe!");
+ try {
+ String[] aRecipeInfo = aSpargeRecipe.getRecipeInfo();
+ for (String info : aRecipeInfo) {
+ Logger.INFO(" "+info);
+ }
+ }
+ catch (Throwable e) {
+ e.printStackTrace();
+ }
+ }
+ int aSpargeGasAmount = aSpargeRecipe.mInputGas.amount;
+
+ aOutputGases.add(aSpargeRecipe.mOutputSpargedFuel.copy());
+ ArrayList<FluidStack> aTempMap = new ArrayList<FluidStack>();
+ for (int i=2;i<aSpargeRecipe.mFluidOutputs.length;i++) {
+ int aGasAmount = MathUtils.randInt(0, (aSpargeRecipe.mMaxOutputQuantity[i-2]/100));
+ FluidStack aOutput = aSpargeRecipe.mFluidOutputs[i].copy();
+ aSpargeGasAmount -= aGasAmount;
+ FluidStack aSpargeOutput = null;
+ if (aGasAmount > 0) {
+ aSpargeOutput = new FluidStack(aOutput.getFluid(), aGasAmount);
+ }
+ aTempMap.add(aSpargeOutput);
+ }
+ Logger.INFO("Sparge gas left: "+aSpargeGasAmount);
+ if (aSpargeGasAmount > 0) {
+ aOutputGases.add(new FluidStack(aSpargeRecipe.mInputGas.getFluid(), aSpargeGasAmount));
+ }
+ Logger.INFO("Sparge Outputs: "+ItemUtils.getArrayStackNames(aTempMap));
+ aOutputGases.addAll(aTempMap);
+ Logger.INFO("Sparge output size: "+aOutputGases.size());
+ Logger.INFO("Output of sparging: "+ItemUtils.getArrayStackNames(aOutputGases));
+ return aOutputGases;
+ }
+
+ protected void onCasingFound() {
+ mCasing++;
+ }
+
+ protected void onTopLayerFound(boolean aIsCasing) {
+ mTopLayerFound = true;
+ if (aIsCasing) {
+ onCasingFound();
+ }
+ }
+
+ protected boolean addLayerOutputHatch(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
+ if (aTileEntity == null || aTileEntity.isDead() || !(aTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_Hatch_Output))
+ return false;
+ while (mOutputHatchesByLayer.size() < mHeight) {
+ mOutputHatchesByLayer.add(new ArrayList<>());
+ }
+ GT_MetaTileEntity_Hatch_Output tHatch = (GT_MetaTileEntity_Hatch_Output) aTileEntity.getMetaTileEntity();
+ tHatch.updateTexture(aBaseCasingIndex);
+ return mOutputHatchesByLayer.get(mHeight - 1).add(tHatch);
+ }
+
+ @Override
+ protected IAlignmentLimits getInitialAlignmentLimits() {
+ // don't rotate a freaking tower, it won't work
+ return (d, r, f) -> d.offsetY == 0 && r.isNotRotated() && !f.isVerticallyFliped();
+ }
+
+ @Override
+ public IStructureDefinition<GregtechMetaTileEntity_SpargeTower> getStructureDefinition() {
+ return STRUCTURE_DEFINITION;
+ }
+
+ @Override
+ public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
+ // reset
+ mOutputHatchesByLayer.forEach(List::clear);
+ mHeight = 1;
+ mTopLayerFound = false;
+ mCasing = 0;
+
+ // check base
+ if (!checkPiece(STRUCTURE_PIECE_BASE, 1, 0, 0)) {
+ return false;
+ }
+
+ // check each layer
+ while (mHeight < 8 && checkPiece(STRUCTURE_PIECE_LAYER, 1, mHeight, 0) && !mTopLayerFound) {
+ if (mOutputHatchesByLayer.get(mHeight - 1).isEmpty()) {
+ // layer without output hatch
+ return false;
+ }
+ // not top
+ mHeight++;
+ }
+
+ // validate final invariants...
+ Logger.INFO("Height: "+mHeight);
+ Logger.INFO("Casings: "+mCasing);
+ Logger.INFO("Required: "+(7 * mHeight - 5));
+ Logger.INFO("Found Top: "+mTopLayerFound);
+ return mCasing >= 7 * mHeight - 5 && mTopLayerFound && mMaintenanceHatches.size() == 1;
+ }
+
+ @Override
+ public int getMaxEfficiency(ItemStack aStack) {
+ return 10000;
+ }
+
+ @Override
+ public int getPollutionPerTick(ItemStack aStack) {
+ return 0;
+ }
+
+ @Override
+ public int getDamageToComponent(ItemStack aStack) {
+ return 0;
+ }
+
+ @Override
+ public boolean explodesOnComponentBreak(ItemStack aStack) {
+ return false;
+ }
+
+ @Override
+ protected void addFluidOutputs(FluidStack[] mOutputFluids2) {
+ for (int i = 0; i < mOutputFluids2.length && i < mOutputHatchesByLayer.size(); i++) {
+ FluidStack tStack = mOutputFluids2[i] != null ? mOutputFluids2[i].copy() : null;
+ if (tStack == null) {
+ continue;
+ }
+ if (!dumpFluid(mOutputHatchesByLayer.get(i), tStack, true)) {
+ dumpFluid(mOutputHatchesByLayer.get(i), tStack, false);
+ }
+ }
+ }
+
+ @Override
+ public void construct(ItemStack stackSize, boolean hintsOnly) {
+ buildPiece(STRUCTURE_PIECE_BASE, stackSize, hintsOnly, 1, 0, 0);
+ int tTotalHeight = 8; // min 2 output layer, so at least 1 + 2 height
+ for (int i = 1; i < tTotalHeight - 1; i++) {
+ buildPiece(STRUCTURE_PIECE_LAYER_HINT, stackSize, hintsOnly, 1, i, 0);
+ }
+ buildPiece(STRUCTURE_PIECE_TOP_HINT, stackSize, hintsOnly, 1, tTotalHeight - 1, 0);
+ }
+
+ @Override
+ public boolean hasSlotInGUI() {
+ return false;
+ }
+
+ @Override
+ public String getCustomGUIResourceName() {
+ return null;
+ }
+
+ @Override
+ public String getMachineType() {
+ return "Gas Sparger";
+ }
+
+ @Override
+ public int getMaxParallelRecipes() {
+ return 1;
+ }
+
+ @Override
+ public int getEuDiscountForParallelism() {
+ return 0;
+ }
+
+ @Override
+ public boolean onPlungerRightClick(EntityPlayer aPlayer, byte aSide, float aX, float aY, float aZ) {
+ int aLayerIndex = 0;
+ PlayerUtils.messagePlayer(aPlayer, "Trying to clear "+mOutputHatchesByLayer.size()+" layers of output hatches.");
+ for (List<GT_MetaTileEntity_Hatch_Output> layer : this.mOutputHatchesByLayer) {
+ int aHatchIndex = 0;
+ for (GT_MetaTileEntity_Hatch_Output hatch : layer) {
+ if (hatch.mFluid != null) {
+ PlayerUtils.messagePlayer(aPlayer, "Clearing "+hatch.mFluid.amount+"L of "+hatch.mFluid.getLocalizedName()+" from hatch "+aHatchIndex+" on layer "+aLayerIndex+".");
+ hatch.mFluid = null;
+ }
+ aHatchIndex++;
+ }
+ aLayerIndex++;
+ }
+ return aLayerIndex > 0;
+ }
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java
index 7833129cf9..7d5c47e185 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java
@@ -391,7 +391,7 @@ public class GregtechMTE_NuclearReactor extends GregtechMeta_MultiBlockBase {
// Warm up for 4~ minutes
Logger.WARNING("Checking LFTR recipes.");
if (mEfficiency < this.getMaxEfficiency(null)) {
- this.mProgresstime = 1;
+ this.mProgresstime = 0;
this.mMaxProgresstime = 1;
this.mEfficiencyIncrease = 2;
Logger.WARNING("Warming Up! "+this.mEfficiency+"/"+this.getMaxEfficiency(null));
@@ -636,8 +636,8 @@ public class GregtechMTE_NuclearReactor extends GregtechMeta_MultiBlockBase {
if (this.mSpargeTicks >= this.mSpargeTime) {
this.mSpargeTime = 0;
this.mSpargeTicks = 0;
- Logger.WARNING("Sparging!");
- trySparge();
+ //Logger.WARNING("Sparging!");
+ //trySparge();
}
}
super.onPostTick(aBaseMetaTileEntity, aTick);
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java
index f5b20966d5..a09cbcce0d 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java
@@ -53,7 +53,7 @@ public class RecipeLoader_LFTR {
//1l/10t= 1000l/2.5hr LiFBeF2ZrF4U235
configureSparging();
- FluidStack Li2BeF4 = NUCLIDE.Li2BeF4.getFluidStack(36);
+ FluidStack Li2BeF4 = NUCLIDE.Li2BeF4.getFluidStack(200);
//LiFBeF2ThF4UF4 - T3
GT_Recipe LFTR1 = new GTPP_Recipe(
@@ -62,16 +62,16 @@ public class RecipeLoader_LFTR {
new ItemStack[] {},
null, new int[] {10000, 10000, 5000, 2500},
new FluidStack[] {
- NUCLIDE.LiFBeF2ThF4UF4.getFluidStack(18),
+ NUCLIDE.LiFBeF2ThF4UF4.getFluidStack(100),
Li2BeF4
},
new FluidStack[] {
- NUCLIDE.LiFBeF2UF4FP.getFluidStack(18),
- NUCLIDE.LiFBeF2ThF4.getFluidStack(36),
- FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(10),
- FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(5)
+ NUCLIDE.LiFBeF2UF4FP.getFluidStack(100),
+ NUCLIDE.LiFBeF2ThF4.getFluidStack(200),
+ FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(20),
+ FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(10)
},
- 9000,//time
+ 400 * 20,//time
0,//cost
8192*4//fuel value
);
@@ -83,16 +83,16 @@ public class RecipeLoader_LFTR {
new ItemStack[] {},
null, new int[] {10000, 10000, 2500, 1250},
new FluidStack[] {
- NUCLIDE.LiFBeF2ZrF4UF4.getFluidStack(18),
+ NUCLIDE.LiFBeF2ZrF4UF4.getFluidStack(100),
Li2BeF4
},
new FluidStack[] {
- NUCLIDE.LiFBeF2UF4FP.getFluidStack(12),
- NUCLIDE.LiFBeF2ThF4.getFluidStack(24),
- FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(4),
- FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(2)
+ NUCLIDE.LiFBeF2UF4FP.getFluidStack(50),
+ NUCLIDE.LiFBeF2ThF4.getFluidStack(100),
+ FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(10),
+ FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(5)
},
- 6000,//time
+ 400 * 20,//time
0,//cost
8192//fuel value
);
@@ -104,16 +104,16 @@ public class RecipeLoader_LFTR {
new ItemStack[] {},
null, new int[] {10000, 10000, 1000, 500},
new FluidStack[] {
- NUCLIDE.LiFBeF2ZrF4U235.getFluidStack(18),
+ NUCLIDE.LiFBeF2ZrF4U235.getFluidStack(100),
Li2BeF4
},
new FluidStack[] {
- NUCLIDE.LiFBeF2UF4FP.getFluidStack(6),
- NUCLIDE.LiFThF4.getFluidStack(12),
- FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(2),
- FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(1)
+ NUCLIDE.LiFBeF2UF4FP.getFluidStack(25),
+ NUCLIDE.LiFThF4.getFluidStack(50),
+ FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(4),
+ FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(2)
},
- 3000,//time
+ 100 *20,//time
0,//cost
8192//fuel value
);
@@ -122,9 +122,8 @@ public class RecipeLoader_LFTR {
GasSpargingRecipeMap.addRecipe(
new FluidStack(mSpargeGases.get(0), 50),
NUCLIDE.LiFBeF2UF4FP.getFluidStack(50),
+ NUCLIDE.Sparged_LiFBeF2UF4FP.getFluidStack(50),
new FluidStack[] {
- NUCLIDE.Sparged_LiFBeF2UF4FP.getFluidStack(50),
- new FluidStack(mNobleGases.get(0), 50),
new FluidStack(mNobleGases.get(1), 10),
new FluidStack(mNobleGases.get(2), 10),
new FluidStack(mNobleGases.get(3), 10),
@@ -132,31 +131,29 @@ public class RecipeLoader_LFTR {
new FluidStack(mNobleGases.get(5), 10)
},
new int[] {
- 10000, 5000, 1000, 1000, 1000, 1000, 1000
+ 1000, 1000, 1000, 1000, 1000
});
GasSpargingRecipeMap.addRecipe(
new FluidStack(mSpargeGases.get(1), 50),
NUCLIDE.LiFThF4.getFluidStack(50),
+ NUCLIDE.Sparged_LiFThF4.getFluidStack(50),
new FluidStack[] {
- NUCLIDE.Sparged_LiFThF4.getFluidStack(50),
- new FluidStack(mFluorideGases.get(0), 50),
- new FluidStack(mFluorideGases.get(1), 10),
- new FluidStack(mFluorideGases.get(2), 10),
- new FluidStack(mFluorideGases.get(3), 10),
- new FluidStack(mFluorideGases.get(4), 10),
- new FluidStack(mFluorideGases.get(5), 10)
+ new FluidStack(mFluorideGases.get(1), 5),
+ new FluidStack(mFluorideGases.get(2), 5),
+ new FluidStack(mFluorideGases.get(3), 5),
+ new FluidStack(mFluorideGases.get(4), 5),
+ new FluidStack(mFluorideGases.get(5), 5)
},
new int[] {
- 10000, 5000, 1000, 1000, 1000, 1000, 1000
+ 500, 500, 500, 500, 500
});
GasSpargingRecipeMap.addRecipe(
new FluidStack(mSpargeGases.get(1), 50),
NUCLIDE.LiFBeF2ThF4.getFluidStack(50),
+ NUCLIDE.Sparged_LiFBeF2ThF4.getFluidStack(50),
new FluidStack[] {
- NUCLIDE.Sparged_LiFBeF2ThF4.getFluidStack(50),
- new FluidStack(mFluorideGases.get(0), 50),
new FluidStack(mFluorideGases.get(1), 10),
new FluidStack(mFluorideGases.get(2), 10),
new FluidStack(mFluorideGases.get(3), 10),
@@ -164,7 +161,7 @@ public class RecipeLoader_LFTR {
new FluidStack(mFluorideGases.get(5), 10)
},
new int[] {
- 10000, 5000, 1000, 1000, 1000, 1000, 1000
+ 1000, 1000, 1000, 1000, 1000
});
GTPP_Recipe.GTPP_Recipe_Map.sLiquidFluorineThoriumReactorRecipes.add(LFTR1);
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java
index 2eedd4e85a..94a5627882 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java
@@ -1,7 +1,6 @@
package gtPlusPlus.xmod.gregtech.loaders.recipe;
import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.Materials;
import gtPlusPlus.core.item.ModItems;
import gtPlusPlus.core.item.chemistry.NuclearChem;
import gtPlusPlus.core.lib.CORE;
@@ -41,7 +40,7 @@ public class RecipeLoader_NuclearFuelProcessing {
FluidUtils.getFluidStack(aLiFBeF2ZrF4U235, 1000),
null,
90 * 60 * 20, // Duration
- MaterialUtils.getVoltageForTier(5)
+ MaterialUtils.getVoltageForTier(4)
);
// 7LiF - BeF2 - ZrF4 - UF4 - 650C
@@ -73,24 +72,15 @@ public class RecipeLoader_NuclearFuelProcessing {
// Reprocess Fuels
- final FluidStack aBurntLiFBeF2ZrF4U235 = new FluidStack(NuclearChem.Burnt_LiFBeF2ZrF4U235, 17);
- final FluidStack aBurntLiFBeF2ZrF4UF4 = new FluidStack(NuclearChem.Burnt_LiFBeF2ZrF4UF4, 17);
- final FluidStack aBurntLiFBeF2ThF4UF4 = new FluidStack(NuclearChem.Burnt_LiFBeF2ThF4UF4, 17);
- final FluidStack aHelium = Materials.Helium.getGas(1000);
- final FluidStack aFluorine = Materials.Fluorine.getGas(1000);
-
-
-
-
// Reactor Blanket step 1 - Fluorination
CORE.RA.addReactorProcessingUnitRecipe(
CI.getNumberedAdvancedCircuit(17),
- ELEMENT.getInstance().FLUORINE.getCell(5),
+ ELEMENT.getInstance().FLUORINE.getCell(6),
NUCLIDE.LiFThF4.getFluidStack(10000),
new ItemStack[] {
CI.emptyCells(4),
- ELEMENT.getInstance().LITHIUM.getCell(1),
+ FLUORIDES.LITHIUM_FLUORIDE.getCell(1),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
@@ -98,17 +88,17 @@ public class RecipeLoader_NuclearFuelProcessing {
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233)
},
- new int[] {10000, 10000, 1000, 1000, 1000, 500, 500, 500},
- NUCLIDE.UF6F2.getFluidStack(5000),
+ new int[] {10000, 10000, 500, 500, 500, 250, 250, 250},
+ NUCLIDE.UF6F2.getFluidStack(1500),
20 * 60 * 10,
MaterialUtils.getVoltageForTier(5));
CORE.RA.addReactorProcessingUnitRecipe(
CI.getNumberedAdvancedCircuit(18),
- ELEMENT.getInstance().FLUORINE.getCell(5),
+ ELEMENT.getInstance().FLUORINE.getCell(6),
NUCLIDE.LiFBeF2ThF4.getFluidStack(10000),
new ItemStack[] {
CI.emptyCells(3),
- ELEMENT.getInstance().LITHIUM.getCell(1),
+ FLUORIDES.LITHIUM_FLUORIDE.getCell(1),
FLUORIDES.BERYLLIUM_FLUORIDE.getCell(1),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
@@ -118,18 +108,18 @@ public class RecipeLoader_NuclearFuelProcessing {
ItemUtils.getSimpleStack(ModItems.dustProtactinium233)
},
new int[] {10000, 10000, 10000, 1000, 1000, 1000, 500, 500, 500},
- NUCLIDE.UF6F2.getFluidStack(10000),
+ NUCLIDE.UF6F2.getFluidStack(3000),
20 * 60 * 10,
MaterialUtils.getVoltageForTier(5));
// Reactor Blanket step 1 - Fluorination
CORE.RA.addReactorProcessingUnitRecipe(
CI.getNumberedAdvancedCircuit(7),
- ELEMENT.getInstance().FLUORINE.getCell(10),
+ ELEMENT.getInstance().FLUORINE.getCell(6),
NUCLIDE.Sparged_LiFThF4.getFluidStack(10000),
new ItemStack[] {
- CI.emptyCells(8),
- ELEMENT.getInstance().LITHIUM.getCell(2),
+ CI.emptyCells(4),
+ FLUORIDES.LITHIUM_FLUORIDE.getCell(2),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
@@ -137,17 +127,17 @@ public class RecipeLoader_NuclearFuelProcessing {
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233)
},
- new int[] {10000, 10000, 2000, 2000, 2000, 2000, 2000, 2000},
- NUCLIDE.UF6F2.getFluidStack(10000),
+ new int[] {10000, 10000, 1000, 1000, 1000, 1000, 1000, 1000},
+ NUCLIDE.UF6F2.getFluidStack(3000),
20 * 60 * 5,
MaterialUtils.getVoltageForTier(5));
CORE.RA.addReactorProcessingUnitRecipe(
CI.getNumberedAdvancedCircuit(8),
- ELEMENT.getInstance().FLUORINE.getCell(10),
+ ELEMENT.getInstance().FLUORINE.getCell(6),
NUCLIDE.Sparged_LiFBeF2ThF4.getFluidStack(10000),
new ItemStack[] {
- CI.emptyCells(6),
- ELEMENT.getInstance().LITHIUM.getCell(2),
+ CI.emptyCells(2),
+ FLUORIDES.LITHIUM_FLUORIDE.getCell(2),
FLUORIDES.BERYLLIUM_FLUORIDE.getCell(2),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
ItemUtils.getSimpleStack(ModItems.dustProtactinium233),
@@ -157,7 +147,7 @@ public class RecipeLoader_NuclearFuelProcessing {
ItemUtils.getSimpleStack(ModItems.dustProtactinium233)
},
new int[] {10000, 10000, 10000, 2000, 2000, 2000, 2000, 2000, 2000},
- NUCLIDE.UF6F2.getFluidStack(10000),
+ NUCLIDE.UF6F2.getFluidStack(6000),
20 * 60 * 5,
MaterialUtils.getVoltageForTier(5));
@@ -332,7 +322,7 @@ public class RecipeLoader_NuclearFuelProcessing {
null, null, null, null, null,
NUCLIDE.LiFBeF2ZrF4UF4.getFluidStack(10000),
null,
- 20 * 60 * 15, // Duration
+ 20 * 60 * 120, // Duration
MaterialUtils.getVoltageForTier(5)
);
@@ -370,7 +360,7 @@ public class RecipeLoader_NuclearFuelProcessing {
null, null, null, null, null,
NUCLIDE.LiFBeF2ThF4UF4.getFluidStack(10000),
null,
- 20 * 60 * 30, // Duration
+ 20 * 60 * 150, // Duration
MaterialUtils.getVoltageForTier(5)
);