From 5c38b79d9c054120849c668c8e4c8d348f763c6d Mon Sep 17 00:00:00 2001 From: Timo Ley Date: Sat, 21 Jan 2023 19:57:35 +0100 Subject: [PATCH] feat: add more config options --- build.gradle | 2 +- src/main/java/dev/tilera/cwg/Config.java | 4 ++++ .../cwg/genlayer/GenLayerBiomeClassic.java | 17 ++++++++++------- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/build.gradle b/build.gradle index 14e6e59..42d44d0 100644 --- a/build.gradle +++ b/build.gradle @@ -24,7 +24,7 @@ apply from: './gradle/scripts/mixins.gradle' sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 -version = "1.5.0" +version = "1.6.0" group= "dev.tilera.modding" archivesBaseName = "cwg" diff --git a/src/main/java/dev/tilera/cwg/Config.java b/src/main/java/dev/tilera/cwg/Config.java index d29e139..d29321c 100644 --- a/src/main/java/dev/tilera/cwg/Config.java +++ b/src/main/java/dev/tilera/cwg/Config.java @@ -16,6 +16,8 @@ public class Config { public static boolean classicExtremeHills = false; public static boolean disableHeightTemperature = false; public static boolean enableFarlands = false; + public static boolean disableJungle = false; + public static boolean disableModdedBiomes = false; public static void initConfig() { conf = new Configuration(new File(Loader.instance().getConfigDir(), "ClassicWorldgen.cfg")); @@ -28,6 +30,8 @@ public class Config { disableHeightTemperature = conf.getBoolean("disableHeightTemperature", "tweaks", disableHeightTemperature, "disable snow on mountains"); changeWorldTypeCommand = conf.getBoolean("changeTypeCommand", "commands", changeWorldTypeCommand, "enable command to change the WorldType"); enableFarlands = conf.getBoolean("enableFarlands", "tweaks", enableFarlands, "reenable the Farlands!"); + disableJungle = conf.getBoolean("disableJungle", "worldgen", disableJungle, "prevent jungle biomes from generating in classic worldgen"); + disableModdedBiomes = conf.getBoolean("disableModdedBiomes", "worldgen", disableModdedBiomes, "prevent modded biomes from generating in classic worldgen"); conf.save(); } diff --git a/src/main/java/dev/tilera/cwg/genlayer/GenLayerBiomeClassic.java b/src/main/java/dev/tilera/cwg/genlayer/GenLayerBiomeClassic.java index ba78692..f2ff841 100644 --- a/src/main/java/dev/tilera/cwg/genlayer/GenLayerBiomeClassic.java +++ b/src/main/java/dev/tilera/cwg/genlayer/GenLayerBiomeClassic.java @@ -30,6 +30,7 @@ public class GenLayerBiomeClassic extends GenLayer { ArrayList biomeEntries = new ArrayList<>(); for (BiomeGenBase b : vanillaBiomes) { + if (Config.disableJungle && b == BiomeGenBase.jungle) continue; addedBiomes.add(b); biomeEntries.add(new BiomeEntry(b, 10)); } @@ -53,13 +54,15 @@ public class GenLayerBiomeClassic extends GenLayer { addedBiomes.add(BiomeGenBase.megaTaiga); } - for (BiomeType t : BiomeType.values()) { - ImmutableList biomesToAdd = BiomeManager.getBiomes(t); - for (BiomeEntry biome : biomesToAdd) { - if ((biome.biome.biomeID < 40 && Config.blockNewVanillaBiomes) || addedBiomes.contains(biome.biome)) continue; - addedBiomes.add(biome.biome); - biomeEntries.add(biome); - if (biome.itemWeight != 10) hasBiomeWeights = true; + if (!Config.disableModdedBiomes) { + for (BiomeType t : BiomeType.values()) { + ImmutableList biomesToAdd = BiomeManager.getBiomes(t); + for (BiomeEntry biome : biomesToAdd) { + if ((biome.biome.biomeID < 40 && Config.blockNewVanillaBiomes) || addedBiomes.contains(biome.biome)) continue; + addedBiomes.add(biome.biome); + biomeEntries.add(biome); + if (biome.itemWeight != 10) hasBiomeWeights = true; + } } } allowedBiomes = biomeEntries.toArray(new BiomeEntry[biomeEntries.size()]);