diff --git a/src/main/java/org/betterx/bclib/api/v2/generator/BCLibEndBiomeSource.java b/src/main/java/org/betterx/bclib/api/v2/generator/BCLibEndBiomeSource.java index ef0cb6ca..51fd7155 100644 --- a/src/main/java/org/betterx/bclib/api/v2/generator/BCLibEndBiomeSource.java +++ b/src/main/java/org/betterx/bclib/api/v2/generator/BCLibEndBiomeSource.java @@ -125,7 +125,10 @@ public class BCLibEndBiomeSource extends BCLBiomeSource implements BiomeSourceWi if (bclBiome != BiomeAPI.EMPTY_BIOME) { if (bclBiome.getParentBiome() == null) { if (config.withVoidBiomes) { - if (BiomeAPI.wasRegisteredAsEndVoidBiome(biomeID) + if (biomeID.equals(Biomes.THE_END.location())) { + //we discard those Biomes + } else if (BiomeAPI.wasRegisteredAsEndVoidBiome(biomeID) + || biomeID.equals(Biomes.SMALL_END_ISLANDS.location()) || TheEndBiomesHelper.isIntendedForEndBarrens(key) || includeVoid.contains(biomeID.toString()) ) { @@ -137,16 +140,17 @@ public class BCLibEndBiomeSource extends BCLBiomeSource implements BiomeSourceWi endLandBiomePicker.addBiome(bclBiome); } } else { - if (BiomeAPI.wasRegisteredAsEndLandBiome(biomeID) + if (biomeID.equals(Biomes.SMALL_END_ISLANDS.location()) + || biomeID.equals(Biomes.THE_END.location()) + ) { + //we discard those Biomes + } else if (BiomeAPI.wasRegisteredAsEndLandBiome(biomeID) || TheEndBiomesHelper.isIntendedForEndLand(key) || includeLand.contains(biomeID.toString()) ) { endLandBiomePicker.addBiome(bclBiome); endVoidBiomePicker.addBiome(bclBiome); - } - if (!biomeID.equals(Biomes.SMALL_END_ISLANDS.location()) && !biomeID.equals(Biomes.THE_END.location()) - && (BiomeAPI.wasRegisteredAsEndVoidBiome(biomeID) || includeVoid.contains(biomeID.toString())) - ) { + } else if (BiomeAPI.wasRegisteredAsEndVoidBiome(biomeID) || includeVoid.contains(biomeID.toString())) { endVoidBiomePicker.addBiome(bclBiome); } @@ -272,7 +276,6 @@ public class BCLibEndBiomeSource extends BCLBiomeSource implements BiomeSourceWi mapLand.clearCache(); mapVoid.clearCache(); } - if (config.generatorVersion == BCLEndBiomeSourceConfig.EndBiomeGeneratorType.VANILLA || endLandFunction == null) { if (dist <= (long) config.innerVoidRadiusSquared) { return this.centerBiome; diff --git a/src/main/java/org/betterx/bclib/api/v2/generator/TheEndBiomesHelper.java b/src/main/java/org/betterx/bclib/api/v2/generator/TheEndBiomesHelper.java index 7720a0c5..f3337abd 100644 --- a/src/main/java/org/betterx/bclib/api/v2/generator/TheEndBiomesHelper.java +++ b/src/main/java/org/betterx/bclib/api/v2/generator/TheEndBiomesHelper.java @@ -75,7 +75,7 @@ public class TheEndBiomesHelper { * and any biomes added to the End as midland biome by mods. */ public static boolean isIntendedForEndMidlands(ResourceKey biome) { - return get().bcl_canGenerateAsEndMidlandBiome(biome); + return get().bcl_canGenerateAsEndMidlandBiome(biome) && !get().bcl_canGenerateAsEndBiome(biome); } /** @@ -83,7 +83,8 @@ public class TheEndBiomesHelper { * and any biomes added to the End as barrens biome by mods. */ public static boolean isIntendedForEndBarrens(ResourceKey biome) { - return get().bcl_canGenerateAsEndBarrensBiome(biome); + return get().bcl_canGenerateAsEndBarrensBiome(biome) && !get().bcl_canGenerateAsEndBiome(biome) && !get().bcl_canGenerateAsEndMidlandBiome( + biome); } public static boolean isIntendedForEndLand(ResourceKey biome) { diff --git a/src/main/java/org/betterx/bclib/api/v2/generator/config/BCLEndBiomeSourceConfig.java b/src/main/java/org/betterx/bclib/api/v2/generator/config/BCLEndBiomeSourceConfig.java index bbfaa7b4..af8ab01b 100644 --- a/src/main/java/org/betterx/bclib/api/v2/generator/config/BCLEndBiomeSourceConfig.java +++ b/src/main/java/org/betterx/bclib/api/v2/generator/config/BCLEndBiomeSourceConfig.java @@ -31,7 +31,7 @@ public class BCLEndBiomeSourceConfig implements BiomeSourceConfig biome) { BCLBiome bclBiome = new BCLBiome(biome.value(), null); - registerBiome(bclBiome, BiomeType.END_VOID); + registerBiome(bclBiome, BiomeType.OTHER_END_VOID); return bclBiome; } @@ -334,7 +334,7 @@ public class BiomeAPI { VanillaBiomeSettings.createVanilla().setGenChance(genChance).build() ); - registerBiome(bclBiome, BiomeType.END_VOID); + registerBiome(bclBiome, BiomeType.OTHER_END_VOID); return bclBiome; }