diff options
Diffstat (limited to 'src/main/java/gregtech/api/enums')
-rw-r--r-- | src/main/java/gregtech/api/enums/ConfigCategories.java | 1 | ||||
-rw-r--r-- | src/main/java/gregtech/api/enums/Dimensions.java | 33 | ||||
-rw-r--r-- | src/main/java/gregtech/api/enums/GTStones.java | 398 | ||||
-rw-r--r-- | src/main/java/gregtech/api/enums/ManualOreDictTweaks.java | 70 | ||||
-rw-r--r-- | src/main/java/gregtech/api/enums/Materials.java | 258 | ||||
-rw-r--r-- | src/main/java/gregtech/api/enums/Mods.java | 12 | ||||
-rw-r--r-- | src/main/java/gregtech/api/enums/OreMixes.java | 982 | ||||
-rw-r--r-- | src/main/java/gregtech/api/enums/SmallOres.java | 555 | ||||
-rw-r--r-- | src/main/java/gregtech/api/enums/UndergroundFluidNames.java | 43 |
9 files changed, 2107 insertions, 245 deletions
diff --git a/src/main/java/gregtech/api/enums/ConfigCategories.java b/src/main/java/gregtech/api/enums/ConfigCategories.java index 83deec4f58..0e70e54651 100644 --- a/src/main/java/gregtech/api/enums/ConfigCategories.java +++ b/src/main/java/gregtech/api/enums/ConfigCategories.java @@ -1,5 +1,6 @@ package gregtech.api.enums; +@Deprecated public enum ConfigCategories { news, diff --git a/src/main/java/gregtech/api/enums/Dimensions.java b/src/main/java/gregtech/api/enums/Dimensions.java new file mode 100644 index 0000000000..21dee59977 --- /dev/null +++ b/src/main/java/gregtech/api/enums/Dimensions.java @@ -0,0 +1,33 @@ +package gregtech.api.enums; + +public enum Dimensions { + + Overworld("0"), + Moon("Moon"), + Mercury("Mercury"), + Venus("Venus"), + Mars("Mars"), + Io("Io"), + Europa("Europa"), + Callisto("Callisto"), + Titan("Titan"), + Miranda("Miranda"), + Oberon("oberon"), + Triton("Triton"), + Proteus("Proteus"), + Pluto("Pluto"), + Makemake("Makemake"), + AlphaCentauriBb("aCentauriBb"), + BarnardaC("BarnardaC"), + BarnardaE("BarnardaE"), + BarnardaF("BarnardaF"), + TCetiE("TCetiE"), + Ross128b("Ross128b"), + Ross128ba("Ross128ba"),; + + public final String id; + + private Dimensions(String id) { + this.id = id; + } +} diff --git a/src/main/java/gregtech/api/enums/GTStones.java b/src/main/java/gregtech/api/enums/GTStones.java new file mode 100644 index 0000000000..82d7cb90ce --- /dev/null +++ b/src/main/java/gregtech/api/enums/GTStones.java @@ -0,0 +1,398 @@ +package gregtech.api.enums; + +import gregtech.api.GregTech_API; +import gregtech.common.GT_Worldgen_Stone; +import gregtech.common.StoneBuilder; + +public enum GTStones { + + NetherBlackgraniteTiny(new StoneBuilder().name("nether.stone.blackgranite.tiny") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(-1) + .size(50) + .probability(45) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBlackgraniteSmall(new StoneBuilder().name("nether.stone.blackgranite.small") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(-1) + .size(100) + .probability(60) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBlackgraniteMedium(new StoneBuilder().name("nether.stone.blackgranite.medium") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(-1) + .size(200) + .probability(80) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBlackgraniteLarge(new StoneBuilder().name("nether.stone.blackgranite.large") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(-1) + .size(300) + .probability(70) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBlackgraniteHuge(new StoneBuilder().name("nether.stone.blackgranite.huge") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(-1) + .size(400) + .probability(150) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherRedgraniteTiny(new StoneBuilder().name("nether.stone.redgranite.tiny") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(-1) + .size(50) + .probability(45) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherRedgraniteSmall(new StoneBuilder().name("nether.stone.redgranite.small") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(-1) + .size(100) + .probability(60) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherRedgraniteMedium(new StoneBuilder().name("nether.stone.redgranite.medium") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(-1) + .size(200) + .probability(80) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherRedgraniteLarge(new StoneBuilder().name("nether.stone.redgranite.large") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(-1) + .size(300) + .probability(70) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherRedgraniteHuge(new StoneBuilder().name("nether.stone.redgranite.huge") + .disabledByDefault() + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(-1) + .size(400) + .probability(150) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherMarbleTiny(new StoneBuilder().name("nether.stone.marble.tiny") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(-1) + .size(50) + .probability(45) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherMarbleSmall(new StoneBuilder().name("nether.stone.marble.small") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(-1) + .size(100) + .probability(60) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherMarbleMedium(new StoneBuilder().name("nether.stone.marble.medium") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(-1) + .size(200) + .probability(80) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherMarbleLarge(new StoneBuilder().name("nether.stone.marble.large") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(-1) + .size(300) + .probability(70) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherMarbleHuge(new StoneBuilder().name("nether.stone.marble.huge") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(-1) + .size(400) + .probability(150) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBasaltTiny(new StoneBuilder().name("nether.stone.basalt.tiny") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(-1) + .size(50) + .probability(45) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBasaltSmall(new StoneBuilder().name("nether.stone.basalt.small") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(-1) + .size(100) + .probability(60) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBasaltMedium(new StoneBuilder().name("nether.stone.basalt.medium") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(-1) + .size(200) + .probability(80) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBasaltLarge(new StoneBuilder().name("nether.stone.basalt.large") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(-1) + .size(300) + .probability(70) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + NetherBasaltHuge(new StoneBuilder().name("nether.stone.basalt.huge") + .disabledByDefault() + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(-1) + .size(400) + .probability(150) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + OverworldBlackgraniteTiny(new StoneBuilder().name("overworld.stone.blackgranite.tiny") + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(0) + .size(75) + .probability(5) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldBlackgraniteSmall(new StoneBuilder().name("overworld.stone.blackgranite.small") + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(0) + .size(100) + .probability(10) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldBlackgraniteMedium(new StoneBuilder().name("overworld.stone.blackgranite.medium") + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(0) + .size(200) + .probability(10) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldBlackgraniteLarge(new StoneBuilder().name("overworld.stone.blackgranite.large") + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(0) + .size(300) + .probability(70) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + OverworldBlackgraniteHuge(new StoneBuilder().name("overworld.stone.blackgranite.huge") + .block(GregTech_API.sBlockGranites) + .blockMeta(0) + .dimension(0) + .size(400) + .probability(150) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + OverworldRedgraniteTiny(new StoneBuilder().name("overworld.stone.redgranite.tiny") + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(0) + .size(75) + .probability(5) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldRedgraniteSmall(new StoneBuilder().name("overworld.stone.redgranite.small") + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(0) + .size(100) + .probability(10) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldRedgraniteMedium(new StoneBuilder().name("overworld.stone.redgranite.medium") + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(0) + .size(200) + .probability(10) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldRedgraniteLarge(new StoneBuilder().name("overworld.stone.redgranite.large") + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(0) + .size(300) + .probability(70) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + OverworldRedgraniteHuge(new StoneBuilder().name("overworld.stone.redgranite.huge") + .block(GregTech_API.sBlockGranites) + .blockMeta(8) + .dimension(0) + .size(400) + .probability(150) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + OverworldMarbleTiny(new StoneBuilder().name("overworld.stone.marble.tiny") + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(0) + .size(75) + .probability(5) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldMarbleSmall(new StoneBuilder().name("overworld.stone.marble.small") + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(0) + .size(100) + .probability(10) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldMarbleMedium(new StoneBuilder().name("overworld.stone.marble.medium") + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(0) + .size(200) + .probability(10) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldMarbleLarge(new StoneBuilder().name("overworld.stone.marble.large") + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(0) + .size(300) + .probability(70) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + OverworldMarbleHuge(new StoneBuilder().name("overworld.stone.marble.huge") + .block(GregTech_API.sBlockStones) + .blockMeta(0) + .dimension(0) + .size(400) + .probability(150) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + OverworldBasaltTiny(new StoneBuilder().name("overworld.stone.basalt.tiny") + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(0) + .size(75) + .probability(5) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldBasaltSmall(new StoneBuilder().name("overworld.stone.basalt.small") + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(0) + .size(100) + .probability(10) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldBasaltMedium(new StoneBuilder().name("overworld.stone.basalt.medium") + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(0) + .size(200) + .probability(10) + .heightRange(0, 180) + .generationInVoidEnabled(false)), + + OverworldBasaltLarge(new StoneBuilder().name("overworld.stone.basalt.large") + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(0) + .size(300) + .probability(70) + .heightRange(0, 120) + .generationInVoidEnabled(false)), + + OverworldBasaltHuge(new StoneBuilder().name("overworld.stone.basalt.huge") + .block(GregTech_API.sBlockStones) + .blockMeta(8) + .dimension(0) + .size(400) + .probability(150) + .heightRange(0, 120) + .generationInVoidEnabled(false)),; + + public final StoneBuilder stone; + + private GTStones(StoneBuilder stone) { + this.stone = stone; + } + + public GT_Worldgen_Stone addGTStone() { + return new GT_Worldgen_Stone(this.stone); + } + +} diff --git a/src/main/java/gregtech/api/enums/ManualOreDictTweaks.java b/src/main/java/gregtech/api/enums/ManualOreDictTweaks.java new file mode 100644 index 0000000000..2392fcb591 --- /dev/null +++ b/src/main/java/gregtech/api/enums/ManualOreDictTweaks.java @@ -0,0 +1,70 @@ +package gregtech.api.enums; + +import static gregtech.api.enums.Mods.Avaritia; +import static gregtech.api.enums.Mods.Botania; +import static gregtech.api.enums.Mods.DraconicEvolution; +import static gregtech.api.enums.Mods.EnderIO; +import static gregtech.api.enums.Mods.GregTech; +import static gregtech.api.enums.Mods.HardcoreEnderExpansion; +import static gregtech.api.enums.Mods.ProjectRedCore; +import static gregtech.api.enums.Mods.RandomThings; +import static gregtech.api.enums.Mods.Thaumcraft; +import static gregtech.api.enums.Mods.Translocator; + +import java.util.HashMap; +import java.util.Map; + +public class ManualOreDictTweaks { + + private static final Map<String, Map<String, Boolean>> oredictLookupTable = new HashMap<>(); + + private static final String[] gregtech = new String[] { "dustAlumina', 'dustNikolite" }; + private static final String[] enderio = new String[] { "ingotDarkSteel" }; + private static final String[] draconicevolution = new String[] { "dustDraconium" }; + private static final String[] thaumcraft = new String[] { + "ingotThaumium', 'ingotVoid', 'nuggetThaumium', 'nuggetVoid" }; + private static final String[] projred_core = new String[] { "dustElectrotine" }; + private static final String[] translocator = new String[] { "nuggetDiamond" }; + private static final String[] hardcoreenderexpansion = new String[] { "ingotHeeEndium" }; + private static final String[] avaritia = new String[] { "ingotCosmicNeutronium', 'ingotInfinity" }; + private static final String[] randomthings = new String[] { "stickObsidian" }; + private static final String[] botania = new String[] { + "ingotElvenElementium', 'ingotManasteel', 'ingotTerrasteel', 'nuggetElvenElementium', 'nuggetManasteel', 'nuggetTerrasteel" }; + + private static final String[] modNames = { GregTech.ID, EnderIO.ID, DraconicEvolution.ID, Thaumcraft.ID, + ProjectRedCore.ID, Translocator.ID, HardcoreEnderExpansion.ID, Avaritia.ID, RandomThings.ID, Botania.ID }; + private static final String[][] array = new String[][] { gregtech, enderio, draconicevolution, thaumcraft, + projred_core, translocator, hardcoreenderexpansion, avaritia, randomthings, botania }; + + static { + initTweakedValues(); + } + + private static void initTweakedValues() { + for (int i = 0; i < array.length; i++) { + HashMap<String, Boolean> modTableLookup = new HashMap<>(); + String name = modNames[i]; + for (String oredict : array[i]) { + modTableLookup.put(oredict, true); + } + oredictLookupTable.put(name, modTableLookup); + } + } + + public static boolean shouldOredictBeOverwritten(String modID, String oredict) { + Map<String, Boolean> modLookupTable = oredictLookupTable.get(modID); + if (modLookupTable == null) { + modLookupTable = new HashMap<>(); + modLookupTable.put(oredict, false); + oredictLookupTable.put(modID, modLookupTable); + return false; + } + Boolean result = modLookupTable.get(oredict); + if (result == null) { + modLookupTable.put(oredict, false); + result = false; + } + return result; + } + +} diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index 16553e2d42..e5f9991236 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -13,7 +13,6 @@ import java.util.LinkedHashMap; import java.util.LinkedHashSet; import java.util.List; import java.util.Map; -import java.util.Objects; import java.util.stream.Collectors; import java.util.stream.IntStream; @@ -34,6 +33,7 @@ import gregtech.api.interfaces.ISubTagContainer; import gregtech.api.objects.MaterialStack; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; +import gregtech.common.config.gregtech.ConfigHarvestLevel; import gregtech.common.render.items.CosmicNeutroniumRenderer; import gregtech.common.render.items.GT_GeneratedMaterial_Renderer; import gregtech.common.render.items.GaiaSpiritRenderer; @@ -2574,59 +2574,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { } } - private static void addFuelValues(Materials aMaterial, String aConfigPath) { - aMaterial.mFuelPower = GregTech_API.sMaterialProperties.get(aConfigPath, "FuelPower", aMaterial.mFuelPower); - aMaterial.mFuelType = GregTech_API.sMaterialProperties.get(aConfigPath, "FuelType", aMaterial.mFuelType); - } - - private static void addTemperatureValues(Materials aMaterial, String aConfigPath) { - aMaterial.mMeltingPoint = GregTech_API.sMaterialProperties - .get(aConfigPath, "MeltingPoint", aMaterial.mMeltingPoint); - aMaterial.mBlastFurnaceRequired = GregTech_API.sMaterialProperties - .get(aConfigPath, "BlastFurnaceRequired", aMaterial.mBlastFurnaceRequired); - aMaterial.mBlastFurnaceTemp = (short) GregTech_API.sMaterialProperties - .get(aConfigPath, "BlastFurnaceTemp", aMaterial.mBlastFurnaceTemp); - aMaterial.mGasTemp = GregTech_API.sMaterialProperties.get(aConfigPath, "GasTemp", aMaterial.mGasTemp); - aMaterial.setHeatDamage( - (float) GregTech_API.sMaterialProperties.get(aConfigPath, "HeatDamage", aMaterial.mHeatDamage)); - } - - private static void addDensityValues(Materials aMaterial, String aConfigPath) { - aMaterial.mDensityMultiplier = GregTech_API.sMaterialProperties - .get(aConfigPath, "DensityMultiplier", aMaterial.mDensityMultiplier); - aMaterial.mDensityDivider = GregTech_API.sMaterialProperties - .get(aConfigPath, "DensityDivider", aMaterial.mDensityDivider); - aMaterial.mDensity = (long) GregTech_API.sMaterialProperties.get( - aConfigPath, - "Density", - ((double) M * aMaterial.mDensityMultiplier) - / (aMaterial.mDensityDivider != 0 ? aMaterial.mDensityDivider : 1)); - } - - private static void addColorValues(Materials aMaterial, String aConfigPath) { - aMaterial.mTransparent = GregTech_API.sMaterialProperties - .get(aConfigPath, "Transparent", aMaterial.mTransparent); - String aColor = GregTech_API.sMaterialProperties - .get(aConfigPath, "DyeColor", aMaterial.mColor == Dyes._NULL ? "None" : aMaterial.mColor.toString()); - aMaterial.mColor = aColor.equals("None") ? Dyes._NULL : Dyes.get(aColor); - String[] aRGBA = GregTech_API.sMaterialProperties.get( - aConfigPath, - "MatRGBA", - aMaterial.mRGBa[0] + "," + aMaterial.mRGBa[1] + "," + aMaterial.mRGBa[2] + "," + aMaterial.mRGBa[3] + ",") - .split(","); - aMaterial.mRGBa[0] = Short.parseShort(aRGBA[0]); - aMaterial.mRGBa[1] = Short.parseShort(aRGBA[1]); - aMaterial.mRGBa[2] = Short.parseShort(aRGBA[2]); - aMaterial.mRGBa[3] = Short.parseShort(aRGBA[3]); - } - - private static void addToolValues(Materials aMaterial, String aConfigPath) { - aMaterial.mDurability = GregTech_API.sMaterialProperties - .get(aConfigPath, "ToolDurability", aMaterial.mDurability); - aMaterial.mToolSpeed = (float) GregTech_API.sMaterialProperties - .get(aConfigPath, "ToolSpeed", aMaterial.mToolSpeed); - aMaterial.mToolQuality = (byte) GregTech_API.sMaterialProperties - .get(aConfigPath, "ToolQuality", aMaterial.mToolQuality); + private static void addToolValues(Materials aMaterial) { // Moved from GT_Proxy? (Not sure) aMaterial.mHandleMaterial = (aMaterial == Desh ? aMaterial.mHandleMaterial : aMaterial == Diamond || aMaterial == Thaumium ? Wood @@ -2653,79 +2601,26 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { } } - private static void addEnchantmentValues(Materials aMaterial, String aConfigPath) { - aMaterial.mEnchantmentToolsLevel = (byte) GregTech_API.sMaterialProperties - .get(aConfigPath, "EnchantmentLevel", aMaterial.mEnchantmentToolsLevel); - String aEnchantmentName = GregTech_API.sMaterialProperties.get( - aConfigPath, - "Enchantment", - aMaterial.mEnchantmentTools != null ? aMaterial.mEnchantmentTools.getName() : ""); + private static void addEnchantmentValues(Materials aMaterial) { + String aEnchantmentName = aMaterial.mEnchantmentTools != null ? aMaterial.mEnchantmentTools.getName() : ""; if (aMaterial.mEnchantmentTools != null && !aEnchantmentName.equals(aMaterial.mEnchantmentTools.getName())) IntStream.range(0, Enchantment.enchantmentsList.length) .filter(i -> aEnchantmentName.equals(Enchantment.enchantmentsList[i].getName())) .forEach(i -> aMaterial.mEnchantmentTools = Enchantment.enchantmentsList[i]); } - private static void addProcessingIntoValues(Materials aMaterial, String aConfigPath) { - aMaterial.mSmeltInto = MATERIALS_MAP - .get(GregTech_API.sMaterialProperties.get(aConfigPath, "MaterialSmeltInto", aMaterial.mSmeltInto.mName)); - aMaterial.mMacerateInto = MATERIALS_MAP.get( - GregTech_API.sMaterialProperties.get(aConfigPath, "MaterialMacerateInto", aMaterial.mMacerateInto.mName)); - aMaterial.mArcSmeltInto = MATERIALS_MAP.get( - GregTech_API.sMaterialProperties.get(aConfigPath, "MaterialArcSmeltInto", aMaterial.mArcSmeltInto.mName)); - aMaterial.mDirectSmelting = MATERIALS_MAP.get( - GregTech_API.sMaterialProperties - .get(aConfigPath, "MaterialDirectSmeltInto", aMaterial.mDirectSmelting.mName)); - aMaterial.mAutoGenerateBlastFurnaceRecipes = GregTech_API.sMaterialProperties - .get(aConfigPath, "AutoGenerateBlastFurnaceRecipes", aMaterial.mAutoGenerateBlastFurnaceRecipes); - } - - private static void addMultiplierValues(Materials aMaterial, String aConfigPath) { - aMaterial.mOreValue = GregTech_API.sMaterialProperties.get(aConfigPath, "OreValue", aMaterial.mOreValue); - aMaterial.setOreMultiplier( - GregTech_API.sMaterialProperties.get(aConfigPath, "OreMultiplier", aMaterial.mOreMultiplier)); - aMaterial.setSmeltingMultiplier( - GregTech_API.sMaterialProperties.get(aConfigPath, "OreSmeltingMultiplier", aMaterial.mSmeltingMultiplier)); - aMaterial.setByProductMultiplier( - GregTech_API.sMaterialProperties - .get(aConfigPath, "OreByProductMultiplier", aMaterial.mByProductMultiplier)); - } - - private static void addHasGasFluid(Materials aMaterial, String aConfigPath) { - - if (!aMaterial.mIconSet.is_custom) { - aMaterial.mHasPlasma = GregTech_API.sMaterialProperties.get(aConfigPath, "AddPlasma", aMaterial.mHasPlasma); - if (aMaterial.mHasPlasma) { - GT_Mod.gregtechproxy.addAutogeneratedPlasmaFluid(aMaterial); - } - aMaterial.mHasGas = GregTech_API.sMaterialProperties.get(aConfigPath, "AddGas", aMaterial.mHasGas); - if (aMaterial.mHasGas) { - GT_FluidFactory - .of(aMaterial.mName.toLowerCase(), aMaterial.mDefaultLocalName, aMaterial, GAS, aMaterial.mGasTemp); - } + private static void addHasGasFluid(Materials aMaterial) { + if (aMaterial.mIconSet.is_custom) { + return; } - } - private static void addInternalStuff(Materials aMaterial, String aConfigPath) { - aMaterial.mMetaItemSubID = GregTech_API.sMaterialProperties - .get(aConfigPath, "MaterialID", aMaterial.mCustomOre ? -1 : aMaterial.mMetaItemSubID); - aMaterial.mTypes = GregTech_API.sMaterialProperties.get( - aConfigPath, - "MaterialTypes", - aMaterial.mCustomOre ? 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 : aMaterial.mTypes); - aMaterial.mUnificatable = GregTech_API.sMaterialProperties - .get(aConfigPath, "Unificatable", aMaterial.mUnificatable); - aMaterial.mHasParentMod = GregTech_API.sMaterialProperties - .get(aConfigPath, "HasParentMod", aMaterial.mHasParentMod); - } - - private static void addLocalisation(Materials aMaterial, String aConfigPath) { - aMaterial.mDefaultLocalName = GregTech_API.sMaterialProperties.get( - aConfigPath, - "MaterialName", - aMaterial.mCustomOre ? "CustomOre" + aMaterial.mCustomID : aMaterial.mDefaultLocalName); - aMaterial.mChemicalFormula = GregTech_API.sMaterialProperties - .get(aConfigPath, "ChemicalFormula", aMaterial.mChemicalFormula); + if (aMaterial.mHasPlasma) { + GT_Mod.gregtechproxy.addAutogeneratedPlasmaFluid(aMaterial); + } + if (aMaterial.mHasGas) { + GT_FluidFactory + .of(aMaterial.mName.toLowerCase(), aMaterial.mDefaultLocalName, aMaterial, GAS, aMaterial.mGasTemp); + } } private static String getConfigPath(Materials aMaterial) { @@ -2733,135 +2628,32 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { return "materials." + aMaterial.mConfigSection + "." + cOre; } - private static void addHarvestLevelNerfs(Materials aMaterial, String aConfigPath) { + private static void addHarvestLevelNerfs(Materials aMaterial) { /* Moved the harvest level changes from GT_Mod to have fewer things iterating over MATERIALS_ARRAY */ if (GT_Mod.gregtechproxy.mChangeHarvestLevels && aMaterial.mToolQuality > 0 && aMaterial.mMetaItemSubID < GT_Mod.gregtechproxy.mHarvestLevel.length && aMaterial.mMetaItemSubID >= 0) { - GT_Mod.gregtechproxy.mHarvestLevel[aMaterial.mMetaItemSubID] = GregTech_API.sMaterialProperties - .get(aConfigPath, "HarvestLevel", aMaterial.mToolQuality); + GT_Mod.gregtechproxy.mHarvestLevel[aMaterial.mMetaItemSubID] = aMaterial.mToolQuality; } } private static void addHarvestLevels() { - GT_Mod.gregtechproxy.mChangeHarvestLevels = GregTech_API.sMaterialProperties - .get("harvestlevel", "ActivateHarvestLevelChange", false); - GT_Mod.gregtechproxy.mMaxHarvestLevel = Math - .min(15, GregTech_API.sMaterialProperties.get("harvestlevel", "MaxHarvestLevel", 7)); - GT_Mod.gregtechproxy.mGraniteHavestLevel = GregTech_API.sMaterialProperties - .get("harvestlevel", "GraniteHarvestLevel", 3); + GT_Mod.gregtechproxy.mChangeHarvestLevels = ConfigHarvestLevel.activateHarvestLevelChange; + GT_Mod.gregtechproxy.mMaxHarvestLevel = Math.min(15, ConfigHarvestLevel.maxHarvestLevel); + GT_Mod.gregtechproxy.mGraniteHavestLevel = ConfigHarvestLevel.graniteHarvestLevel; } public static void initMaterialProperties() { addHarvestLevels(); for (Materials aMaterial : MATERIALS_MAP.values()) { - if (aMaterial != null && aMaterial != Materials._NULL && aMaterial != Materials.Empty) { - - String aConfigPath = getConfigPath(aMaterial); - - addFuelValues(aMaterial, aConfigPath); - addTemperatureValues(aMaterial, aConfigPath); - addDensityValues(aMaterial, aConfigPath); - addColorValues(aMaterial, aConfigPath); - addToolValues(aMaterial, aConfigPath); - addEnchantmentValues(aMaterial, aConfigPath); - addProcessingIntoValues(aMaterial, aConfigPath); - addMultiplierValues(aMaterial, aConfigPath); - addHasGasFluid(aMaterial, aConfigPath); - addInternalStuff(aMaterial, aConfigPath); - addLocalisation(aMaterial, aConfigPath); - SubTagCalculation(aMaterial, aConfigPath); - OreByProductsCalculation(aMaterial, aConfigPath); - OreReRegistrationsCalculation(aMaterial, aConfigPath); - aspectCalculation(aMaterial, aConfigPath); - addHarvestLevelNerfs(aMaterial, aConfigPath); - } - } - } - - private static void aspectCalculation(Materials aMaterial, String aConfigPath) { - - String aDefaultAspectString = aMaterial.mAspects.stream() - .map(aAspectStack -> aAspectStack.mAspect.toString()) - .collect(Collectors.joining(",", ",", "")); - String aDefaultAspectAmountString = aMaterial.mAspects.stream() - .map(aAspectStack -> String.valueOf(aAspectStack.mAmount)) - .collect(Collectors.joining(",", ",", "")); - - String aConfigAspectString = GregTech_API.sMaterialProperties - .get(aConfigPath, "ListTCAspects", aDefaultAspectString); - String aConfigAspectAmountString = GregTech_API.sMaterialProperties - .get(aConfigPath, "ListTCAspectAmounts", aDefaultAspectAmountString); - - if (!aConfigAspectString.equals(aDefaultAspectString) - || !aConfigAspectAmountString.equals(aDefaultAspectAmountString)) { - aMaterial.mAspects.clear(); - if (aConfigAspectString.length() > 0) { - String[] aAspects = aConfigAspectString.split(","); - String[] aAspectAmounts = aConfigAspectAmountString.split(","); - for (int i = 0; i < aAspects.length; i++) { - String aAspectString = aAspects[i]; - long aAspectAmount = Long.parseLong(aAspectAmounts[i]); - TC_AspectStack aAspectStack = new TC_AspectStack(TC_Aspects.valueOf(aAspectString), aAspectAmount); - aMaterial.mAspects.add(aAspectStack); - } - } - } - } - - private static void OreReRegistrationsCalculation(Materials aMaterial, String aConfigPath) { - String aDefaultMatReRegString = aMaterial.mOreReRegistrations.stream() - .map(aTag -> aTag.mName) - .collect(Collectors.joining(",", ",", "")); - String aConfigMatMatReRegString = GregTech_API.sMaterialProperties - .get(aConfigPath, "ListMaterialReRegistrations", aDefaultMatReRegString); - if (!aConfigMatMatReRegString.equals(aDefaultMatReRegString)) { - aMaterial.mOreReRegistrations.clear(); - if (aConfigMatMatReRegString.length() > 0) { - Arrays.stream(aConfigMatMatReRegString.split(",")) - .map(MATERIALS_MAP::get) - .filter(Objects::nonNull) - .forEach(aMat -> aMaterial.mOreReRegistrations.add(aMat)); - } - } - } - - private static void OreByProductsCalculation(Materials aMaterial, String aConfigPath) { - String aDefaultMatByProString = aMaterial.mOreByProducts.stream() - .map(aTag -> aTag.mName) - .collect(Collectors.joining(",", ",", "")); - String aConfigMatByProString = GregTech_API.sMaterialProperties - .get(aConfigPath, "ListMaterialByProducts", aDefaultMatByProString); - if (!aConfigMatByProString.equals(aDefaultMatByProString)) { - aMaterial.mOreByProducts.clear(); - if (aConfigMatByProString.length() > 0) { - Arrays.stream(aConfigMatByProString.split(",")) - .map(MATERIALS_MAP::get) - .filter(Objects::nonNull) - .forEach(aMat -> aMaterial.mOreByProducts.add(aMat)); + if (aMaterial == null || aMaterial == Materials._NULL || aMaterial == Materials.Empty) { + continue; } - } - } - /** - * Converts the pre-defined list of SubTags from a material into a list of SubTag names for setting/getting to/from - * the config. It is then converted to a String[] and finally to a singular String for insertion into the config If - * the config string is different from the default, we then want to clear the Materials SubTags and insert new ones - * from the config string. - */ - private static void SubTagCalculation(Materials aMaterial, String aConfigPath) { - String aDefaultTagString = aMaterial.mSubTags.stream() - .map(aTag -> aTag.mName) - .collect(Collectors.joining(",", ",", "")); - String aConfigTagString = GregTech_API.sMaterialProperties.get(aConfigPath, "ListSubTags", aDefaultTagString); - if (!aConfigTagString.equals(aDefaultTagString)) { - aMaterial.mSubTags.clear(); - if (aConfigTagString.length() > 0) { - Arrays.stream(aConfigTagString.split(",")) - .map(SubTag.sSubTags::get) - .filter(Objects::nonNull) - .forEach(aTag -> aMaterial.mSubTags.add(aTag)); - } + addToolValues(aMaterial); + addEnchantmentValues(aMaterial); + addHasGasFluid(aMaterial); + addHarvestLevelNerfs(aMaterial); } } diff --git a/src/main/java/gregtech/api/enums/Mods.java b/src/main/java/gregtech/api/enums/Mods.java index 28ed17d299..856817d972 100644 --- a/src/main/java/gregtech/api/enums/Mods.java +++ b/src/main/java/gregtech/api/enums/Mods.java @@ -179,14 +179,8 @@ public enum Mods { ZTones(Names.Z_TONES), // Do we keep compat of those? - ArsMagica2(Names.ARS_MAGICA2), - GanysSurface(Names.GANYS_SURFACE), - IndustrialCraft2Classic(Names.INDUSTRIAL_CRAFT2_CLASSIC), - MagicalCrops(Names.MAGICAL_CROPS), Metallurgy(Names.METALLURGY), RotaryCraft(Names.ROTARY_CRAFT), - ThermalExpansion(Names.THERMAL_EXPANSION), - ThermalFondation(Names.THERMAL_FONDATION), UndergroundBiomes(Names.UNDERGROUND_BIOMES), ; @@ -364,14 +358,8 @@ public enum Mods { public static final String Z_TONES = "Ztones"; // Do we keep compat of those mods? - public static final String ARS_MAGICA2 = "arsmagica2"; - public static final String GANYS_SURFACE = "ganyssurface"; - public static final String INDUSTRIAL_CRAFT2_CLASSIC = "IC2-Classic-Spmod"; - public static final String MAGICAL_CROPS = "magicalcrops"; public static final String METALLURGY = "Metallurgy"; public static final String ROTARY_CRAFT = "RotaryCraft"; - public static final String THERMAL_EXPANSION = "ThermalExpansion"; - public static final String THERMAL_FONDATION = "ThermalFoundation"; public static final String UNDERGROUND_BIOMES = "UndergroundBiomes"; } diff --git a/src/main/java/gregtech/api/enums/OreMixes.java b/src/main/java/gregtech/api/enums/OreMixes.java new file mode 100644 index 0000000000..c5c306baab --- /dev/null +++ b/src/main/java/gregtech/api/enums/OreMixes.java @@ -0,0 +1,982 @@ +package gregtech.api.enums; + +import static bloodasp.galacticgreg.api.enums.DimensionDef.*; +import static gregtech.common.OreMixBuilder.NETHER; +import static gregtech.common.OreMixBuilder.OW; +import static gregtech.common.OreMixBuilder.THE_END; +import static gregtech.common.OreMixBuilder.TWILIGHT_FOREST; + +import bloodasp.galacticgreg.GT_Worldgen_GT_Ore_Layer_Space; +import bloodasp.galacticgreg.api.enums.DimensionDef; +import gregtech.common.GT_Worldgen_GT_Ore_Layer; +import gregtech.common.OreMixBuilder; + +public enum OreMixes { + + // spotless : off + Naquadah(new OreMixBuilder().name("ore.mix.naquadah") + .heightRange(10, 90) + .weight(30) + .density(4) + .size(32) + .enableInDim( + EndAsteroids, + Maahes, + Asteroids, + BarnardE, + BarnardF, + Haumea, + KuiperBelt, + Mercury, + Oberon, + Pluto, + Titan, + VegaB, + Venus) + .primary(Materials.Naquadah) + .secondary(Materials.Naquadah) + .inBetween(Materials.Naquadah) + .sporadic(Materials.NaquadahEnriched)), + + LigniteCoal(new OreMixBuilder().name("ore.mix.lignite") + .heightRange(80, 210) + .weight(160) + .density(7) + .size(32) + .enableInDim(OW) + .enableInDim(BarnardC) + .primary(Materials.Lignite) + .secondary(Materials.Lignite) + .inBetween(Materials.Lignite) + .sporadic(Materials.Coal)), + + Coal(new OreMixBuilder().name("ore.mix.coal") + .heightRange(30, 80) + .weight(80) + .density(5) + .size(32) + .enableInDim(OW, TWILIGHT_FOREST) + .primary(Materials.Coal) + .secondary(Materials.Coal) + .inBetween(Materials.Coal) + .sporadic(Materials.Lignite)), + + Magnetite(new OreMixBuilder().name("ore.mix.magnetite") + .heightRange(60, 180) + .weight(160) + .density(2) + .size(32) + .enableInDim(OW, TWILIGHT_FOREST) + .enableInDim(Seth, BarnardE, Ceres, Deimos, Io, MakeMake, TcetiE) + .primary(Materials.Magnetite) + .secondary(Materials.Magnetite) + .inBetween(Materials.Iron) + .sporadic(Materials.VanadiumMagnetite)), + + Gold(new OreMixBuilder().name("ore.mix.gold") + .heightRange(30, 60) + .weight(160) + .density(2) + .size(32) + .enableInDim(OW, THE_END, TWILIGHT_FOREST) + .enableInDim(EndAsteroids, Seth, Asteroids, Mars, BarnardF, Callisto, Phobos, Pluto, TcetiE, Triton, VegaB) + .primary(Materials.Magnetite) + .secondary(Materials.Magnetite) + .inBetween(Materials.VanadiumMagnetite) + .sporadic(Materials.Gold)), + + Iron(new OreMixBuilder().name("ore.mix.iron") + .heightRange(10, 40) + .weight(120) + .density(3) + .size(24) + .enableInDim(OW, NETHER, TWILIGHT_FOREST) + .enableInDim(Mars, Callisto, Ceres, Ganymede, Mercury, Oberon, Pluto) + .primary(Materials.BrownLimonite) + .secondary(Materials.YellowLimonite) + .inBetween(Materials.BandedIron) + .sporadic(Materials.Malachite)), + + Cassiterite(new OreMixBuilder().name("ore.mix.cassiterite") + .heightRange(60, 220) + .weight(50) + .density(4) + .size(24) + .enableInDim(EndAsteroids, MehenBelt, Seth, Moon, Io, Miranda, TcetiE, Venus) + .enableInDim(OW, THE_END, TWILIGHT_FOREST) + .primary(Materials.Tin) + .secondary(Materials.Tin) + .inBetween(Materials.Cassiterite) + .sporadic(Materials.Tin)), + + Tetrahedrite(new OreMixBuilder().name("ore.mix.tetrahedrite") + .heightRange(80, 120) + .weight(70) + .density(3) + .size(24) + .enableInDim(NETHER, THE_END) + .enableInDim(EndAsteroids, Asteroids, Mars, CentauriAlpha, Deimos, Ganymede, KuiperBelt, Miranda, VegaB, Venus) + .primary(Materials.Tetrahedrite) + .secondary(Materials.Tetrahedrite) + .inBetween(Materials.Copper) + .sporadic(Materials.Stibnite)), + + NetherQuartz(new OreMixBuilder().name("ore.mix.netherquartz") + .heightRange(40, 80) + .weight(80) + .density(4) + .size(24) + .enableInDim(NETHER) + .enableInDim(Neper, CentauriAlpha) + .primary(Materials.NetherQuartz) + .secondary(Materials.NetherQuartz) + .inBetween(Materials.NetherQuartz) + .sporadic(Materials.Quartzite)), + + Sulfur(new OreMixBuilder().name("ore.mix.sulfur") + .heightRange(5, 20) + .weight(100) + .density(4) + .size(24) + .enableInDim(NETHER) + .enableInDim(Anubis, Mars, CentauriAlpha, Deimos, Io, Phobos, Venus) + .primary(Materials.Sulfur) + .secondary(Materials.Sulfur) + .inBetween(Materials.Pyrite) + .sporadic(Materials.Sphalerite)), + + Copper(new OreMixBuilder().name("ore.mix.copper") + .heightRange(5, 60) + .weight(80) + .density(3) + .size(24) + .enableInDim(EndAsteroids, Moon, BarnardE, BarnardF, Callisto, Ceres, Enceladus, Proteus) + .enableInDim(OW, NETHER, THE_END) + .primary(Materials.Chalcopyrite) + .secondary(Materials.Iron) + .inBetween(Materials.Pyrite) + .sporadic(Materials.Copper)), + + Bauxite(new OreMixBuilder().name("ore.mix.bauxite") + .heightRange(10, 80) + .weight(80) + .density(3) + .size(24) + .enableInDim( + Seth, + Moon, + Asteroids, + Ganymede, + Haumea, + KuiperBelt, + MakeMake, + Mercury, + Phobos, + Pluto, + Proteus, + TcetiE, + Titan) + .primary(Materials.Bauxite) + .secondary(Materials.Ilmenite) + .inBetween(Materials.Aluminium) + .sporadic(Materials.Ilmenite)), + + Salts(new OreMixBuilder().name("ore.mix.salts") + .heightRange(50, 70) + .weight(50) + .density(2) + .size(24) + .enableInDim(OW, TWILIGHT_FOREST) + .enableInDim(Mars, BarnardC, TcetiE) + .primary(Materials.RockSalt) + .secondary(Materials.Salt) + .inBetween(Materials.Lepidolite) + .sporadic(Materials.Spodumene)), + + Redstone(new OreMixBuilder().name("ore.mix.redstone") + .heightRange(5, 40) + .weight(60) + .density(2) + .size(24) + .enableInDim(OW, NETHER) + .enableInDim(Mars, BarnardF, CentauriAlpha, Ganymede, Mercury, Miranda, VegaB, Venus) + .primary(Materials.Redstone) + .secondary(Materials.Redstone) + .inBetween(Materials.Ruby) + .sporadic(Materials.Cinnabar)), + + Soapstone(new OreMixBuilder().name("ore.mix.soapstone") + .heightRange(20, 50) + .weight(40) + .density(2) + .size(16) + .enableInDim(OW, TWILIGHT_FOREST) + .enableInDim(Anubis, Maahes, Ceres) + .primary(Materials.Soapstone) + .secondary(Materials.Talc) + .inBetween(Materials.Glauconite) + .sporadic(Materials.Pentlandite)), + + Nickel(new OreMixBuilder().name("ore.mix.nickel") + .heightRange(10, 40) + .weight(40) + .density(2) + .size(16) + .enableInDim(THE_END, TWILIGHT_FOREST) + .enableInDim(EndAsteroids, MehenBelt, Mars, Deimos, KuiperBelt, Phobos, Titan, Triton, Venus) + .primary(Materials.Garnierite) + .secondary(Materials.Nickel) + .inBetween(Materials.Cobaltite) + .sporadic(Materials.Pentlandite)), + + Platinum(new OreMixBuilder().name("ore.mix.platinum") + .heightRange(40, 50) + .weight(5) + .density(2) + .size(16) + .enableInDim(EndAsteroids, Maahes, MehenBelt) + .primary(Materials.Cooperite) + .secondary(Materials.Palladium) + .inBetween(Materials.Platinum) + .sporadic(Materials.Iridium)), + + Pitchblende(new OreMixBuilder().name("ore.mix.pitchblende") + .heightRange(60, 60) + .weight(40) + .density(2) + .size(16) + .enableInDim(Mars, BarnardF, CentauriAlpha, Haumea, Io, KuiperBelt, MakeMake, Oberon, Phobos, VegaB, Venus) + .primary(Materials.Pitchblende) + .secondary(Materials.Pitchblende) + .inBetween(Materials.Uraninite) + .sporadic(Materials.Uraninite)), + + Monazite(new OreMixBuilder().name("ore.mix.monazite") + .heightRange(20, 40) + .weight(30) + .density(2) + .size(16) + .enableInDim(Seth, Moon, BarnardF, Callisto, Deimos, Enceladus, Haumea, Io, MakeMake, Titan, Triton, Venus) + .primary(Materials.Bastnasite) + .secondary(Materials.Bastnasite) + .inBetween(Materials.Monazite) + .sporadic(Materials.Neodymium)), + + Molybdenum(new OreMixBuilder().name("ore.mix.molybdenum") + .heightRange(20, 50) + .weight(5) + .density(2) + .size(16) + .enableInDim(NETHER, THE_END, TWILIGHT_FOREST) + .enableInDim(EndAsteroids, Moon, BarnardE, Ceres, Mercury, Phobos, Pluto, Proteus, Titan) + .primary(Materials.Wulfenite) + .secondary(Materials.Molybdenite) + .inBetween(Materials.Molybdenum) + .sporadic(Materials.Powellite)), + + Tungstate(new OreMixBuilder().name("ore.mix.tungstate") + .heightRange(20, 60) + .weight(10) + .density(2) + .size(16) + .enableInDim( + EndAsteroids, + Asteroids, + Mars, + Callisto, + Deimos, + Enceladus, + Ganymede, + Haumea, + KuiperBelt, + MakeMake, + Oberon, + Pluto, + Triton, + VegaB) + .primary(Materials.Scheelite) + .secondary(Materials.Scheelite) + .inBetween(Materials.Tungstate) + .sporadic(Materials.Lithium)), + + Sapphire(new OreMixBuilder().name("ore.mix.sapphire") + .heightRange(10, 40) + .weight(60) + .density(2) + .size(16) + .enableInDim(TWILIGHT_FOREST) + .enableInDim(Horus) + .primary(Materials.Almandine) + .secondary(Materials.Pyrope) + .inBetween(Materials.Sapphire) + .sporadic(Materials.GreenSapphire)), + + Manganese(new OreMixBuilder().name("ore.mix.manganese") + .heightRange(20, 30) + .weight(20) + .density(2) + .size(16) + .enableInDim(OW, NETHER) + .enableInDim(EndAsteroids, BarnardE, BarnardF, CentauriAlpha, Ceres, Io, Oberon, Titan, Triton) + .primary(Materials.Grossular) + .secondary(Materials.Spessartine) + .inBetween(Materials.Pyrolusite) + .sporadic(Materials.Tantalite)), + + Quartz(new OreMixBuilder().name("ore.mix.quartz") + .heightRange(80, 120) + .weight(20) + .density(2) + .size(16) + .enableInDim(NETHER) + .enableInDim(Neper) + .primary(Materials.Quartzite) + .secondary(Materials.Barite) + .inBetween(Materials.CertusQuartz) + .sporadic(Materials.CertusQuartz)), + + Diamond(new OreMixBuilder().name("ore.mix.diamond") + .heightRange(5, 20) + .weight(40) + .density(1) + .size(16) + .enableInDim(BarnardF, Ganymede, KuiperBelt, Mercury, Miranda, Phobos, Pluto, Proteus, Titan) + .enableInDim(OW, TWILIGHT_FOREST) + .primary(Materials.Graphite) + .secondary(Materials.Graphite) + .inBetween(Materials.Diamond) + .sporadic(Materials.Coal)), + + Olivine(new OreMixBuilder().name("ore.mix.olivine") + .heightRange(10, 40) + .weight(60) + .density(2) + .size(16) + .enableInDim(TWILIGHT_FOREST) + .enableInDim(EndAsteroids, Anubis, MehenBelt, BarnardE, Ceres, Haumea, MakeMake) + .primary(Materials.Bentonite) + .secondary(Materials.Magnesite) + .inBetween(Materials.Olivine) + .sporadic(Materials.Glauconite)), + + Apatite(new OreMixBuilder().name("ore.mix.apatite") + .heightRange(40, 60) + .weight(60) + .density(2) + .size(16) + .enableInDim(TcetiE.modDimensionDef.getDimensionName(), OW, OreMixBuilder.TWILIGHT_FOREST) + .primary(Materials.Apatite) + .secondary(Materials.Apatite) + .inBetween(Materials.TricalciumPhosphate) + .sporadic(Materials.Pyrochlore)), + + Galena(new OreMixBuilder().name("ore.mix.galena") + .heightRange(5, 45) + .weight(40) + .density(4) + .size(16) + .enableInDim(Moon, Mars, Ganymede, Oberon, Triton, VegaB, Venus) + .primary(Materials.Galena) + .secondary(Materials.Galena) + .inBetween(Materials.Silver) + .sporadic(Materials.Lead)), + + Lapis(new OreMixBuilder().name("ore.mix.lapis") + .heightRange(20, 50) + .weight(40) + .density(4) + .size(16) + .enableInDim(OW, TWILIGHT_FOREST) + .enableInDim(EndAsteroids, MehenBelt, Ceres, Deimos, Enceladus, VegaB) + .primary(Materials.Lazurite) + .secondary(Materials.Sodalite) + .inBetween(Materials.Lapis) + .sporadic(Materials.Calcite)), + + Beryllium(new OreMixBuilder().name("ore.mix.beryllium") + .heightRange(5, 30) + .weight(30) + .density(2) + .size(16) + .enableInDim(OreMixBuilder.NETHER, OreMixBuilder.THE_END) + .enableInDim(EndAsteroids, Mars, BarnardF, CentauriAlpha, Ceres, Haumea, MakeMake, Pluto, Titan, Venus) + .primary(Materials.Beryllium) + .secondary(Materials.Beryllium) + .inBetween(Materials.Emerald) + .sporadic(Materials.Thorium)), + + Uranium(new OreMixBuilder().name("ore.mix.uranium") + .heightRange(20, 30) + .weight(20) + .density(2) + .size(16) + .enableInDim( + MehenBelt, + BarnardE, + Ceres, + Deimos, + Enceladus, + Ganymede, + Haumea, + KuiperBelt, + MakeMake, + Phobos, + Proteus) + .primary(Materials.Uraninite) + .secondary(Materials.Uraninite) + .inBetween(Materials.Uranium) + .sporadic(Materials.Uranium)), + OilSand(new OreMixBuilder().name("ore.mix.oilsand") + .heightRange(50, 80) + .weight(40) + .density(5) + .size(16) + .enableInDim(OW) + .enableInDim(BarnardC, TcetiE) + .primary(Materials.Oilsands) + .secondary(Materials.Oilsands) + .inBetween(Materials.Oilsands) + .sporadic(Materials.Oilsands)), + + Neutronium(new OreMixBuilder().name("ore.mix.neutronium") + .heightRange(5, 30) + .weight(10) + .density(2) + .size(16) + .enableInDim(Maahes, MehenBelt, BarnardE, BarnardF, Haumea, KuiperBelt, MakeMake, Pluto, Proteus, Triton, VegaB) + .primary(Materials.Neutronium) + .secondary(Materials.Adamantium) + .inBetween(Materials.Naquadah) + .sporadic(Materials.Titanium)), + + AquaIgnis(new OreMixBuilder().name("ore.mix.aquaignis") + .heightRange(5, 35) + .weight(16) + .density(2) + .size(16) + .enableInDim(Neper.modDimensionDef.getDimensionName(), OreMixBuilder.TWILIGHT_FOREST) + .primary(Materials.InfusedWater) + .secondary(Materials.InfusedFire) + .inBetween(Materials.Amber) + .sporadic(Materials.Cinnabar)), + + TerraAer(new OreMixBuilder().name("ore.mix.terraaer") + .heightRange(5, 35) + .weight(16) + .density(2) + .size(16) + .enableInDim(Neper) + .enableInDim(TWILIGHT_FOREST) + .primary(Materials.InfusedEarth) + .secondary(Materials.InfusedAir) + .inBetween(Materials.Amber) + .sporadic(Materials.Cinnabar)), + + PerditioOrdo(new OreMixBuilder().name("ore.mix.perditioordo") + .heightRange(5, 35) + .weight(16) + .density(2) + .size(16) + .enableInDim(TWILIGHT_FOREST) + .enableInDim(Neper) + .primary(Materials.InfusedEntropy) + .secondary(Materials.InfusedOrder) + .inBetween(Materials.Amber) + .sporadic(Materials.Cinnabar)), + + CopperTin(new OreMixBuilder().name("ore.mix.coppertin") + .heightRange(80, 200) + .weight(80) + .density(3) + .size(24) + .enableInDim(OW) + .primary(Materials.Chalcopyrite) + .secondary(Materials.Vermiculite) + .inBetween(Materials.Cassiterite) + .sporadic(Materials.Alunite)), + + TitaniumChrome(new OreMixBuilder().name("ore.mix.titaniumchrome") + .heightRange(10, 70) + .weight(16) + .density(2) + .size(16) + .enableInDim(MehenBelt, Moon, Asteroids, Callisto, Ganymede, Mercury, Miranda, Pluto, Proteus, TcetiE, Titan) + .primary(Materials.Ilmenite) + .secondary(Materials.Chromite) + .inBetween(Materials.Uvarovite) + .sporadic(Materials.Perlite)), + + MineralSand(new OreMixBuilder().name("ore.mix.mineralsand") + .heightRange(50, 60) + .weight(80) + .density(3) + .size(24) + .enableInDim(OW) + .enableInDim(Anubis, Maahes, BarnardC, DimensionDef.Europa) + .primary(Materials.BasalticMineralSand) + .secondary(Materials.GraniticMineralSand) + .inBetween(Materials.FullersEarth) + .sporadic(Materials.Gypsum)), + + GarnetTin(new OreMixBuilder().name("ore.mix.garnettin") + .heightRange(50, 60) + .weight(80) + .density(3) + .size(24) + .enableInDim(OW) + .enableInDim(CentauriAlpha, DimensionDef.Europa) + .primary(Materials.CassiteriteSand) + .secondary(Materials.GarnetSand) + .inBetween(Materials.Asbestos) + .sporadic(Materials.Diatomite)), + + KaoliniteZeolite(new OreMixBuilder().name("ore.mix.kaolinitezeolite") + .heightRange(50, 70) + .weight(60) + .density(4) + .size(16) + .enableInDim(OW) + .enableInDim(Neper, TcetiE) + .primary(Materials.Kaolinite) + .secondary(Materials.Zeolite) + .inBetween(Materials.FullersEarth) + .sporadic(Materials.GlauconiteSand)), + + Mica(new OreMixBuilder().name("ore.mix.mica") + .heightRange(20, 40) + .weight(20) + .density(2) + .size(16) + .enableInDim(Anubis, Neper, BarnardC) + .enableInDim(OW) + .primary(Materials.Kyanite) + .secondary(Materials.Mica) + .inBetween(Materials.Cassiterite) + .sporadic(Materials.Pollucite)), + + Dolomite(new OreMixBuilder().name("ore.mix.dolomite") + .heightRange(150, 200) + .weight(40) + .density(4) + .size(24) + .enableInDim(OW) + .enableInDim(Anubis, Neper) + .primary(Materials.Dolomite) + .secondary(Materials.Wollastonite) + .inBetween(Materials.Trona) + .sporadic(Materials.Andradite)), + + PlatinumChrome(new OreMixBuilder().name("ore.mix.platinumchrome") + .heightRange(5, 30) + .weight(10) + .density(2) + .size(16) + .enableInDim(MehenBelt, Seth, Callisto, Ceres, Ganymede, Io, KuiperBelt, Mercury, Oberon, Pluto) + .primary(Materials.Platinum) + .secondary(Materials.Chrome) + .inBetween(Materials.Cooperite) + .sporadic(Materials.Palladium)), + + IridiumMytryl(new OreMixBuilder().name("ore.mix.iridiummytryl") + .heightRange(15, 40) + .weight(10) + .density(2) + .size(16) + .enableInDim(MehenBelt, Seth, Enceladus, Io, KuiperBelt, Mercury, Miranda, Titan, Triton, Venus) + .primary(Materials.Nickel) + .secondary(Materials.Iridium) + .inBetween(Materials.Palladium) + .sporadic(Materials.Mithril)), + + Osmium(new OreMixBuilder().name("ore.mix.osmium") + .heightRange(5, 30) + .weight(10) + .density(2) + .size(16) + .enableInDim(MehenBelt, Seth, BarnardC, Enceladus, KuiperBelt, Miranda, Oberon, Pluto, Proteus, Titan) + .primary(Materials.Nickel) + .secondary(Materials.Osmium) + .inBetween(Materials.Iridium) + .sporadic(Materials.Nickel)), + + SaltPeterElectrotine(new OreMixBuilder().name("ore.mix.saltpeterelectrotine") + .heightRange(5, 45) + .weight(40) + .density(3) + .size(16) + .enableInDim(NETHER) + .enableInDim(CentauriAlpha, Ceres) + .primary(Materials.Saltpeter) + .secondary(Materials.Diatomite) + .inBetween(Materials.Electrotine) + .sporadic(Materials.Alunite)), + + Desh(new OreMixBuilder().name("ore.mix.desh") + .heightRange(5, 40) + .weight(30) + .density(2) + .size(16) + .enableInDim(Anubis, Mars, Miranda) + .primary(Materials.Desh) + .secondary(Materials.Desh) + .inBetween(Materials.Scheelite) + .sporadic(Materials.Tungstate)), + + Draconium(new OreMixBuilder().name("ore.mix.draconium") + .heightRange(20, 40) + .weight(40) + .density(1) + .size(16) + .enableInDim(Horus, Seth, Deimos, Mercury, Miranda, Phobos) + .primary(Materials.Draconium) + .secondary(Materials.Electrotine) + .inBetween(Materials.Jade) + .sporadic(Materials.Vinteum)), + + Quantium(new OreMixBuilder().name("ore.mix.quantium") + .heightRange(5, 25) + .weight(30) + .density(3) + .size(24) + .enableInDim(Horus, Maahes, Venus) + .primary(Materials.Quantium) + .secondary(Materials.Amethyst) + .inBetween(Materials.Rutile) + .sporadic(Materials.Ardite)), + + CallistoIce(new OreMixBuilder().name("ore.mix.callistoice") + .heightRange(40, 60) + .weight(40) + .density(2) + .size(16) + .enableInDim(Anubis, Maahes, Callisto) + .primary(Materials.CallistoIce) + .secondary(Materials.Topaz) + .inBetween(Materials.BlueTopaz) + .sporadic(Materials.Alduorite)), + + Mytryl(new OreMixBuilder().name("ore.mix.mytryl") + .heightRange(10, 30) + .weight(40) + .density(2) + .size(16) + .enableInDim(Anubis, Horus, Io) + .primary(Materials.Mytryl) + .secondary(Materials.Jasper) + .inBetween(Materials.Ceruclase) + .sporadic(Materials.Vulcanite)), + + Ledox(new OreMixBuilder().name("ore.mix.ledox") + .heightRange(55, 65) + .weight(30) + .density(2) + .size(24) + .enableInDim(Horus, Enceladus, DimensionDef.Europa) + .primary(Materials.Ledox) + .secondary(Materials.Opal) + .inBetween(Materials.Orichalcum) + .sporadic(Materials.Rubracium)), + + Oriharukon(new OreMixBuilder().name("ore.mix.oriharukon") + .heightRange(30, 60) + .weight(40) + .density(2) + .size(16) + .enableInDim(Horus, Deimos, Phobos) + .primary(Materials.Oriharukon) + .secondary(Materials.Tanzanite) + .inBetween(Materials.Vyroxeres) + .sporadic(Materials.Mirabilite)), + + BlackPlutonium(new OreMixBuilder().name("ore.mix.blackplutonium") + .heightRange(5, 25) + .weight(40) + .density(2) + .size(24) + .enableInDim(Horus, BarnardC, CentauriAlpha, MakeMake, Pluto, TcetiE) + .primary(Materials.BlackPlutonium) + .secondary(Materials.GarnetRed) + .inBetween(Materials.GarnetYellow) + .sporadic(Materials.Borax)), + + InfusedGold(new OreMixBuilder().name("ore.mix.infusedgold") + .heightRange(15, 40) + .weight(30) + .density(2) + .size(16) + .enableInDim(BarnardE, Haumea, Io, Proteus, Titan, VegaB) + .primary(Materials.Gold) + .secondary(Materials.Gold) + .inBetween(Materials.InfusedGold) + .sporadic(Materials.Platinum)), + + Niobium(new OreMixBuilder().name("ore.mix.niobium") + .heightRange(5, 30) + .weight(60) + .density(2) + .size(24) + .enableInDim(BarnardF, MakeMake, Triton, VegaB) + .primary(Materials.Niobium) + .secondary(Materials.Yttrium) + .inBetween(Materials.Gallium) + .sporadic(Materials.Gallium)), + + TungstenIrons(new OreMixBuilder().name("ore.mix.tungstenirons") + .heightRange(5, 25) + .weight(16) + .density(2) + .size(30) + .enableInDim(Neper, BarnardC, BarnardE, BarnardF, Oberon, Pluto, Proteus, Triton) + .primary(Materials.Tungsten) + .secondary(Materials.Silicon) + .inBetween(Materials.DeepIron) + .sporadic(Materials.ShadowIron)), + + UraniumGTNH(new OreMixBuilder().name("ore.mix.uraniumgtnh") + .heightRange(10, 30) + .weight(60) + .density(2) + .size(24) + .enableInDim(BarnardE, BarnardF, Haumea, Pluto, Triton, VegaB) + .primary(Materials.Thorium) + .secondary(Materials.Uranium) + .inBetween(Materials.Plutonium241) + .sporadic(Materials.Uranium235)), + + VanadiumGold(new OreMixBuilder().name("ore.mix.vanadiumgold") + .heightRange(10, 50) + .weight(60) + .density(2) + .size(24) + .enableInDim(Maahes, BarnardF, Enceladus, MakeMake, Proteus, VegaB) + .primary(Materials.Vanadium) + .secondary(Materials.Magnetite) + .inBetween(Materials.Gold) + .sporadic(Materials.Chrome)), + + NetherStar(new OreMixBuilder().name("ore.mix.netherstar") + .heightRange(20, 60) + .weight(60) + .density(2) + .size(24) + .enableInDim(Horus, BarnardE, Haumea, TcetiE, VegaB) + .primary(Materials.GarnetSand) + .secondary(Materials.NetherStar) + .inBetween(Materials.GarnetRed) + .sporadic(Materials.GarnetYellow)), + + Garnet(new OreMixBuilder().name("ore.mix.garnet") + .heightRange(10, 30) + .weight(40) + .density(2) + .size(16) + .enableInDim(Horus, BarnardF, MakeMake, VegaB) + .primary(Materials.GarnetRed) + .secondary(Materials.GarnetYellow) + .inBetween(Materials.Chrysotile) + .sporadic(Materials.Realgar)), + + RareEarth(new OreMixBuilder().name("ore.mix.rareearth") + .heightRange(30, 60) + .weight(40) + .density(2) + .size(24) + .enableInDim(BarnardE, BarnardF, CentauriAlpha, VegaB) + .primary(Materials.Cadmium) + .secondary(Materials.Caesium) + .inBetween(Materials.Lanthanum) + .sporadic(Materials.Cerium)), + + RichNuclear(new OreMixBuilder().name("ore.mix.richnuclear") + .heightRange(55, 120) + .weight(5) + .density(2) + .size(8) + .enableInDim(Callisto, Ceres, Ganymede, Io) + .primary(Materials.Uranium) + .secondary(Materials.Plutonium) + .inBetween(Materials.Thorium) + .sporadic(Materials.Thorium)), + + HeavyPentele(new OreMixBuilder().name("ore.mix.heavypentele") + .heightRange(40, 60) + .weight(60) + .density(5) + .size(32) + .enableInDim(Neper, Mars, BarnardC, Mercury, Phobos, Titan, VegaB) + .primary(Materials.Arsenic) + .secondary(Materials.Bismuth) + .inBetween(Materials.Antimony) + .sporadic(Materials.Antimony)), + + Europa(new OreMixBuilder().name("ore.mix.europa") + .heightRange(55, 65) + .weight(110) + .density(4) + .size(24) + .enableInDim(Horus, DimensionDef.Europa, TcetiE) + .primary(Materials.Magnesite) + .secondary(Materials.BandedIron) + .inBetween(Materials.Sulfur) + .sporadic(Materials.Opal)), + + EuropaCore(new OreMixBuilder().name("ore.mix.europacore") + .heightRange(5, 15) + .weight(5) + .density(2) + .size(16) + .enableInDim(Maahes, DimensionDef.Europa, TcetiE) + .primary(Materials.Chrome) + .secondary(Materials.Tungstate) + .inBetween(Materials.Molybdenum) + .sporadic(Materials.Manganese)), + + SecondLanthanid(new OreMixBuilder().name("ore.mix.secondlanthanid") + .heightRange(10, 40) + .weight(10) + .density(3) + .size(24) + .enableInDim(Seth, BarnardC, CentauriAlpha) + .primary(Materials.Samarium) + .secondary(Materials.Neodymium) + .inBetween(Materials.Tartarite) + .sporadic(Materials.Tartarite)), + + QuartzSpace(new OreMixBuilder().name("ore.mix.quartzspace") + .heightRange(40, 80) + .weight(20) + .density(3) + .size(16) + .enableInDim(Horus, Moon, Mars, CentauriAlpha, Io, Phobos, Proteus, TcetiE, Venus) + .primary(Materials.Quartzite) + .secondary(Materials.Barite) + .inBetween(Materials.CertusQuartz) + .sporadic(Materials.CertusQuartz)), + + Rutile(new OreMixBuilder().name("ore.mix.rutile") + .heightRange(5, 20) + .weight(8) + .density(4) + .size(12) + .enableInDim(Anubis, Titan, Venus) + .primary(Materials.Rutile) + .secondary(Materials.Titanium) + .inBetween(Materials.Bauxite) + .sporadic(Materials.MeteoricIron)), + + TFGalena(new OreMixBuilder().name("ore.mix.tfgalena") + .heightRange(5, 35) + .weight(40) + .density(4) + .size(16) + .enableInDim(TWILIGHT_FOREST) + .enableInDim(Anubis, Maahes) + .primary(Materials.Galena) + .secondary(Materials.Silver) + .inBetween(Materials.Lead) + .sporadic(Materials.Cryolite)), + + LuVTantalite(new OreMixBuilder().name("ore.mix.luvtantalite") + .heightRange(20, 30) + .weight(10) + .density(4) + .size(16) + .enableInDim(Io, Miranda) + .primary(Materials.Pyrolusite) + .secondary(Materials.Apatite) + .inBetween(Materials.Tantalite) + .sporadic(Materials.Pyrochlore)), + + CertusQuartz(new OreMixBuilder().name("ore.mix.certusquartz") + .heightRange(40, 80) + .weight(60) + .density(5) + .size(32) + .enableInDim(Horus, Neper) + .primary(Materials.CertusQuartz) + .secondary(Materials.CertusQuartz) + .inBetween(Materials.CertusQuartzCharged) + .sporadic(Materials.QuartzSand)), + + InfinityCatalyst(new OreMixBuilder().name("ore.mix.infinitycatalyst") + .heightRange(5, 20) + .weight(15) + .density(2) + .size(16) + .enableInDim(Anubis) + .primary(Materials.Neutronium) + .secondary(Materials.Adamantium) + .inBetween(Materials.InfinityCatalyst) + .sporadic(Materials.Bedrockium)), + + CosmicNeutronium(new OreMixBuilder().name("ore.mix.cosmicneutronium") + .heightRange(5, 20) + .weight(15) + .density(2) + .size(16) + .enableInDim(Horus) + .primary(Materials.Neutronium) + .secondary(Materials.CosmicNeutronium) + .inBetween(Materials.BlackPlutonium) + .sporadic(Materials.Bedrockium)), + + Dilithium(new OreMixBuilder().name("ore.mix.dilithium") + .heightRange(30, 100) + .weight(30) + .density(3) + .size(24) + .enableInDim(Neper) + .primary(Materials.Dilithium) + .secondary(Materials.Dilithium) + .inBetween(Materials.MysteriousCrystal) + .sporadic(Materials.Vinteum)), + + Naquadria(new OreMixBuilder().name("ore.mix.naquadria") + .heightRange(10, 90) + .weight(40) + .density(4) + .size(24) + .enableInDim(Maahes) + .primary(Materials.Naquadah) + .secondary(Materials.NaquadahEnriched) + .inBetween(Materials.Naquadria) + .sporadic(Materials.Trinium)), + + AwakenedDraconium(new OreMixBuilder().name("ore.mix.awakeneddraconium") + .heightRange(20, 40) + .weight(20) + .density(3) + .size(16) + .enableInDim(MehenBelt) + .primary(Materials.Draconium) + .secondary(Materials.Draconium) + .inBetween(Materials.DraconiumAwakened) + .sporadic(Materials.NetherStar)), + + Tengam(new OreMixBuilder().name("ore.mix.tengam") + .heightRange(30, 180) + .weight(80) + .density(2) + .size(32) + .enableInDim(MehenBelt) + .primary(Materials.TengamRaw) + .secondary(Materials.TengamRaw) + .inBetween(Materials.Electrotine) + .sporadic(Materials.Samarium)); + + // spotless : on + + public final OreMixBuilder oreMixBuilder; + + private OreMixes(OreMixBuilder oreMixBuilder) { + this.oreMixBuilder = oreMixBuilder; + } + + public GT_Worldgen_GT_Ore_Layer addGTOreLayer() { + return new GT_Worldgen_GT_Ore_Layer(this.oreMixBuilder); + } + + public GT_Worldgen_GT_Ore_Layer_Space addGaGregOreLayer() { + return new GT_Worldgen_GT_Ore_Layer_Space(this.oreMixBuilder); + } +} diff --git a/src/main/java/gregtech/api/enums/SmallOres.java b/src/main/java/gregtech/api/enums/SmallOres.java new file mode 100644 index 0000000000..6de67bc3b9 --- /dev/null +++ b/src/main/java/gregtech/api/enums/SmallOres.java @@ -0,0 +1,555 @@ +package gregtech.api.enums; + +import static bloodasp.galacticgreg.api.enums.DimensionDef.Anubis; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Asteroids; +import static bloodasp.galacticgreg.api.enums.DimensionDef.BarnardE; +import static bloodasp.galacticgreg.api.enums.DimensionDef.BarnardF; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Callisto; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Ceres; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Deimos; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Enceladus; +import static bloodasp.galacticgreg.api.enums.DimensionDef.EndAsteroids; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Ganymede; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Haumea; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Horus; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Io; +import static bloodasp.galacticgreg.api.enums.DimensionDef.KuiperBelt; +import static bloodasp.galacticgreg.api.enums.DimensionDef.MakeMake; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Mars; +import static bloodasp.galacticgreg.api.enums.DimensionDef.MehenBelt; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Mercury; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Miranda; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Moon; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Oberon; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Phobos; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Pluto; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Proteus; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Seth; +import static bloodasp.galacticgreg.api.enums.DimensionDef.TcetiE; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Titan; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Triton; +import static bloodasp.galacticgreg.api.enums.DimensionDef.VegaB; +import static bloodasp.galacticgreg.api.enums.DimensionDef.Venus; +import static gregtech.common.SmallOreBuilder.NETHER; +import static gregtech.common.SmallOreBuilder.OW; +import static gregtech.common.SmallOreBuilder.THE_END; +import static gregtech.common.SmallOreBuilder.TWILIGHT_FOREST; + +import bloodasp.galacticgreg.GT_Worldgen_GT_Ore_SmallPieces_Space; +import gregtech.common.GT_Worldgen_GT_Ore_SmallPieces; +import gregtech.common.SmallOreBuilder; + +public enum SmallOres { + + // spotless : off + Copper(new SmallOreBuilder().name("ore.small.copper") + .heightRange(60, 180) + .amount(32) + .ore(Materials.Copper) + .enableInDim(Mars, Phobos, Proteus, Triton) + .enableInDim(NETHER, OW, THE_END)), + + Tin(new SmallOreBuilder().name("ore.small.tin") + .heightRange(80, 220) + .amount(32) + .ore(Materials.Tin) + .enableInDim(MehenBelt, Mars, Deimos, Ganymede, Proteus, Titan, EndAsteroids) + .enableInDim(NETHER, OW, THE_END)), + + Bismuth(new SmallOreBuilder().name("ore.small.bismuth") + .heightRange(80, 120) + .amount(8) + .ore(Materials.Bismuth) + .enableInDim(Mars, Callisto, Ceres, Io, MakeMake, Mercury, Proteus, VegaB) + .enableInDim(NETHER)), + + Coal(new SmallOreBuilder().name("ore.small.coal") + .heightRange(120, 250) + .amount(24) + .ore(Materials.Coal) + .enableInDim(OW)), + + Iron(new SmallOreBuilder().name("ore.small.iron") + .heightRange(40, 100) + .amount(16) + .ore(Materials.Iron) + .enableInDim( + Asteroids, + Mars, + BarnardE, + BarnardF, + Callisto, + Enceladus, + Ganymede, + Haumea, + Io, + KuiperBelt, + Miranda, + Phobos, + Titan, + Triton) + .enableInDim(NETHER, OW, THE_END)), + + Lead(new SmallOreBuilder().name("ore.small.lead") + .heightRange(40, 180) + .amount(16) + .ore(Materials.Lead) + .enableInDim( + Asteroids, + Mars, + Ceres, + Deimos, + Ganymede, + KuiperBelt, + MakeMake, + Mercury, + Oberon, + Pluto, + Triton, + VegaB, + Venus, + EndAsteroids) + .enableInDim(NETHER, THE_END, TWILIGHT_FOREST)), + + Zinc(new SmallOreBuilder().name("ore.small.zinc") + .heightRange(80, 210) + .amount(24) + .ore(Materials.Zinc) + .enableInDim(Mars, BarnardE, Enceladus, Ganymede, Haumea, Io, Mercury, Proteus, Titan, EndAsteroids) + .enableInDim(NETHER, OW, THE_END)), + + Gold(new SmallOreBuilder().name("ore.small.gold") + .heightRange(20, 60) + .amount(8) + .ore(Materials.Gold) + .enableInDim( + Asteroids, + Mars, + BarnardF, + Callisto, + Ceres, + KuiperBelt, + Miranda, + Phobos, + Pluto, + Venus, + EndAsteroids) + .enableInDim(OW, THE_END)), + + Silver(new SmallOreBuilder().name("ore.small.silver") + .heightRange(20, 60) + .amount(20) + .ore(Materials.Silver) + .enableInDim(Enceladus, Io, Oberon, Pluto, Proteus, Titan, Triton, VegaB, EndAsteroids) + .enableInDim(NETHER, OW, THE_END)), + + Nickel(new SmallOreBuilder().name("ore.small.nickel") + .heightRange(80, 150) + .amount(8) + .ore(Materials.Nickel) + .enableInDim( + MehenBelt, + Asteroids, + Mars, + BarnardE, + BarnardF, + Ceres, + Deimos, + KuiperBelt, + MakeMake, + Mercury, + Pluto, + Venus, + EndAsteroids) + .enableInDim(OW, THE_END)), + + Lapis(new SmallOreBuilder().name("ore.small.lapis") + .heightRange(10, 50) + .amount(4) + .ore(Materials.Lapis) + .enableInDim(MehenBelt, Enceladus, Ganymede, Io, Oberon, Phobos, TcetiE) + .enableInDim(OW)), + + Diamond(new SmallOreBuilder().name("ore.small.diamond") + .heightRange(5, 15) + .amount(2) + .ore(Materials.Diamond) + .enableInDim(Asteroids, Callisto, Ceres, Deimos, KuiperBelt, Oberon, Titan, Triton, VegaB, Venus) + .enableInDim(OW)), + + Emerald(new SmallOreBuilder().name("ore.small.emerald") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Emerald) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Ruby(new SmallOreBuilder().name("ore.small.ruby") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Ruby) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Sapphire(new SmallOreBuilder().name("ore.small.sapphire") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Sapphire) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Greensapphire(new SmallOreBuilder().name("ore.small.greensapphire") + .heightRange(5, 35) + .amount(2) + .ore(Materials.GreenSapphire) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Olivine(new SmallOreBuilder().name("ore.small.olivine") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Olivine) + .enableInDim(Horus, MehenBelt) + .enableInDim(TWILIGHT_FOREST)), + + Topaz(new SmallOreBuilder().name("ore.small.topaz") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Topaz) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Tanzanite(new SmallOreBuilder().name("ore.small.tanzanite") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Tanzanite) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Amethyst(new SmallOreBuilder().name("ore.small.amethyst") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Amethyst) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Opal(new SmallOreBuilder().name("ore.small.opal") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Opal) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Jasper(new SmallOreBuilder().name("ore.small.jasper") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Jasper) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Bluetopaz(new SmallOreBuilder().name("ore.small.bluetopaz") + .heightRange(5, 35) + .amount(2) + .ore(Materials.BlueTopaz) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Amber(new SmallOreBuilder().name("ore.small.amber") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Amber) + .enableInDim(TWILIGHT_FOREST)), + + Foolsruby(new SmallOreBuilder().name("ore.small.foolsruby") + .heightRange(5, 35) + .amount(2) + .ore(Materials.FoolsRuby) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Garnetred(new SmallOreBuilder().name("ore.small.garnetred") + .heightRange(5, 35) + .amount(2) + .ore(Materials.GarnetRed) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Garnetyellow(new SmallOreBuilder().name("ore.small.garnetyellow") + .heightRange(5, 35) + .amount(2) + .ore(Materials.GarnetYellow) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Redstone(new SmallOreBuilder().name("ore.small.redstone") + .heightRange(5, 25) + .amount(8) + .ore(Materials.Redstone) + .enableInDim(Mars, Ganymede, Io, Mercury, Proteus, Titan) + .enableInDim(NETHER, OW)), + + Netherquartz(new SmallOreBuilder().name("ore.small.netherquartz") + .heightRange(30, 120) + .amount(64) + .ore(Materials.NetherQuartz) + .enableInDim(NETHER)), + + Saltpeter(new SmallOreBuilder().name("ore.small.saltpeter") + .heightRange(10, 60) + .amount(8) + .ore(Materials.Saltpeter) + .enableInDim(Mars, Deimos, Enceladus, Ganymede, Io, Proteus, Venus) + .enableInDim(NETHER, TWILIGHT_FOREST)), + + Sulfur(new SmallOreBuilder().name("ore.small.sulfur") + .heightRange(5, 60) + .amount(40) + .ore(Materials.Sulfur) + .enableInDim(NETHER)), + + Titanium(new SmallOreBuilder().name("ore.small.titanium") + .heightRange(10, 180) + .amount(32) + .ore(Materials.Titanium) + .enableInDim( + MehenBelt, + Asteroids, + Mars, + BarnardE, + BarnardF, + Callisto, + Ceres, + Deimos, + Enceladus, + Ganymede, + Haumea, + Io, + KuiperBelt, + MakeMake, + Mercury, + Miranda, + Oberon, + Phobos, + Pluto, + Proteus, + Titan, + Triton, + Venus) + + ), + + Tungsten(new SmallOreBuilder().name("ore.small.tungsten") + .heightRange(10, 120) + .amount(16) + .ore(Materials.Tungsten) + .enableInDim(Io, Venus)), + + Meteoriciron(new SmallOreBuilder().name("ore.small.meteoriciron") + .heightRange(50, 70) + .amount(8) + .ore(Materials.MeteoricIron) + .enableInDim(Moon, Mars, Deimos, Io, Phobos, Pluto, Venus)), + + Firestone(new SmallOreBuilder().name("ore.small.firestone") + .heightRange(5, 15) + .amount(2) + .ore(Materials.Firestone) + .enableInDim(Io, Venus)), + + Neutronium(new SmallOreBuilder().name("ore.small.neutronium") + .heightRange(5, 15) + .amount(8) + .ore(Materials.Neutronium) + .enableInDim( + MehenBelt, + BarnardE, + BarnardF, + Enceladus, + Haumea, + KuiperBelt, + MakeMake, + Oberon, + Pluto, + Proteus, + TcetiE, + Titan, + Triton, + VegaB)), + + Chromite(new SmallOreBuilder().name("ore.small.chromite") + .heightRange(20, 40) + .amount(8) + .ore(Materials.Chromite) + .enableInDim( + MehenBelt, + Asteroids, + Mars, + Callisto, + Ceres, + Deimos, + Enceladus, + Ganymede, + Haumea, + Io, + KuiperBelt, + MakeMake, + Mercury, + Oberon, + Phobos, + Pluto, + Proteus, + Titan, + Triton, + VegaB, + Venus)), + + Tungstate(new SmallOreBuilder().name("ore.small.tungstate") + .heightRange(20, 40) + .amount(8) + .ore(Materials.Tungstate) + .enableInDim( + Asteroids, + Mars, + Callisto, + Ceres, + Deimos, + Enceladus, + Ganymede, + Io, + KuiperBelt, + Mercury, + Miranda, + Oberon, + Phobos, + Pluto, + Proteus, + Titan, + Triton, + Venus)), + + Naquadah(new SmallOreBuilder().name("ore.small.naquadah") + .heightRange(5, 25) + .amount(8) + .ore(Materials.Naquadah) + .enableInDim(BarnardE, BarnardF, Ceres, Enceladus, Io, KuiperBelt, Mercury, Pluto, Proteus, Venus)), + + Quantium(new SmallOreBuilder().name("ore.small.quantium") + .heightRange(5, 25) + .amount(6) + .ore(Materials.Quantium) + .enableInDim(Ceres, Haumea, Io, MakeMake, Pluto, Titan)), + + Mythril(new SmallOreBuilder().name("ore.small.mythril") + .heightRange(5, 25) + .amount(6) + .ore(Materials.Mytryl) + .enableInDim(Horus, Callisto, MakeMake, Miranda, Proteus, Venus)), + + Ledox(new SmallOreBuilder().name("ore.small.ledox") + .heightRange(40, 60) + .amount(4) + .ore(Materials.Ledox) + .enableInDim(Callisto, Enceladus, Haumea, Mercury, Oberon, Pluto)), + + Oriharukon(new SmallOreBuilder().name("ore.small.oriharukon") + .heightRange(20, 40) + .amount(6) + .ore(Materials.Oriharukon) + .enableInDim(Mars, Ceres, Haumea, MakeMake, Mercury, Titan, Triton)), + + Draconium(new SmallOreBuilder().name("ore.small.draconium") + .heightRange(5, 15) + .amount(4) + .ore(Materials.Draconium) + .enableInDim(Seth, Deimos, Ganymede, Haumea, MakeMake, Oberon, Phobos, Pluto, Venus)), + + Awdraconium(new SmallOreBuilder().name("ore.small.awdraconium") + .heightRange(5, 15) + .amount(2) + .ore(Materials.DraconiumAwakened) + .enableInDim(Seth, BarnardE, BarnardF, TcetiE, VegaB)), + + Desh(new SmallOreBuilder().name("ore.small.desh") + .heightRange(10, 30) + .amount(6) + .ore(Materials.Desh) + .enableInDim(Callisto, Deimos, Haumea, MakeMake, Mercury, Miranda, Phobos, Proteus, Triton)), + + Blackplutonium(new SmallOreBuilder().name("ore.small.blackplutonium") + .heightRange(25, 45) + .amount(6) + .ore(Materials.BlackPlutonium) + .enableInDim(BarnardE, BarnardF, Haumea, MakeMake, Pluto, Triton, VegaB)), + + Infinitycatalyst(new SmallOreBuilder().name("ore.small.infinitycatalyst") + .heightRange(40, 80) + .amount(6) + .ore(Materials.InfinityCatalyst) + .enableInDim(Anubis, VegaB)), + + Infinity(new SmallOreBuilder().name("ore.small.infinity") + .heightRange(2, 40) + .amount(2) + .ore(Materials.Infinity) + .disabledByDefault()), + + Bedrockium(new SmallOreBuilder().name("ore.small.bedrockium") + .heightRange(5, 25) + .amount(6) + .ore(Materials.Bedrockium) + .enableInDim(BarnardF)), + + Realgar(new SmallOreBuilder().name("ore.small.realgar") + .heightRange(15, 85) + .amount(32) + .ore(Materials.Realgar) + .enableInDim(BarnardF) + .enableInDim(NETHER)), + + Certusquartz(new SmallOreBuilder().name("ore.small.certusquartz") + .heightRange(5, 115) + .amount(16) + .ore(Materials.CertusQuartz) + .enableInDim(Horus) + .enableInDim(NETHER)), + + Jade(new SmallOreBuilder().name("ore.small.jade") + .heightRange(5, 35) + .amount(2) + .ore(Materials.Jade) + .enableInDim(Horus) + .enableInDim(TWILIGHT_FOREST)), + + Deepiron(new SmallOreBuilder().name("ore.small.deepiron") + .heightRange(5, 40) + .amount(8) + .ore(Materials.DeepIron) + .enableInDim(Mercury)), + + Redgarnet(new SmallOreBuilder().name("ore.small.redgarnet") + .heightRange(5, 35) + .amount(2) + .ore(Materials.GarnetRed) + .enableInDim(Horus)), + + Chargedcertus(new SmallOreBuilder().name("ore.small.chargedcertus") + .heightRange(5, 115) + .amount(4) + .ore(Materials.CertusQuartzCharged) + .enableInDim(Horus)),; + // spotless : on + + public final SmallOreBuilder smallOreBuilder; + + private SmallOres(gregtech.common.SmallOreBuilder smallOreBuilder) { + this.smallOreBuilder = smallOreBuilder; + } + + public GT_Worldgen_GT_Ore_SmallPieces addGTSmallOre() { + return new GT_Worldgen_GT_Ore_SmallPieces(this.smallOreBuilder); + } + + public GT_Worldgen_GT_Ore_SmallPieces_Space addGaGregSmallOre() { + return new GT_Worldgen_GT_Ore_SmallPieces_Space(this.smallOreBuilder); + } +} diff --git a/src/main/java/gregtech/api/enums/UndergroundFluidNames.java b/src/main/java/gregtech/api/enums/UndergroundFluidNames.java new file mode 100644 index 0000000000..5e96544bd2 --- /dev/null +++ b/src/main/java/gregtech/api/enums/UndergroundFluidNames.java @@ -0,0 +1,43 @@ +package gregtech.api.enums; + +public enum UndergroundFluidNames { + + carbonDioxide("carbondioxide"), + carbonMonoxide("carbonmonoxide"), + chlorobenzene("chlorobenzene"), + deuterium("deuterium"), + distilledWater("ic2distilledwater"), + ethane("ethane"), + ethylene("ethylene"), + fluorine("fluorine"), + heavyOil("liquid_heavy_oil"), + helium3("helium-3"), + hydrofluoricAcid("hydrofluoricacid_gt5u"), + hydrogen("hydrogen"), + hydrogenSulfide("liquid_hydricsulfur"), + lava("lava"), + lightOil("liquid_light_oil"), + liquidAir("liquidair"), + mediumOil("liquid_medium_oil"), + methane("methane"), + moltenCopper("molten.copper"), + moltenIron("molten.iron"), + moltenLead("molten.lead"), + moltenTin("molten.tin"), + naturalGas("gas_natural_gas"), + nitrogen("nitrogen"), + oil("oil"), + oxygen("oxygen"), + saltWater("saltwater"), + sulfuricAcid("sulfuricacid"), + unknownWater("unknowwater"), + veryHeavyOil("liquid_extra_heavy_oil"), + + ; + + public final String name; + + private UndergroundFluidNames(String name) { + this.name = name; + } +} |