From 8e5cbe19f3aef306357973570edda5bb02cd58e9 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Thu, 29 Oct 2020 19:39:27 +0300 Subject: [PATCH] Biome API update --- .../java/ru/betterend/registry/EndBiomes.java | 48 +++++++++++-------- .../ru/betterend/world/biome/EndBiome.java | 8 ++-- 2 files changed, 33 insertions(+), 23 deletions(-) diff --git a/src/main/java/ru/betterend/registry/EndBiomes.java b/src/main/java/ru/betterend/registry/EndBiomes.java index a2bd2774..72ad1329 100644 --- a/src/main/java/ru/betterend/registry/EndBiomes.java +++ b/src/main/java/ru/betterend/registry/EndBiomes.java @@ -75,7 +75,7 @@ public class EndBiomes { biomeRegistry.forEach((biome) -> { if (biome.getCategory() == Category.THEEND) { if (!MUTABLE.containsKey(biome) && !biomeRegistry.getId(biome).getNamespace().equals("minecraft")) { - EndBiome endBiome = new EndBiome(biome, 1); + EndBiome endBiome = new EndBiome(biome, 1, 1); LAND_BIOMES.addBiomeMutable(endBiome); KEYS.put(endBiome, biomeRegistry.getKey(biome).get()); } @@ -85,17 +85,14 @@ public class EndBiomes { CLIENT.clear(); } - /** - * Registers new {@link EndBiome} and adds it to picker, actually used for vanilla biomes. - * @param key - {@link RegistryKey} for the biome - * @param type - {@link BiomeType} - * @param genChance - generation chance [0.0F - Infinity] - * @return registered {@link EndBiome} - */ - public static EndBiome registerBiome(RegistryKey key, BiomeType type, float genChance) { + private static EndBiome registerBiome(RegistryKey key, BiomeType type, float genChance) { return registerBiome(BuiltinRegistries.BIOME.get(key), type, genChance); } + private static EndBiome registerSubBiome(RegistryKey key, EndBiome parent, float genChance) { + return registerSubBiome(BuiltinRegistries.BIOME.get(key), parent, genChance); + } + /** * Registers new {@link EndBiome} and adds it to picker, can be used to add existing mod biomes into the End. * @param biome - {@link Biome} instance @@ -104,21 +101,22 @@ public class EndBiomes { * @return registered {@link EndBiome} */ public static EndBiome registerBiome(Biome biome, BiomeType type, float genChance) { - EndBiome endBiome = new EndBiome(biome, genChance); - addToPicker(endBiome, type); - makeLink(endBiome); - return endBiome; + return registerBiome(biome, type, 1, genChance); } /** - * Registers new {@link EndBiome} from existed {@link Biome} and put as a sub-biome into selected parent. - * @param key - {@link RegistryKey} for the biome - * @param parent - {@link EndBiome} + * Registers new {@link EndBiome} and adds it to picker, can be used to add existing mod biomes into the End. + * @param biome - {@link Biome} instance + * @param type - {@link BiomeType} + * @param fogDensity - density of fog (def: 1F) [0.0F - Infinity] * @param genChance - generation chance [0.0F - Infinity] * @return registered {@link EndBiome} */ - public static EndBiome registerSubBiome(RegistryKey key, EndBiome parent, float genChance) { - return registerSubBiome(BuiltinRegistries.BIOME.get(key), parent, genChance); + public static EndBiome registerBiome(Biome biome, BiomeType type, float fogDensity, float genChance) { + EndBiome endBiome = new EndBiome(biome, fogDensity, genChance); + addToPicker(endBiome, type); + makeLink(endBiome); + return endBiome; } /** @@ -129,7 +127,19 @@ public class EndBiomes { * @return registered {@link EndBiome} */ public static EndBiome registerSubBiome(Biome biome, EndBiome parent, float genChance) { - EndBiome endBiome = new EndBiome(biome, genChance); + return registerSubBiome(biome, parent, 1, genChance); + } + + /** + * Registers new {@link EndBiome} from existed {@link Biome} and put as a sub-biome into selected parent. + * @param biome - {@link Biome} instance + * @param parent - {@link EndBiome} to be linked with + * @param fogDensity - density of fog (def: 1F) [0.0F - Infinity] + * @param genChance - generation chance [0.0F - Infinity] + * @return registered {@link EndBiome} + */ + public static EndBiome registerSubBiome(Biome biome, EndBiome parent, float fogDensity, float genChance) { + EndBiome endBiome = new EndBiome(biome, fogDensity, genChance); parent.addSubBiome(endBiome); makeLink(endBiome); SUBBIOMES.add(endBiome); diff --git a/src/main/java/ru/betterend/world/biome/EndBiome.java b/src/main/java/ru/betterend/world/biome/EndBiome.java index a7f9efec..0177e532 100644 --- a/src/main/java/ru/betterend/world/biome/EndBiome.java +++ b/src/main/java/ru/betterend/world/biome/EndBiome.java @@ -33,11 +33,11 @@ public class EndBiome { genChanceUnmutable = definition.getGenChance(); } - public EndBiome(Biome biome, float genChance) { + public EndBiome(Biome biome, float fogDensity, float genChance) { this.biome = biome; - mcID = BuiltinRegistries.BIOME.getId(biome); - fogDensity = 1; - genChanceUnmutable = genChance; + this.mcID = BuiltinRegistries.BIOME.getId(biome); + this.fogDensity = fogDensity; + this.genChanceUnmutable = genChance; } public void genSurfColumn(WorldAccess world, BlockPos pos, Random random) {