From c695e0af5eb853017bb407f070956b5f2ab590f4 Mon Sep 17 00:00:00 2001 From: Frank Date: Thu, 7 Jul 2022 19:33:55 +0200 Subject: [PATCH] Serialize Cave Features --- .../betterend/world/biome/cave/EndCaveBiome.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/betterx/betterend/world/biome/cave/EndCaveBiome.java b/src/main/java/org/betterx/betterend/world/biome/cave/EndCaveBiome.java index 231874a8..a4f48269 100644 --- a/src/main/java/org/betterx/betterend/world/biome/cave/EndCaveBiome.java +++ b/src/main/java/org/betterx/betterend/world/biome/cave/EndCaveBiome.java @@ -35,7 +35,13 @@ public class EndCaveBiome extends EndBiome { public static final Codec CODEC = RecordCodecBuilder.create(instance -> codecWithSettings( instance, - Codec.BOOL.fieldOf("has_caves").orElse(true).forGetter(EndBiome::hasCaves) + Codec.BOOL.fieldOf("has_caves").orElse(true).forGetter(EndBiome::hasCaves), + WeightedList.listCodec(ConfiguredFeature.CODEC, "configured_features", "configured_feature") + .fieldOf("floor_features") + .forGetter(o -> (WeightedList) ((EndCaveBiome) o).floorFeatures), + WeightedList.listCodec(ConfiguredFeature.CODEC, "configured_features", "configured_feature") + .fieldOf("ceil_features") + .forGetter(o -> (WeightedList) ((EndCaveBiome) o).ceilFeatures) ).apply(instance, EndCaveBiome::new) ); @@ -58,7 +64,9 @@ public class EndCaveBiome extends EndBiome { Optional biomeParent, Optional> subbiomes, Optional intendedType, - boolean hasCaves + boolean hasCaves, + WeightedList>> floorFeatures, + WeightedList>> ceilFeatures ) { super( terrainHeight, @@ -74,6 +82,8 @@ public class EndCaveBiome extends EndBiome { intendedType, hasCaves ); + this.floorFeatures.addAll((WeightedList) floorFeatures); + this.ceilFeatures.addAll((WeightedList) ceilFeatures); } public static abstract class Config extends EndBiome.Config {