Added config for ore generation

This commit is contained in:
ConnorRowe
2016-07-18 21:18:48 +01:00
parent d4ff6dd9b8
commit 2a54574d2d
3 changed files with 110 additions and 22 deletions

View File

@@ -0,0 +1,86 @@
package com.sosnitzka.taiga;
import java.io.File;
import net.minecraftforge.common.config.Configuration;
public class ConfigHandler {
public static Configuration config;
/// Sections
public static String generationSection = "Generation configuration";
public static String recipeSection = "Recipe Configuration";
/// Options
// regular Ores / Blocks without extra abilities
public static boolean generateBasalt;
public static boolean generateRottenGround;
public static boolean generateLignite;
public static boolean generateSlagIron;
public static boolean generateSlagGold;
public static boolean generateExtraIron;
// Ores
// Group: Solid
public static boolean generateTitanite;
public static boolean generateMeteorite;
public static boolean generateVibranium;
public static boolean generateAdamantite;
// Group: Arcane
public static boolean generatePrometheum;
public static boolean generateRubium;
public static boolean generateTiberium;
public static boolean generateArcanite;
// Group: Etheric
public static boolean generateEternite;
public static boolean generateMythril;
public static boolean generatePalladium;
public static boolean generateIgnitite;
// Group: Ratio
public static boolean generateViolium;
public static boolean generateBismuth;
public static boolean generateMindorite;
public static boolean generateKarmesine;
public static void init(File file){
config = new Configuration(file);
syncConfig();
}
public static void syncConfig() {
config.addCustomCategoryComment(generationSection, "This section contains all settings regarding ore/block generation. ");
// regular Ores / Blocks without extra abilities
generateBasalt = config.get(generationSection, "generateBasalt", true, "Enable this if you want basalt to generate in the world. default=true").getBoolean(generateBasalt);
generateRottenGround = config.get(generationSection, "generateRottenGround", true, "Enable this if you want rotten ground to generate in the world. default=true").getBoolean(generateRottenGround);
generateLignite = config.get(generationSection, "generateLignite", true, "Enable this if you want lignite to generate in the world. default=true").getBoolean(generateLignite);
generateSlagIron = config.get(generationSection, "generateSlagIron", true, "Enable this if you want slag iron to generate in the world. default=true").getBoolean(generateSlagIron);
generateSlagGold = config.get(generationSection, "generateSlagGold", true, "Enable this if you want slag gold to generate in the world. default=true").getBoolean(generateSlagGold);
generateExtraIron = config.get(generationSection, "generateExtraIron", true, "Enable this if you want extra iron to generate in the world. default=true").getBoolean(generateExtraIron);
// Ores
// Group: Solid
generateTitanite = config.get(generationSection, "generateTitanite", true, "Enable this if you want titanite to generate in the world. default=true").getBoolean(generateTitanite);
generateMeteorite = config.get(generationSection, "generateMeteorite", true, "Enable this if you want meteorite to generate in the world. default=true").getBoolean(generateMeteorite);
generateVibranium = config.get(generationSection, "generateVibranium", true, "Enable this if you want vibranium to generate in the world. default=true").getBoolean(generateVibranium);
generateAdamantite = config.get(generationSection, "generateAdamantite", true, "Enable this if you want adamantite to generate in the world. default=true").getBoolean(generateAdamantite);
// Group: Arcane
generatePrometheum = config.get(generationSection, "generatePrometheum", true, "Enable this if you want prometheum to generate in the world. default=true").getBoolean(generatePrometheum);
generateRubium = config.get(generationSection, "generateRubium", true, "Enable this if you want rubium to generate in the world. default=true").getBoolean(generateRubium);
generateTiberium = config.get(generationSection, "generateTiberium", true, "Enable this if you want tiberium to generate in the world. default=true").getBoolean(generateTiberium);
generateArcanite = config.get(generationSection, "generateArcanite", true, "Enable this if you want arcanite to generate in the world. default=true").getBoolean(generateArcanite);
// Group: Etheric
generateEternite = config.get(generationSection, "generateEternite", true, "Enable this if you want eternite to generate in the world. default=true").getBoolean(generateEternite);
generateMythril = config.get(generationSection, "generateMythril", true, "Enable this if you want mythril to generate in the world. default=true").getBoolean(generateMythril);
generatePalladium = config.get(generationSection, "generatePalladium", true, "Enable this if you want palladium to generate in the world. default=true").getBoolean(generatePalladium);
generateIgnitite = config.get(generationSection, "generateIgnitite", true, "Enable this if you want ignitite to generate in the world. default=true").getBoolean(generateIgnitite);
// Group: Ratio
generateViolium = config.get(generationSection, "generateViolium", true, "Enable this if you want violium to generate in the world. default=true").getBoolean(generateViolium);
generateBismuth = config.get(generationSection, "generateBismuth", true, "Enable this if you want bismuth to generate in the world. default=true").getBoolean(generateBismuth);
generateMindorite = config.get(generationSection, "generateMindorite", true, "Enable this if you want mindorite to generate in the world. default=true").getBoolean(generateMindorite);
generateKarmesine = config.get(generationSection, "generateKarmesine", true, "Enable this if you want karmesine to generate in the world. default=true").getBoolean(generateKarmesine);
config.save();
}
}

View File

@@ -46,6 +46,7 @@ public class TAIGA {
Blocks.register();
Fluids.registerfromItem();
Alloys.register();
ConfigHandler.init(e.getSuggestedConfigurationFile());
// ARCANE ORES
registerTinkerMaterial("Tiberium", tiberium, tiberiumFluid, 223, 6.2f, 8.35f, 0.63f, 50, 50, OBSIDIAN, false, true);

View File

@@ -1,5 +1,6 @@
package com.sosnitzka.taiga.world;
import com.sosnitzka.taiga.ConfigHandler;
import com.sosnitzka.taiga.util.Generator;
import net.minecraft.block.BlockStone;
import net.minecraft.init.Blocks;
@@ -14,36 +15,36 @@ import static com.sosnitzka.taiga.Blocks.*;
public class ZWorldGen implements IWorldGenerator {
private void nether(Random random, int x, int z, World world) {
Generator.generateNetherOre(adamantiteOre.getDefaultState(), random, x, z, world, 25, 1, 32, 2, 5);
Generator.generateNetherOre(tiberiumOre.getDefaultState(), random, x, z, world, 60, 1, 128, 2, 7);
Generator.generateNetherOre(palladiumOre.getDefaultState(), random, x, z, world, 21, 32, 64, 2, 5);
Generator.generateOre(prometheumOre.getDefaultState(), random, x, z, world, 21, 48, 64, 2, 4);
if (ConfigHandler.generateAdamantite){ Generator.generateNetherOre(adamantiteOre.getDefaultState(), random, x, z, world, 25, 1, 32, 2, 5); }
if (ConfigHandler.generateTiberium){ Generator.generateNetherOre(tiberiumOre.getDefaultState(), random, x, z, world, 60, 1, 128, 2, 7); }
if (ConfigHandler.generatePalladium){ Generator.generateNetherOre(palladiumOre.getDefaultState(), random, x, z, world, 21, 32, 64, 2, 5); }
if (ConfigHandler.generatePrometheum){ Generator.generateOre(prometheumOre.getDefaultState(), random, x, z, world, 21, 48, 64, 2, 4); }
}
private void world(Random random, int x, int z, World world) {
Generator.generateOre(slagironOre.getDefaultState(), random, x, z, world, 40, 8, 96, 5, 16);
Generator.generateOre(slaggoldOre.getDefaultState(), random, x, z, world, 20, 8, 48, 5, 9);
Generator.generateOre(ligniteOre.getDefaultState(), random, x, z, world, 40, 8, 96, 5, 15);
Generator.generateOre(Blocks.IRON_ORE.getDefaultState(), random, x, z, world, 40, 8, 96, 2, 14);
Generator.generateOre(basalt.getDefaultState(), Blocks.LAVA.getDefaultState(), random, x, z, world, 100, 8, 24, 2, 5);
Generator.generateOre(rottenGround.getDefaultState(), Blocks.DIRT.getDefaultState(), random, x, z, world, 25, 50, 70, 2, 15);
if (ConfigHandler.generateSlagIron){ Generator.generateOre(slagironOre.getDefaultState(), random, x, z, world, 40, 8, 96, 5, 16); }
if (ConfigHandler.generateSlagGold){ Generator.generateOre(slaggoldOre.getDefaultState(), random, x, z, world, 20, 8, 48, 5, 9); }
if (ConfigHandler.generateLignite){ Generator.generateOre(ligniteOre.getDefaultState(), random, x, z, world, 40, 8, 96, 5, 15); }
if (ConfigHandler.generateExtraIron){ Generator.generateOre(Blocks.IRON_ORE.getDefaultState(), random, x, z, world, 40, 8, 96, 2, 14); }
if (ConfigHandler.generateBasalt){ Generator.generateOre(basalt.getDefaultState(), Blocks.LAVA.getDefaultState(), random, x, z, world, 100, 8, 24, 2, 5); }
if (ConfigHandler.generateRottenGround){ Generator.generateOre(rottenGround.getDefaultState(), Blocks.DIRT.getDefaultState(), random, x, z, world, 25, 50, 70, 2, 15); }
Generator.generateOre(vibraniumOre.getDefaultState(), random, x, z, world, 18, 48, 64, 2, 4);
Generator.generateOre(karmesineOre.getDefaultState(), random, x, z, world, 30, 16, 48, 2, 5);
Generator.generateOre(bismuthOre.getDefaultState(), random, x, z, world, 50, 50, 130, 2, 4);
Generator.generateOre(mythrilOre.getDefaultState(), random, x, z, world, 18, 16, 32, 2, 4);
Generator.generateOre(meteoriteOre.getDefaultState(), random, x, z, world, 12, 0, 32, 2, 10);
Generator.generateOre(mindoriteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.DIORITE, random, x, z, world, 200, 16, 96, 2, 4);
Generator.generateOre(arcaniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.GRANITE, random, x, z, world, 200, 16, 96, 2, 4);
Generator.generateOre(eterniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.ANDESITE, random, x, z, world, 200, 16, 96, 2, 4);
if (ConfigHandler.generateVibranium){ Generator.generateOre(vibraniumOre.getDefaultState(), random, x, z, world, 18, 48, 64, 2, 4); }
if (ConfigHandler.generateKarmesine){ Generator.generateOre(karmesineOre.getDefaultState(), random, x, z, world, 30, 16, 48, 2, 5); }
if (ConfigHandler.generateBismuth){ Generator.generateOre(bismuthOre.getDefaultState(), random, x, z, world, 50, 50, 130, 2, 4); }
if (ConfigHandler.generateMythril){ Generator.generateOre(mythrilOre.getDefaultState(), random, x, z, world, 18, 16, 32, 2, 4); }
if (ConfigHandler.generateMeteorite){ Generator.generateOre(meteoriteOre.getDefaultState(), random, x, z, world, 12, 0, 32, 2, 10); }
if (ConfigHandler.generateMindorite){ Generator.generateOre(mindoriteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.DIORITE, random, x, z, world, 200, 16, 96, 2, 4); }
if (ConfigHandler.generateArcanite){ Generator.generateOre(arcaniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.GRANITE, random, x, z, world, 200, 16, 96, 2, 4); }
if (ConfigHandler.generateEternite){ Generator.generateOre(eterniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.ANDESITE, random, x, z, world, 200, 16, 96, 2, 4); }
}
private void end(Random random, int x, int z, World world) {
Generator.generateEndOre(rubiumOre.getDefaultState(), random, x, z, world, 16, 10, 35, 2, 6);
Generator.generateEndOre(ignititeOre.getDefaultState(), random, x, z, world, 16, 20, 45, 2, 6);
Generator.generateEndOre(violiumOre.getDefaultState(), random, x, z, world, 16, 30, 55, 2, 6);
Generator.generateEndOre(titaniteOre.getDefaultState(), random, x, z, world, 16, 40, 65, 2, 6);
if (ConfigHandler.generateRubium){ Generator.generateEndOre(rubiumOre.getDefaultState(), random, x, z, world, 16, 10, 35, 2, 6); }
if (ConfigHandler.generateIgnitite){ Generator.generateEndOre(ignititeOre.getDefaultState(), random, x, z, world, 16, 20, 45, 2, 6); }
if (ConfigHandler.generateViolium){ Generator.generateEndOre(violiumOre.getDefaultState(), random, x, z, world, 16, 30, 55, 2, 6); }
if (ConfigHandler.generateTitanite){ Generator.generateEndOre(titaniteOre.getDefaultState(), random, x, z, world, 16, 40, 65, 2, 6); }
}