diff --git a/src/main/java/gregtech/api/enums/OreMixes.java b/src/main/java/gregtech/api/enums/OreMixes.java index 0a4b2fbc4ea..8c9800ba008 100644 --- a/src/main/java/gregtech/api/enums/OreMixes.java +++ b/src/main/java/gregtech/api/enums/OreMixes.java @@ -95,7 +95,8 @@ public enum OreMixes { .primary(Materials.BrownLimonite) .secondary(Materials.YellowLimonite) .inBetween(Materials.BandedIron) - .sporadic(Materials.Malachite)), + .sporadic(Materials.Malachite) + .localize(Materials.Iron)), Cassiterite(new OreMixBuilder().name("ore.mix.cassiterite") .heightRange(60, 220) @@ -107,7 +108,8 @@ public enum OreMixes { .primary(Materials.Tin) .secondary(Materials.Tin) .inBetween(Materials.Cassiterite) - .sporadic(Materials.Tin)), + .sporadic(Materials.Tin) + .localize(Materials.Cassiterite)), Tetrahedrite(new OreMixBuilder().name("ore.mix.tetrahedrite") .heightRange(80, 120) @@ -155,7 +157,8 @@ public enum OreMixes { .primary(Materials.Chalcopyrite) .secondary(Materials.Iron) .inBetween(Materials.Pyrite) - .sporadic(Materials.Copper)), + .sporadic(Materials.Copper) + .localize(Materials.Copper)), Bauxite(new OreMixBuilder().name("ore.mix.bauxite") .heightRange(10, 80) @@ -191,7 +194,8 @@ public enum OreMixes { .primary(Materials.RockSalt) .secondary(Materials.Salt) .inBetween(Materials.Lepidolite) - .sporadic(Materials.Spodumene)), + .sporadic(Materials.Spodumene) + .localize(Materials.Salt)), Redstone(new OreMixBuilder().name("ore.mix.redstone") .heightRange(5, 40) @@ -227,7 +231,8 @@ public enum OreMixes { .primary(Materials.Garnierite) .secondary(Materials.Nickel) .inBetween(Materials.Cobaltite) - .sporadic(Materials.Pentlandite)), + .sporadic(Materials.Pentlandite) + .localize(Materials.Nickel)), Platinum(new OreMixBuilder().name("ore.mix.platinum") .heightRange(40, 50) @@ -238,7 +243,8 @@ public enum OreMixes { .primary(Materials.Cooperite) .secondary(Materials.Palladium) .inBetween(Materials.Platinum) - .sporadic(Materials.Iridium)), + .sporadic(Materials.Iridium) + .localize(Materials.Platinum)), Pitchblende(new OreMixBuilder().name("ore.mix.pitchblende") .heightRange(60, 60) @@ -260,7 +266,8 @@ public enum OreMixes { .primary(Materials.Bastnasite) .secondary(Materials.Bastnasite) .inBetween(Materials.Monazite) - .sporadic(Materials.Neodymium)), + .sporadic(Materials.Neodymium) + .localize(Materials.Monazite)), Molybdenum(new OreMixBuilder().name("ore.mix.molybdenum") .heightRange(20, 50) @@ -272,7 +279,8 @@ public enum OreMixes { .primary(Materials.Wulfenite) .secondary(Materials.Molybdenite) .inBetween(Materials.Molybdenum) - .sporadic(Materials.Powellite)), + .sporadic(Materials.Powellite) + .localize(Materials.Molybdenum)), Tungstate(new OreMixBuilder().name("ore.mix.tungstate") .heightRange(20, 60) @@ -297,7 +305,8 @@ public enum OreMixes { .primary(Materials.Scheelite) .secondary(Materials.Scheelite) .inBetween(Materials.Tungstate) - .sporadic(Materials.Lithium)), + .sporadic(Materials.Lithium) + .localize(Materials.Tungstate)), Sapphire(new OreMixBuilder().name("ore.mix.sapphire") .heightRange(10, 40) @@ -309,7 +318,8 @@ public enum OreMixes { .primary(Materials.Almandine) .secondary(Materials.Pyrope) .inBetween(Materials.Sapphire) - .sporadic(Materials.GreenSapphire)), + .sporadic(Materials.GreenSapphire) + .localize(Materials.Sapphire)), Manganese(new OreMixBuilder().name("ore.mix.manganese") .heightRange(20, 30) @@ -321,7 +331,8 @@ public enum OreMixes { .primary(Materials.Grossular) .secondary(Materials.Spessartine) .inBetween(Materials.Pyrolusite) - .sporadic(Materials.Tantalite)), + .sporadic(Materials.Tantalite) + .localize(Materials.Manganese)), Quartz(new OreMixBuilder().name("ore.mix.quartz") .heightRange(80, 120) @@ -345,7 +356,8 @@ public enum OreMixes { .primary(Materials.Graphite) .secondary(Materials.Graphite) .inBetween(Materials.Diamond) - .sporadic(Materials.Coal)), + .sporadic(Materials.Coal) + .localize(Materials.Diamond)), Olivine(new OreMixBuilder().name("ore.mix.olivine") .heightRange(10, 40) @@ -357,7 +369,8 @@ public enum OreMixes { .primary(Materials.Bentonite) .secondary(Materials.Magnesite) .inBetween(Materials.Olivine) - .sporadic(Materials.Glauconite)), + .sporadic(Materials.Glauconite) + .localize(Materials.Olivine)), Apatite(new OreMixBuilder().name("ore.mix.apatite") .heightRange(40, 60) @@ -391,7 +404,8 @@ public enum OreMixes { .primary(Materials.Lazurite) .secondary(Materials.Sodalite) .inBetween(Materials.Lapis) - .sporadic(Materials.Calcite)), + .sporadic(Materials.Calcite) + .localize(Materials.Lapis)), Beryllium(new OreMixBuilder().name("ore.mix.beryllium") .heightRange(5, 30) @@ -425,7 +439,8 @@ public enum OreMixes { .primary(Materials.Uraninite) .secondary(Materials.Uraninite) .inBetween(Materials.Uranium) - .sporadic(Materials.Uranium)), + .sporadic(Materials.Uranium) + .localize(Materials.Uranium)), OilSand(new OreMixBuilder().name("ore.mix.oilsand") .heightRange(50, 80) .weight(40) @@ -458,7 +473,8 @@ public enum OreMixes { .primary(Materials.InfusedWater) .secondary(Materials.InfusedFire) .inBetween(Materials.Amber) - .sporadic(Materials.Cinnabar)), + .sporadic(Materials.Cinnabar) + .localize(Materials.InfusedWater, Materials.InfusedFire, Materials.Amber)), TerraAer(new OreMixBuilder().name("ore.mix.terraaer") .heightRange(5, 35) @@ -470,7 +486,8 @@ public enum OreMixes { .primary(Materials.InfusedEarth) .secondary(Materials.InfusedAir) .inBetween(Materials.Amber) - .sporadic(Materials.Cinnabar)), + .sporadic(Materials.Cinnabar) + .localize(Materials.InfusedEarth, Materials.InfusedAir)), PerditioOrdo(new OreMixBuilder().name("ore.mix.perditioordo") .heightRange(5, 35) @@ -482,7 +499,8 @@ public enum OreMixes { .primary(Materials.InfusedEntropy) .secondary(Materials.InfusedOrder) .inBetween(Materials.Amber) - .sporadic(Materials.Cinnabar)), + .sporadic(Materials.Cinnabar) + .localize(Materials.InfusedEntropy, Materials.InfusedOrder)), CopperTin(new OreMixBuilder().name("ore.mix.coppertin") .heightRange(80, 200) @@ -493,7 +511,8 @@ public enum OreMixes { .primary(Materials.Chalcopyrite) .secondary(Materials.Vermiculite) .inBetween(Materials.Cassiterite) - .sporadic(Materials.Alunite)), + .sporadic(Materials.Alunite) + .localize(Materials.Vermiculite)), TitaniumChrome(new OreMixBuilder().name("ore.mix.titaniumchrome") .heightRange(10, 70) @@ -528,7 +547,8 @@ public enum OreMixes { .primary(Materials.CassiteriteSand) .secondary(Materials.GarnetSand) .inBetween(Materials.Asbestos) - .sporadic(Materials.Diatomite)), + .sporadic(Materials.Diatomite) + .localize(Materials.Tin)), KaoliniteZeolite(new OreMixBuilder().name("ore.mix.kaolinitezeolite") .heightRange(50, 70) @@ -552,7 +572,8 @@ public enum OreMixes { .primary(Materials.Kyanite) .secondary(Materials.Mica) .inBetween(Materials.Cassiterite) - .sporadic(Materials.Pollucite)), + .sporadic(Materials.Pollucite) + .localize(Materials.Mica)), Dolomite(new OreMixBuilder().name("ore.mix.dolomite") .heightRange(150, 200) @@ -575,7 +596,8 @@ public enum OreMixes { .primary(Materials.Platinum) .secondary(Materials.Chrome) .inBetween(Materials.Cooperite) - .sporadic(Materials.Palladium)), + .sporadic(Materials.Palladium) + .localize(Materials.Palladium)), IridiumMytryl(new OreMixBuilder().name("ore.mix.iridiummytryl") .heightRange(15, 40) @@ -586,7 +608,8 @@ public enum OreMixes { .primary(Materials.Nickel) .secondary(Materials.Iridium) .inBetween(Materials.Palladium) - .sporadic(Materials.Mithril)), + .sporadic(Materials.Mithril) + .localize(Materials.Iridium)), Osmium(new OreMixBuilder().name("ore.mix.osmium") .heightRange(5, 30) @@ -597,7 +620,8 @@ public enum OreMixes { .primary(Materials.Nickel) .secondary(Materials.Osmium) .inBetween(Materials.Iridium) - .sporadic(Materials.Nickel)), + .sporadic(Materials.Nickel) + .localize(Materials.Osmium)), SaltPeterElectrotine(new OreMixBuilder().name("ore.mix.saltpeterelectrotine") .heightRange(5, 45) @@ -609,7 +633,8 @@ public enum OreMixes { .primary(Materials.Saltpeter) .secondary(Materials.Diatomite) .inBetween(Materials.Electrotine) - .sporadic(Materials.Alunite)), + .sporadic(Materials.Alunite) + .localize(Materials.Electrotine)), Desh(new OreMixBuilder().name("ore.mix.desh") .heightRange(5, 40) @@ -708,7 +733,8 @@ public enum OreMixes { .primary(Materials.Gold) .secondary(Materials.Gold) .inBetween(Materials.InfusedGold) - .sporadic(Materials.Platinum)), + .sporadic(Materials.Platinum) + .localize(Materials.InfusedGold)), Niobium(new OreMixBuilder().name("ore.mix.niobium") .heightRange(5, 30) @@ -763,7 +789,8 @@ public enum OreMixes { .primary(Materials.GarnetSand) .secondary(Materials.NetherStar) .inBetween(Materials.GarnetRed) - .sporadic(Materials.GarnetYellow)), + .sporadic(Materials.GarnetYellow) + .localize(Materials.NetherStar)), Garnet(new OreMixBuilder().name("ore.mix.garnet") .heightRange(10, 30) @@ -785,7 +812,8 @@ public enum OreMixes { .primary(Materials.Cadmium) .secondary(Materials.Caesium) .inBetween(Materials.Lanthanum) - .sporadic(Materials.Cerium)), + .sporadic(Materials.Cerium) + .localize(Materials.RareEarth)), RichNuclear(new OreMixBuilder().name("ore.mix.richnuclear") .heightRange(55, 120) @@ -796,7 +824,8 @@ public enum OreMixes { .primary(Materials.Uranium) .secondary(Materials.Plutonium) .inBetween(Materials.Thorium) - .sporadic(Materials.Thorium)), + .sporadic(Materials.Thorium) + .localize(Materials.Plutonium)), HeavyPentele(new OreMixBuilder().name("ore.mix.heavypentele") .heightRange(40, 60) @@ -851,7 +880,8 @@ public enum OreMixes { .primary(Materials.Quartzite) .secondary(Materials.Barite) .inBetween(Materials.CertusQuartz) - .sporadic(Materials.CertusQuartz)), + .sporadic(Materials.CertusQuartz) + .localize(Materials.Quartz)), Rutile(new OreMixBuilder().name("ore.mix.rutile") .heightRange(5, 20) @@ -874,7 +904,8 @@ public enum OreMixes { .primary(Materials.Galena) .secondary(Materials.Silver) .inBetween(Materials.Lead) - .sporadic(Materials.Cryolite)), + .sporadic(Materials.Cryolite) + .localize(Materials.Cryolite)), LuVTantalite(new OreMixBuilder().name("ore.mix.luvtantalite") .heightRange(20, 30) @@ -907,7 +938,8 @@ public enum OreMixes { .primary(Materials.Neutronium) .secondary(Materials.Adamantium) .inBetween(Materials.InfinityCatalyst) - .sporadic(Materials.Bedrockium)), + .sporadic(Materials.Bedrockium) + .localize(Materials.InfinityCatalyst)), CosmicNeutronium(new OreMixBuilder().name("ore.mix.cosmicneutronium") .heightRange(5, 20) @@ -918,7 +950,8 @@ public enum OreMixes { .primary(Materials.Neutronium) .secondary(Materials.CosmicNeutronium) .inBetween(Materials.BlackPlutonium) - .sporadic(Materials.Bedrockium)), + .sporadic(Materials.Bedrockium) + .localize(Materials.CosmicNeutronium)), Dilithium(new OreMixBuilder().name("ore.mix.dilithium") .heightRange(30, 100) @@ -940,7 +973,8 @@ public enum OreMixes { .primary(Materials.Naquadah) .secondary(Materials.NaquadahEnriched) .inBetween(Materials.Naquadria) - .sporadic(Materials.Trinium)), + .sporadic(Materials.Trinium) + .localize(Materials.Naquadria)), AwakenedDraconium(new OreMixBuilder().name("ore.mix.awakeneddraconium") .heightRange(20, 40) @@ -951,7 +985,8 @@ public enum OreMixes { .primary(Materials.Draconium) .secondary(Materials.Draconium) .inBetween(Materials.DraconiumAwakened) - .sporadic(Materials.NetherStar)), + .sporadic(Materials.NetherStar) + .localize(Materials.DraconiumAwakened)), Tengam(new OreMixBuilder().name("ore.mix.tengam") .heightRange(30, 180) diff --git a/src/main/java/gregtech/common/OreMixBuilder.java b/src/main/java/gregtech/common/OreMixBuilder.java index cd8d14c8841..86453ca0a8f 100644 --- a/src/main/java/gregtech/common/OreMixBuilder.java +++ b/src/main/java/gregtech/common/OreMixBuilder.java @@ -1,5 +1,6 @@ package gregtech.common; +import java.util.Arrays; import java.util.HashMap; import java.util.Map; @@ -16,7 +17,8 @@ public class OreMixBuilder { public boolean enabledByDefault = true; public Map dimsEnabled = new HashMap<>(); public int minY, maxY, weight, density, size; - public Materials primary, secondary, between, sporadic; + public Materials primary, secondary, between, sporadic, representative; + public String localizedName; public OreMixBuilder name(String name) { this.oreMixName = name; @@ -65,6 +67,10 @@ public OreMixBuilder size(int size) { public OreMixBuilder primary(Materials primary) { this.primary = primary; + if (representative == null || localizedName == null) { + representative = primary; + localizedName = primary.mLocalizedName; + } return this; } @@ -83,4 +89,31 @@ public OreMixBuilder sporadic(Materials sporadic) { return this; } + /** + * Sets the localized name for the ore mix based on the provided materials. + * If more than one material is provided, their localized names are concatenated + * with commas, last comma is replaced by "&". + * + * @param materials The materials to be used for localization. The first material + * in the array will be used to represent to ore mix in GUI's. + * If none are provided the {@link #primary} will be used. + */ + public OreMixBuilder localize(Materials... materials) { + if (materials.length > 1) { + String localizedName = String.join( + ", ", + Arrays.stream(materials) + .map(material -> material.mLocalizedName) + .toArray(String[]::new)); + int index = localizedName.lastIndexOf(", "); + if (index != -1) { + localizedName = localizedName.substring(0, index) + " & " + localizedName.substring(index + 2); + } + this.localizedName = localizedName; + } else { + this.localizedName = materials[0].mLocalizedName; + } + this.representative = materials[0]; + return this; + } } diff --git a/src/main/java/gtneioreplugin/plugin/gregtech5/PluginGT5Base.java b/src/main/java/gtneioreplugin/plugin/gregtech5/PluginGT5Base.java index 86117f099a6..859ea87bb26 100644 --- a/src/main/java/gtneioreplugin/plugin/gregtech5/PluginGT5Base.java +++ b/src/main/java/gtneioreplugin/plugin/gregtech5/PluginGT5Base.java @@ -3,38 +3,16 @@ import net.minecraft.client.resources.I18n; import codechicken.lib.gui.GuiDraw; -import gregtech.api.GregTechAPI; import gregtech.api.enums.Materials; import gregtech.api.util.GTLanguageManager; import gtneioreplugin.plugin.PluginBase; public abstract class PluginGT5Base extends PluginBase { - protected static String getLocalizedNameForItem(Materials aMaterial, String aFormat) { - return String.format( - aFormat.replace("%s", "%temp") - .replace("%material", "%s"), - aMaterial.mLocalizedName) - .replace("%temp", "%s"); - } - - protected static String getLocalizedNameForItem(String aFormat, int aMaterialID) { - if (aMaterialID >= 0 && aMaterialID < 1000) { - Materials aMaterial = GregTechAPI.sGeneratedMaterials[aMaterialID]; - if (aMaterial != null) { - return getLocalizedNameForItem(aMaterial, aFormat); - } - } - return aFormat; - } - public static String getGTOreLocalizedName(short index) { - - if (!getLocalizedNameForItem(GTLanguageManager.getTranslation(getGTOreUnlocalizedName(index)), index % 1000) - .contains("Awakened")) - return getLocalizedNameForItem( - GTLanguageManager.getTranslation(getGTOreUnlocalizedName(index)), - index % 1000); + String name = Materials + .getLocalizedNameForItem(GTLanguageManager.getTranslation(getGTOreUnlocalizedName(index)), index % 1000); + if (!name.contains("Awakened")) return name; else return "Aw. Draconium Ore"; } diff --git a/src/main/java/gtneioreplugin/plugin/gregtech5/PluginGT5VeinStat.java b/src/main/java/gtneioreplugin/plugin/gregtech5/PluginGT5VeinStat.java index 6e02539a874..cb89a0bc7b3 100644 --- a/src/main/java/gtneioreplugin/plugin/gregtech5/PluginGT5VeinStat.java +++ b/src/main/java/gtneioreplugin/plugin/gregtech5/PluginGT5VeinStat.java @@ -91,7 +91,7 @@ private OreLayerWrapper getOreLayer(int recipe) { } private static void drawVeinName(OreLayerWrapper oreLayer) { - drawVeinNameLine(I18n.format(oreLayer.veinName) + " "); + drawVeinNameLine(oreLayer.localizedName + " "); } private static void drawVeinNameLine(String veinName) { diff --git a/src/main/java/gtneioreplugin/util/GT5OreLayerHelper.java b/src/main/java/gtneioreplugin/util/GT5OreLayerHelper.java index ac4d6c4acae..0e8e5b34621 100644 --- a/src/main/java/gtneioreplugin/util/GT5OreLayerHelper.java +++ b/src/main/java/gtneioreplugin/util/GT5OreLayerHelper.java @@ -71,7 +71,7 @@ public static void init() { public static class OreLayerWrapper { - public final String veinName, worldGenHeightRange; + public final String veinName, worldGenHeightRange, localizedName; public final short[] Meta = new short[4]; public final short randomWeight, size, density; public final Map allowedDimWithOrigNames; @@ -83,6 +83,7 @@ public static class OreLayerWrapper { public OreLayerWrapper(OreMixBuilder mix) { this.veinName = mix.oreMixName; + this.localizedName = mix.localizedName; this.Meta[0] = (short) mix.primary.mMetaItemSubID; this.Meta[1] = (short) mix.secondary.mMetaItemSubID; this.Meta[2] = (short) mix.between.mMetaItemSubID; diff --git a/src/main/resources/assets/gtneioreplugin/lang/en_US.lang b/src/main/resources/assets/gtneioreplugin/lang/en_US.lang index a2eaa352236..c8437cc9306 100644 --- a/src/main/resources/assets/gtneioreplugin/lang/en_US.lang +++ b/src/main/resources/assets/gtneioreplugin/lang/en_US.lang @@ -94,111 +94,8 @@ gtnop.ore.null.name=None # vein types gtnop.ore.vein.name=Vein -gtnop.ore.asteroid.name=Asteriod +gtnop.ore.asteroid.name=Asteroid gtnop.ore.custom.name=Custom # items itemGroup.gtneioreplugin=GT NEI Ore Plugin - -# vein names -ore.mix.naquadah=Naquadah -ore.mix.lignite=Lignite -ore.mix.coal=Coal -ore.mix.magnetite=Magnetite -ore.mix.gold=Gold -ore.mix.iron=Iron -ore.mix.cassiterite=Cassiterite -ore.mix.tetrahedrite=Tetrahedrite -ore.mix.netherquartz=Nether Quartz -ore.mix.sulfur=Sulfur -ore.mix.copper=Copper -ore.mix.bauxite=Bauxite -ore.mix.salts=Salts -ore.mix.redstone=Redstone -ore.mix.soapstone=Soapstone -ore.mix.nickel=Nickel -ore.mix.platinum=Platinum -ore.mix.pitchblende=Pitchblende -ore.mix.monazite=Monazite -ore.mix.molybdenum=Molybdenum -ore.mix.tungstate=Tungstate -ore.mix.sapphire=Sapphire -ore.mix.manganese=Manganese -ore.mix.quartz=Quartz -ore.mix.diamond=Diamond -ore.mix.olivine=Olivine -ore.mix.apatite=Apatite -ore.mix.galena=Galena -ore.mix.lapis=Lapis -ore.mix.beryllium=Beryllium -ore.mix.uranium=Uranium -ore.mix.oilsand=Oilsands - -ore.mix.neutronium=Neutronium -ore.mix.aquaignis=Aqua and Ignis -ore.mix.terraaer=Terra and Aer -ore.mix.perditioordo=Perdito and Ordo -ore.mix.coppertin=Vermiculite -ore.mix.titaniumchrome=Ilmenite -ore.mix.mineralsand=Mineral Sands -ore.mix.garnettin=Garnet/Tin -ore.mix.kaolinitezeolite=Kaolinite -ore.mix.mica=Mica -ore.mix.dolomite=Dolomite -ore.mix.platinumchrome=Palladium -ore.mix.iridiummytryl=Iridium -ore.mix.osmium=Osmium -ore.mix.saltpeterelectrotine=Electrotine -ore.mix.desh=Desh -ore.mix.draconium=Draconium -ore.mix.quantium=Quantium -ore.mix.callistoice=Callisto Ice -ore.mix.mytryl=Mytryl -ore.mix.ledox=Ledox -ore.mix.oriharukon=Oriharukon -ore.mix.blackplutonium=Black Plutonium -ore.mix.infusedgold=Infused Gold -ore.mix.niobium=Niobium -ore.mix.tungstenirons=Tungsten -ore.mix.uraniumgtnh=Thorium -ore.mix.vanadiumgold=Vanadium -ore.mix.netherstar=Nether Star -ore.mix.garnet=Garnet -ore.mix.rareearth=Rare Earths -ore.mix.richnuclear=Plutonium -ore.mix.heavypentele=Arsenic -ore.mix.europa=Magnesite -ore.mix.europacore=Chrome -ore.mix.secondlanthanid=Samarium -ore.mix.quartzspace=Quartz -ore.mix.rutile=Rutile -ore.mix.tfgalena=Cryolite -ore.mix.luvtantalite=Pyrolusite - -ore.mix.ross128.Thorianit=Thorianite -ore.mix.ross128.carbon=Graphite -ore.mix.ross128.bismuth=Bismuth -ore.mix.ross128.TurmalinAlkali=Olenite -ore.mix.ross128.Roquesit=Roquesite -ore.mix.ross128.Tungstate=Scheelite -ore.mix.ross128.CopperSulfits=Djurleite -ore.mix.ross128.Forsterit=Forsterite -ore.mix.ross128.Hedenbergit=Hedenbergite -ore.mix.ross128.RedZircon=Red Zircon - -ore.mix.ross128ba.tib=Tiberium -ore.mix.ross128ba.Tungstate=Scheelite -ore.mix.ross128ba.bart=BArTiMaEuSNeK -ore.mix.ross128ba.TurmalinAlkali=Olenite -ore.mix.ross128ba.Amethyst=Amethyst -ore.mix.ross128ba.CopperSulfits=Djurleite -ore.mix.ross128ba.RedZircon=Red Zircon -ore.mix.ross128ba.Fluorspar=Fluorspar - -ore.mix.dilithium=Dilithium -ore.mix.certusquartz=Certus Quartz -ore.mix.infinitycatalyst=Infinity Catalyst -ore.mix.awakeneddraconium=Awakened Draconium -ore.mix.naquadria=Naquadria -ore.mix.cosmicneutronium=Cosmic Neutronium -ore.mix.tengam=Tengam