From ccf63a6bc01c5277d5d89ea84ecc5a0584bb985c Mon Sep 17 00:00:00 2001 From: Adubbz Date: Fri, 3 Jul 2020 23:49:05 +1000 Subject: [PATCH] Misc fixes --- gradle.properties | 4 +- mappings/build.gradle | 2 +- mappings/custom/methods.csv | 4 +- .../common/biome/overworld/AlpsBiome.java | 6 +-- .../biome/overworld/AlpsFoothillsBiome.java | 6 +-- .../common/biome/overworld/BayouBiome.java | 8 ++-- .../common/biome/overworld/BogBiome.java | 6 +-- .../biome/overworld/BorealForestBiome.java | 8 ++-- .../biome/overworld/BrushlandBiome.java | 8 ++-- .../biome/overworld/ChaparralBiome.java | 8 ++-- .../overworld/CherryBlossomGroveBiome.java | 8 ++-- .../biome/overworld/ColdDesertBiome.java | 8 ++-- .../overworld/ConiferousForestBiome.java | 8 ++-- .../biome/overworld/DeadForestBiome.java | 8 ++-- .../biome/overworld/FirClearingBiome.java | 8 ++-- .../biome/overworld/FloodplainBiome.java | 6 +-- .../biome/overworld/FlowerMeadowBiome.java | 8 ++-- .../biome/overworld/FungalJungleBiome.java | 8 ++-- .../biome/overworld/GhostForestBiome.java | 8 ++-- .../biome/overworld/GrasslandBiome.java | 8 ++-- .../biome/overworld/GravelBeachBiome.java | 4 +- .../common/biome/overworld/GroveBiome.java | 8 ++-- .../common/biome/overworld/HighlandBiome.java | 8 ++-- .../biome/overworld/HighlandMoorBiome.java | 6 +-- .../biome/overworld/LavenderFieldBiome.java | 8 ++-- .../biome/overworld/LushGrasslandBiome.java | 8 ++-- .../biome/overworld/LushSwampBiome.java | 8 ++-- .../common/biome/overworld/MangroveBiome.java | 6 +-- .../biome/overworld/MapleWoodsBiome.java | 8 ++-- .../common/biome/overworld/MarshBiome.java | 6 +-- .../common/biome/overworld/MeadowBiome.java | 8 ++-- .../common/biome/overworld/MireBiome.java | 8 ++-- .../biome/overworld/MysticGroveBiome.java | 8 ++-- .../common/biome/overworld/OasisBiome.java | 6 +-- .../biome/overworld/OminousWoodsBiome.java | 8 ++-- .../common/biome/overworld/OrchardBiome.java | 8 ++-- .../common/biome/overworld/OutbackBiome.java | 6 +-- .../biome/overworld/OvergrownCliffsBiome.java | 8 ++-- .../common/biome/overworld/PastureBiome.java | 8 ++-- .../biome/overworld/PoppyFieldBiome.java | 8 ++-- .../common/biome/overworld/PrairieBiome.java | 8 ++-- .../biome/overworld/PumpkinPatchBiome.java | 8 ++-- .../biome/overworld/RainbowValleyBiome.java | 8 ++-- .../biome/overworld/RainforestBiome.java | 8 ++-- .../biome/overworld/RedwoodForestBiome.java | 8 ++-- .../overworld/RedwoodForestEdgeBiome.java | 8 ++-- .../biome/overworld/ScrublandBiome.java | 8 ++-- .../biome/overworld/SeasonalForestBiome.java | 8 ++-- .../common/biome/overworld/ShieldBiome.java | 8 ++-- .../biome/overworld/ShrublandBiome.java | 8 ++-- .../biome/overworld/SilkgladeBiome.java | 10 ++--- .../overworld/SnowyConiferousForestBiome.java | 8 ++-- .../overworld/SnowyFirClearingBiome.java | 8 ++-- .../biome/overworld/SnowyForestBiome.java | 8 ++-- .../common/biome/overworld/SteppeBiome.java | 8 ++-- .../overworld/TemperateRainforestBiome.java | 8 ++-- .../TemperateRainforestHillsBiome.java | 8 ++-- .../overworld/TropicalRainforestBiome.java | 8 ++-- .../common/biome/overworld/TropicsBiome.java | 8 ++-- .../common/biome/overworld/TundraBiome.java | 8 ++-- .../common/biome/overworld/VolcanoBiome.java | 6 +-- .../biome/overworld/VolcanoEdgeBiome.java | 6 +-- .../biome/overworld/WastelandBiome.java | 8 ++-- .../common/biome/overworld/WetlandBiome.java | 8 ++-- .../biome/overworld/WhiteBeachBiome.java | 6 +-- .../common/biome/overworld/WoodlandBiome.java | 8 ++-- .../biome/overworld/XericShrublandBiome.java | 6 +-- .../world/gen/feature/AshSplatterFeature.java | 5 ++- .../world/gen/feature/BOPBiomeFeatures.java | 38 +++++++++---------- .../world/gen/feature/BigPumpkinFeature.java | 2 +- .../world/gen/feature/BoneSpineFeature.java | 2 +- .../world/gen/feature/BrambleFeature.java | 2 +- .../DefaultFlowersFeatureNoConfig.java | 2 +- .../world/gen/feature/FernGrassFeature.java | 2 +- .../gen/feature/FleshSplatterFeature.java | 2 +- .../world/gen/feature/HeathFeature.java | 2 +- .../gen/feature/HugeGlowshroomFeature.java | 2 +- .../gen/feature/HugeToadstoolFeature.java | 2 +- .../world/gen/feature/MangroveFeature.java | 2 +- .../gen/feature/MyceliumSplatterFeature.java | 2 +- .../world/gen/feature/NetherVinesFeature.java | 2 +- .../world/gen/feature/NetherWartFeature.java | 2 +- .../gen/feature/PodzolSplatterFeature.java | 2 +- .../gen/feature/PumpkinPatchFeature.java | 2 +- .../gen/feature/ScatteredRocksFeature.java | 2 +- .../world/gen/feature/ScrubFeature.java | 2 +- .../world/gen/feature/ShortBambooFeature.java | 2 +- .../feature/SmallBrownMushroomFeature.java | 2 +- .../gen/feature/SmallGlowshroomFeature.java | 2 +- .../gen/feature/SmallRedMushroomFeature.java | 2 +- .../gen/feature/SmallToadstoolFeature.java | 2 +- .../gen/feature/StandardGrassFeature.java | 5 ++- .../gen/feature/VolcanoSurfaceBuilder.java | 5 +-- .../gen/feature/WastelandGrassFeature.java | 2 +- .../java/biomesoplenty/init/ModBiomes.java | 2 +- 95 files changed, 299 insertions(+), 296 deletions(-) diff --git a/gradle.properties b/gradle.properties index 7d10d8cc5..feeebd069 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ mod_version=11.0.0 minecraft_version=1.16.1 minecraft_version_toml=16 -forge_version=32.0.7 +forge_version=32.0.47 forge_version_toml=32 forge_group=net.minecraftforge -mappings_version=0-1.16.1 +mappings_version=1-1.16.1 diff --git a/mappings/build.gradle b/mappings/build.gradle index da5f74eeb..d5b54bf09 100644 --- a/mappings/build.gradle +++ b/mappings/build.gradle @@ -2,7 +2,7 @@ apply plugin: 'java' apply plugin: 'maven' ext.channel = 'snapshot' -ext.dlVersion = '0' +ext.dlVersion = '1' ext.mcVersion = '1.16.1' group = 'de.oceanlabs.mcp' diff --git a/mappings/custom/methods.csv b/mappings/custom/methods.csv index 3f1c1782b..d995dbf32 100644 --- a/mappings/custom/methods.csv +++ b/mappings/custom/methods.csv @@ -21624,7 +21624,7 @@ func_234639_a_,fromJson,2,,net/minecraft/loot/FishingPredicate func_234640_a_,inOpenWater,2,,net/minecraft/loot/FishingPredicate func_234641_j_,getCraftSlots,2,,net/minecraft/inventory/container/PlayerContainer func_234654_d_,shrinkStackInSlot,2,,net/minecraft/inventory/container/SmithingTableContainer -func_234657_f_,getToughness,2,,net/minecraft/item/ArmorItem +func_234657_f_,getToughnessVanilla,2,,net/minecraft/item/ArmorItem func_234659_a_,matches,2,,net/minecraft/advancements/criterion/FishingRodHookedTrigger$Instance func_234667_a_,getLodestoneDimension,2,,net/minecraft/item/CompassItem func_234669_a_,addLodestoneTags,2,,net/minecraft/item/CompassItem @@ -22611,7 +22611,7 @@ func_238476_c_,drawString,0,,net/minecraft/client/gui/AbstractGui func_238478_a_,renderList,0,,net/minecraft/client/gui/widget/list/AbstractList func_238480_f_,bindEntryToSelf,0,,net/minecraft/client/gui/widget/list/AbstractList func_238482_a_,setMessage,0,,net/minecraft/client/gui/widget/Widget -func_238483_d_,getHeight,0,,net/minecraft/client/gui/widget/Widget +func_238483_d_,getHeightVanilla,0,,net/minecraft/client/gui/widget/Widget func_238484_a_,render,0,,net/minecraft/client/gui/overlay/BossOverlayGui func_238485_a_,drawBar,0,,net/minecraft/client/gui/overlay/BossOverlayGui func_238491_a_,handleChatQueueClicked,0,,net/minecraft/client/gui/NewChatGui diff --git a/src/main/java/biomesoplenty/common/biome/overworld/AlpsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/AlpsBiome.java index 3f0d76e5b..91b8c3c9b 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/AlpsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/AlpsBiome.java @@ -27,12 +27,12 @@ public class AlpsBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.DEEP_TOP_LAYER, BOPBiomeFeatures.SNOW_SNOW_GRAVEL_SURFACE)).precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(7.5F).scale(0.2F).temperature(-0.25F).downfall(0.3F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); DefaultBiomeFeatures.addDefaultOres(this); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/AlpsFoothillsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/AlpsFoothillsBiome.java index 648bdd100..45d54f1c8 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/AlpsFoothillsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/AlpsFoothillsBiome.java @@ -30,12 +30,12 @@ public class AlpsFoothillsBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_STONE)).precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(3.0F).scale(0.3F).temperature(-0.25F).downfall(0.3F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); DefaultBiomeFeatures.addDefaultOres(this); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/BayouBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/BayouBiome.java index 9852b8729..e1aa6d837 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/BayouBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/BayouBiome.java @@ -38,12 +38,12 @@ public class BayouBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.315F).scale(-0.05F).temperature(0.95F).downfall(0.9F).waterColor(0x62AF84).waterFogColor(0x0C211C).parent((String)null)); // Structures - this.addStructureStart(Feature.SWAMP_HUT.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.SWAMP_HUT); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -57,7 +57,7 @@ public class BayouBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.CYPRESS_TREE_MEDIUM.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F)), BOPBiomeFeatures.CYPRESS_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(3, 0.6F, 1)))); // Flowers and Foliage - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(6)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LARGE_FERN.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(12)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/BogBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/BogBiome.java index 4ada71fad..2a1cff746 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/BogBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/BogBiome.java @@ -39,11 +39,11 @@ public class BogBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.BOG_SURFACE_BUILDER, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.15F).scale(-0.1F).temperature(0.55F).downfall(0.9F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(2)))); @@ -57,7 +57,7 @@ public class BogBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.SPRUCE_TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.4F), BOPBiomeFeatures.MAPLE_TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.6F)), BOPBiomeFeatures.TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(5, 0.4F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SWEET_BERRY_BUSH_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(25)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.watergrass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/BorealForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/BorealForestBiome.java index c49bb81fd..f10e62575 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/BorealForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/BorealForestBiome.java @@ -40,12 +40,12 @@ public class BorealForestBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.3F).scale(0.3F).temperature(0.3F).downfall(0.6F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -57,7 +57,7 @@ public class BorealForestBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.BIG_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.075F), Feature.NORMAL_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.15F), BOPBiomeFeatures.YELLOW_POPLAR_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F), BOPBiomeFeatures.YELLOW_AUTUMN_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.15F)), BOPBiomeFeatures.TALL_SPRUCE_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(10, 0.4F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(7)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.FLOWER.configured(DefaultBiomeFeatures.DEFAULT_FLOWER_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(6)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.PUMPKIN_CONFIG).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(32)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/BrushlandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/BrushlandBiome.java index 2a3fc87b7..fd8a9b48b 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/BrushlandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/BrushlandBiome.java @@ -42,12 +42,12 @@ public class BrushlandBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/savanna/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.LAVA.defaultBlockState())).decorated(Placement.LAVA_LAKE.configured(new ChanceConfig(80)))); @@ -61,7 +61,7 @@ public class BrushlandBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.4F), BOPBiomeFeatures.DYING_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F), BOPBiomeFeatures.SPARSE_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F)), BOPBiomeFeatures.ACACIA_TWIGLET_SMALL.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(3, 0.4F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.DEAD_BUSH_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(7)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ChaparralBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ChaparralBiome.java index 26ae7a062..c1eeb4541 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ChaparralBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ChaparralBiome.java @@ -35,12 +35,12 @@ public class ChaparralBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.CHAPARRAL_SURFACE_BUILDER, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(1.1F).scale(0.3F).temperature(0.8F).downfall(0.45F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -53,7 +53,7 @@ public class ChaparralBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(12, 0.3F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.CHAPARRAL_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(17)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(6)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/CherryBlossomGroveBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/CherryBlossomGroveBiome.java index e7e39fa1b..ed92360ac 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/CherryBlossomGroveBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/CherryBlossomGroveBiome.java @@ -37,12 +37,12 @@ public class CherryBlossomGroveBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(-0.1F).scale(0.1F).temperature(0.6F).downfall(0.9F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -56,7 +56,7 @@ public class CherryBlossomGroveBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.PEONY.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LILAC.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.CHERRY_BLOSSOM_GROVE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(11)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(11)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SHORT_BAMBOO.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(2)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ColdDesertBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ColdDesertBiome.java index 2f939a85d..d6e8d79be 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ColdDesertBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ColdDesertBiome.java @@ -42,13 +42,13 @@ public class ColdDesertBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/snowy/town_centers", 6))); this.addStructureStart(Feature.IGLOO.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.LAVA.defaultBlockState())).decorated(Placement.LAVA_LAKE.configured(new ChanceConfig(80)))); @@ -60,7 +60,7 @@ public class ColdDesertBiome extends BiomeBOP //////////////////////////////////////////////////////////// // Vegetation - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new WastelandGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new WastelandGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ConiferousForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ConiferousForestBiome.java index 01eb7c7ef..7d83402bb 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ConiferousForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ConiferousForestBiome.java @@ -39,12 +39,12 @@ public class ConiferousForestBiome extends BiomeBOP this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/taiga/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); this.addStructureStart(Feature.WOODLAND_MANSION.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -59,7 +59,7 @@ public class ConiferousForestBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.FIR_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.33333334F)), BOPBiomeFeatures.FIR_TREE_LARGE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(10, 0.1F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.CONIFEROUS_FOREST_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(4)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SWEET_BERRY_BUSH_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/DeadForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/DeadForestBiome.java index cda254c5e..7ba1707b0 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/DeadForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/DeadForestBiome.java @@ -42,12 +42,12 @@ public class DeadForestBiome extends BiomeBOP // Structures this.addStructureStart(Feature.WOODLAND_MANSION.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -58,7 +58,7 @@ public class DeadForestBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.DYING_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F), BOPBiomeFeatures.DEAD_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F), BOPBiomeFeatures.TALL_SPRUCE_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F), BOPBiomeFeatures.SMALL_DEAD_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F)), Feature.NORMAL_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(2, 0.5F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.PUMPKIN_CONFIG).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(32)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/FirClearingBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/FirClearingBiome.java index a65dd7e2b..ed210d65a 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/FirClearingBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/FirClearingBiome.java @@ -33,12 +33,12 @@ public class FirClearingBiome extends BiomeBOP super((new Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(RainType.RAIN).biomeCategory(Category.TAIGA).depth(0.2F).scale(0.1F).temperature(0.45F).downfall(0.5F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -53,7 +53,7 @@ public class FirClearingBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.FIR_TREE_SMALL.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(1, 0.1F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.CONIFEROUS_FOREST_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SWEET_BERRY_BUSH_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/FloodplainBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/FloodplainBiome.java index 0c997955f..e8a29d523 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/FloodplainBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/FloodplainBiome.java @@ -35,11 +35,11 @@ public class FloodplainBiome extends BiomeBOP // Structures this.addStructureStart(Feature.JUNGLE_TEMPLE.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(1)))); @@ -52,7 +52,7 @@ public class FloodplainBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.SPARSE_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F), BOPBiomeFeatures.BIG_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(1, 0.3F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.watergrass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(250)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.SEAGRASS.configured(new SeaGrassConfig(64, 0.6D)).decorated(Placement.TOP_SOLID_HEIGHTMAP.configured(IPlacementConfig.NONE))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/FlowerMeadowBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/FlowerMeadowBiome.java index c98ecd2b3..d064cb80a 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/FlowerMeadowBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/FlowerMeadowBiome.java @@ -39,12 +39,12 @@ public class FlowerMeadowBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.0F).scale(0.0F).temperature(0.4F).downfall(0.7F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); DefaultBiomeFeatures.addDefaultOres(this); @@ -59,7 +59,7 @@ public class FlowerMeadowBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.SUNFLOWER.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.FLOWER_MEADOW_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(150)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(30)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(30)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/FungalJungleBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/FungalJungleBiome.java index 356ae98c3..2e0c952e6 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/FungalJungleBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/FungalJungleBiome.java @@ -38,12 +38,12 @@ public class FungalJungleBiome extends BiomeBOP super((new Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(RainType.RAIN).biomeCategory(Category.FOREST).depth(0.15F).scale(0.1F).temperature(0.85F).downfall(0.8F).waterColor(4445678).waterFogColor(270131).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -59,7 +59,7 @@ public class FungalJungleBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.MYCELIUM_SPLATTER.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(14)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(9)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LARGE_FERN.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(5)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/GhostForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/GhostForestBiome.java index 1e1930e0f..9d7eb4484 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/GhostForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/GhostForestBiome.java @@ -41,12 +41,12 @@ public class GhostForestBiome extends BiomeBOP super((new Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(RainType.RAIN).biomeCategory(Category.SWAMP).depth(-0.125F).scale(0.0F).temperature(0.5F).downfall(0.6F).waterColor(0x448FBD).waterFogColor(0x061326).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.CLAY.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(3)))); @@ -63,7 +63,7 @@ public class GhostForestBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.DARK_OAK_TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.4F), BOPBiomeFeatures.DEAD_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F), BOPBiomeFeatures.DEAD_TWIGLET_TREE_TALL.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.DEAD_TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(4, 0.5F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SCRUB.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(25)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.watergrass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(25)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(2)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/GrasslandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/GrasslandBiome.java index bec8d7f93..01c45e450 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/GrasslandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/GrasslandBiome.java @@ -40,12 +40,12 @@ public class GrasslandBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/plains/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -55,7 +55,7 @@ public class GrasslandBiome extends BiomeBOP //////////////////////////////////////////////////////////// // Vegetation - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(4)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SUGAR_CANE_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(45)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/GravelBeachBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/GravelBeachBiome.java index 1723a6d9c..cd56ddda4 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/GravelBeachBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/GravelBeachBiome.java @@ -26,11 +26,11 @@ public class GravelBeachBiome extends BiomeBOP { super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRAVEL)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.BEACH).depth(0.0F).scale(0.025F).temperature(0.6F).downfall(0.5F).waterColor(4159204).waterFogColor(329011).parent((String)null)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); this.addStructureStart(Feature.BURIED_TREASURE.configured(new BuriedTreasureConfig(0.01F))); this.addStructureStart(Feature.SHIPWRECK.configured(new ShipwreckConfig(true))); DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/GroveBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/GroveBiome.java index 7df7edf67..68dffc617 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/GroveBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/GroveBiome.java @@ -40,12 +40,12 @@ public class GroveBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/plains/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -57,7 +57,7 @@ public class GroveBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.SPARSE_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.05F), BOPBiomeFeatures.DARK_OAK_POPLAR.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F), BOPBiomeFeatures.SPRUCE_POPLAR.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.4F), BOPBiomeFeatures.FLOWERING_BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(3, 0.5F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.EXTENDED_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(6)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.PEONY.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(13)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/HighlandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/HighlandBiome.java index 540a1c990..c15719ae9 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/HighlandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/HighlandBiome.java @@ -34,12 +34,12 @@ public class HighlandBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Category.EXTREME_HILLS).depth(2.3F).scale(0.2F).temperature(0.6F).downfall(0.6F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -49,7 +49,7 @@ public class HighlandBiome extends BiomeBOP //////////////////////////////////////////////////////////// // Vegetation - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(25)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/HighlandMoorBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/HighlandMoorBiome.java index bac7270ea..20531571b 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/HighlandMoorBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/HighlandMoorBiome.java @@ -37,11 +37,11 @@ public class HighlandMoorBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(1.8F).scale(-0.05F).temperature(0.6F).downfall(0.6F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(1)))); @@ -54,7 +54,7 @@ public class HighlandMoorBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SCRUB.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(35)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.MOOR_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.VIOLET_FEATURE.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(50)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(9)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/LavenderFieldBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/LavenderFieldBiome.java index ddf0dd8df..20f6f07d3 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/LavenderFieldBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/LavenderFieldBiome.java @@ -39,12 +39,12 @@ public class LavenderFieldBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.0F).scale(0.05F).temperature(0.8F).downfall(0.7F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -55,7 +55,7 @@ public class LavenderFieldBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.FLOWERING_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_WITH_BEES_005_CONFIG).weighted(0.2F), BOPBiomeFeatures.BIG_FLOWERING_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F), BOPBiomeFeatures.BIG_JACARANDA_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.JACARANDA_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_WITH_BEES_002_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(1, 0.2F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.LAVENDER_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(500)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SUGAR_CANE_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/LushGrasslandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/LushGrasslandBiome.java index d4ce7fa36..1e40ea8b4 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/LushGrasslandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/LushGrasslandBiome.java @@ -35,12 +35,12 @@ public class LushGrasslandBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.2F).scale(0.2F).temperature(0.95F).downfall(0.9F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -53,7 +53,7 @@ public class LushGrasslandBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.LUSH_GRASSLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(6)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.watergrass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(6)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.FERN.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(125)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/LushSwampBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/LushSwampBiome.java index cd6977368..74f332f9f 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/LushSwampBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/LushSwampBiome.java @@ -33,12 +33,12 @@ public class LushSwampBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.05F).scale(0.1F).temperature(0.81F).downfall(1.0F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.SWAMP_HUT.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.SWAMP_HUT); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -51,7 +51,7 @@ public class LushSwampBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.TALL_SWAMP_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(3, 0.1F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.LUSH_SWAMP_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.tall_cattail.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.blue_hydrangea.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MangroveBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MangroveBiome.java index 7799e4f58..898f681b3 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MangroveBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MangroveBiome.java @@ -35,11 +35,11 @@ public class MangroveBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.MANGROVE_SURFACE_BUILDER, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.25F).scale(-0.025F).temperature(0.81F).downfall(0.7F).waterColor(0x448FBD).waterFogColor(0x061326).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(1)))); @@ -54,7 +54,7 @@ public class MangroveBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(15, 0.3F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.MANGROVE.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(125)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.SEAGRASS.configured(new SeaGrassConfig(32, 0.6D)).decorated(Placement.TOP_SOLID_HEIGHTMAP.configured(IPlacementConfig.NONE))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MapleWoodsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MapleWoodsBiome.java index f11dc819c..6850f9940 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MapleWoodsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MapleWoodsBiome.java @@ -41,12 +41,12 @@ public class MapleWoodsBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/taiga/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -58,7 +58,7 @@ public class MapleWoodsBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.TALL_SPRUCE_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F), BOPBiomeFeatures.BIG_MAPLE_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.05F)), BOPBiomeFeatures.MAPLE_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(20, 0.15F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(7)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(7)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SWEET_BERRY_BUSH_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SNOWY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.PUMPKIN_CONFIG).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(32)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MarshBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MarshBiome.java index 4e3c16ee2..4cca75caa 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MarshBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MarshBiome.java @@ -36,11 +36,11 @@ public class MarshBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.MARSH_SURFACE_BUILDER, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.15F).scale(-0.05F).temperature(0.65F).downfall(0.7F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(1)))); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(1)))); @@ -52,7 +52,7 @@ public class MarshBiome extends BiomeBOP //////////////////////////////////////////////////////////// // Vegetation - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(50)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.SEAGRASS.configured(new SeaGrassConfig(64, 0.6D)).decorated(Placement.TOP_SOLID_HEIGHTMAP.configured(IPlacementConfig.NONE))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MeadowBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MeadowBiome.java index f29f8f7c1..90ff01d03 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MeadowBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MeadowBiome.java @@ -44,12 +44,12 @@ public class MeadowBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/taiga/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -65,7 +65,7 @@ public class MeadowBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.ROSE_BUSH.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.SUNFLOWER.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.MEADOW_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(6)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SWEET_BERRY_BUSH_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(2)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.PUMPKIN_CONFIG).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(32)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MireBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MireBiome.java index 67a2c87e0..5124b32dd 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MireBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MireBiome.java @@ -42,12 +42,12 @@ public class MireBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.MUD_SURFACE_BUILDER, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.125F).scale(-0.05F).temperature(0.55F).downfall(0.9F).waterColor(0x354762).waterFogColor(0x040511).parent((String)null)); // Structures - this.addStructureStart(Feature.SWAMP_HUT.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.SWAMP_HUT); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(BOPBlocks.mud.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(3)))); @@ -65,7 +65,7 @@ public class MireBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.PODZOL_SPLATTER.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(14)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.HUGE_BROWN_MUSHROOM.configured(DefaultBiomeFeatures.HUGE_BROWN_MUSHROOM_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(17)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(9)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(9)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.toadstool.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MysticGroveBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MysticGroveBiome.java index 411a840aa..2aa3872aa 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MysticGroveBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MysticGroveBiome.java @@ -38,12 +38,12 @@ public class MysticGroveBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.1F).scale(0.1F).temperature(0.7F).downfall(0.8F).waterColor(0x9C3FE4).waterFogColor(0x2E0533).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -64,7 +64,7 @@ public class MysticGroveBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SMALL_RED_MUSHROOM.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.blue_hydrangea.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LILAC.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.watergrass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(10)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OasisBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OasisBiome.java index 4a46b3d9f..020abab06 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OasisBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OasisBiome.java @@ -34,12 +34,12 @@ public class OasisBiome extends BiomeBOP { super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_FULL_SAND)).precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.DESERT).depth(-0.275F).scale(-0.05F).temperature(2.0F).downfall(0.5F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OminousWoodsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OminousWoodsBiome.java index 41ffa20ec..730ba31aa 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OminousWoodsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OminousWoodsBiome.java @@ -38,12 +38,12 @@ public class OminousWoodsBiome extends BiomeBOP // Structures this.addStructureStart(Feature.WOODLAND_MANSION.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.SWAMP_HUT.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.SWAMP_HUT); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -57,7 +57,7 @@ public class OminousWoodsBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.DEAD_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.05F), BOPBiomeFeatures.DYING_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.15F), BOPBiomeFeatures.WILLOW_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.15F), BOPBiomeFeatures.TALL_UMBRAN_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.7F)), BOPBiomeFeatures.UMBRAN_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(7, 0.5F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.OMINOUS_WOODS_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.dead_grass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OrchardBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OrchardBiome.java index 3245b789e..9d0dee33f 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OrchardBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OrchardBiome.java @@ -38,12 +38,12 @@ public class OrchardBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(0.0F).temperature(0.8F).downfall(0.4F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -56,7 +56,7 @@ public class OrchardBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.BIG_FLOWERING_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.FLOWERING_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_WITH_BEES_005_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(2, 0.3F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.EXTENDED_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(15)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.ROSE_BUSH.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SUGAR_CANE_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OutbackBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OutbackBiome.java index 37a5e8671..637c6728d 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OutbackBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OutbackBiome.java @@ -39,12 +39,12 @@ public class OutbackBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/savanna/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.LAVA.defaultBlockState())).decorated(Placement.LAVA_LAKE.configured(new ChanceConfig(80)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OvergrownCliffsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OvergrownCliffsBiome.java index d0a186a6f..75a949c0c 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OvergrownCliffsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OvergrownCliffsBiome.java @@ -37,12 +37,12 @@ public class OvergrownCliffsBiome extends BiomeBOP // Structures this.addStructureStart(Feature.JUNGLE_TEMPLE.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -56,7 +56,7 @@ public class OvergrownCliffsBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.JUNGLE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.watergrass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(50)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(25)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(25)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SUGAR_CANE_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/PastureBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/PastureBiome.java index 1d6977e9b..7b16fdb0a 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/PastureBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/PastureBiome.java @@ -37,12 +37,12 @@ public class PastureBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.05F).scale(0.0F).temperature(0.8F).downfall(0.3F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); DefaultBiomeFeatures.addDefaultOres(this); @@ -50,7 +50,7 @@ public class PastureBiome extends BiomeBOP //////////////////////////////////////////////////////////// // Vegetation - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(30)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.tall_wheat.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(500)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/PoppyFieldBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/PoppyFieldBiome.java index b4e435d18..490404583 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/PoppyFieldBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/PoppyFieldBiome.java @@ -37,12 +37,12 @@ public class PoppyFieldBiome extends BiomeBOP super((new Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.POPPY_FIELD_SURFACE_BUILDER, SurfaceBuilder.CONFIG_GRASS)).precipitation(RainType.RAIN).biomeCategory(Category.PLAINS).depth(0.1F).scale(0.01F).temperature(0.65F).downfall(0.15F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); DefaultBiomeFeatures.addDefaultOres(this); @@ -54,7 +54,7 @@ public class PoppyFieldBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.ROSE_BUSH.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(25)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(50)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(30)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(30)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SUGAR_CANE_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/PrairieBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/PrairieBiome.java index 028f9265d..389647e6c 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/PrairieBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/PrairieBiome.java @@ -41,12 +41,12 @@ public class PrairieBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/plains/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); DefaultBiomeFeatures.addDefaultOres(this); @@ -56,7 +56,7 @@ public class PrairieBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.BIG_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.SPARSE_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig((int)0.85F, 0.3F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.goldenrod.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.CONIFEROUS_FOREST_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(2)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/PumpkinPatchBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/PumpkinPatchBiome.java index eb4b2abeb..1a57b0774 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/PumpkinPatchBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/PumpkinPatchBiome.java @@ -40,12 +40,12 @@ public class PumpkinPatchBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(-0.025F).temperature(0.4F).downfall(0.8F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -57,7 +57,7 @@ public class PumpkinPatchBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F)), BOPBiomeFeatures.TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(5, 0.5F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(6)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(6)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.toadstool.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(2)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/RainbowValleyBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/RainbowValleyBiome.java index 8f07d0638..1e649b0a8 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/RainbowValleyBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/RainbowValleyBiome.java @@ -48,12 +48,12 @@ public class RainbowValleyBiome extends BiomeBOP super((new Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(RainType.RAIN).biomeCategory(Category.FOREST).depth(0.5F).scale(0.5F).temperature(0.55F).downfall(1.0F).waterColor(4566514).waterFogColor(267827).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -66,7 +66,7 @@ public class RainbowValleyBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F), BOPBiomeFeatures.FIR_TREE_SMALL.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F), BOPBiomeFeatures.FIR_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.025F), BOPBiomeFeatures.BIG_RAINBOW_BIRCH_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F)), BOPBiomeFeatures.RAINBOW_BIRCH_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_WITH_BEES_005_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(15, 0.5F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.RAINBOW_VALLEY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(25)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(7)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LILAC.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.ROSE_BUSH.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(4)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/RainforestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/RainforestBiome.java index 82a1e2063..6cd871cfa 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/RainforestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/RainforestBiome.java @@ -41,12 +41,12 @@ public class RainforestBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(1.2F).scale(0.5F).temperature(0.9F).downfall(1.5F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -59,7 +59,7 @@ public class RainforestBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Feature.NORMAL_TREE.configured(DefaultBiomeFeatures.BIRCH_TREE_CONFIG).weighted(0.1F), BOPBiomeFeatures.BIG_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.4F)), Feature.NORMAL_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(10, 0.5F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.RAINFOREST_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(6)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.PEONY.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestBiome.java index dd6ed215f..f3006475b 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestBiome.java @@ -33,12 +33,12 @@ public class RedwoodForestBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_PODZOL)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.25F).scale(0.05F).temperature(0.8F).downfall(0.6F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -52,7 +52,7 @@ public class RedwoodForestBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.REDWOOD_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F), BOPBiomeFeatures.REDWOOD_TREE_MEDIUM.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F), BOPBiomeFeatures.REDWOOD_TREE_LARGE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.5F)), BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(18, 0.2F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestEdgeBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestEdgeBiome.java index e6dc0d94a..218f7a63f 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestEdgeBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestEdgeBiome.java @@ -32,12 +32,12 @@ public class RedwoodForestEdgeBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.PODZOL_SURFACE_BUILDER, SurfaceBuilder.CONFIG_PODZOL)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.25F).scale(0.05F).temperature(0.8F).downfall(0.6F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -51,7 +51,7 @@ public class RedwoodForestEdgeBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.REDWOOD_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F), BOPBiomeFeatures.REDWOOD_TREE_MEDIUM.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(5, 0.3F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ScrublandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ScrublandBiome.java index 7e913c12b..7932e9e7e 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ScrublandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ScrublandBiome.java @@ -38,12 +38,12 @@ public class ScrublandBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/savanna/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -55,7 +55,7 @@ public class ScrublandBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.SPRUCE_TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F), BOPBiomeFeatures.TALL_TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.ACACIA_TWIGLET.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(5, 0.5F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SCRUB.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(25)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(7)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SeasonalForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SeasonalForestBiome.java index b86fc2ed2..93c0a922a 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SeasonalForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SeasonalForestBiome.java @@ -42,12 +42,12 @@ public class SeasonalForestBiome extends BiomeBOP // Structures this.addStructureStart(Feature.WOODLAND_MANSION.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -61,7 +61,7 @@ public class SeasonalForestBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.FLOWER.configured(DefaultBiomeFeatures.DEFAULT_FLOWER_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.toadstool.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ShieldBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ShieldBiome.java index 5f4b03559..43ac51831 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ShieldBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ShieldBiome.java @@ -40,12 +40,12 @@ public class ShieldBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.CHAPARRAL_SURFACE_BUILDER, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(-0.2F).scale(0.15F).temperature(0.4F).downfall(0.8F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -58,7 +58,7 @@ public class ShieldBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F)), BOPBiomeFeatures.TALL_SPRUCE_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(6, 0.1F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.FLOWER.configured(DefaultBiomeFeatures.DEFAULT_FLOWER_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.watergrass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.tall_cattail.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ShrublandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ShrublandBiome.java index ffc19feb0..5ac90a40f 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ShrublandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ShrublandBiome.java @@ -39,12 +39,12 @@ public class ShrublandBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/plains/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -59,7 +59,7 @@ public class ShrublandBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SHRUBLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LILAC.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SilkgladeBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SilkgladeBiome.java index b3521e268..875d07953 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SilkgladeBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SilkgladeBiome.java @@ -40,13 +40,13 @@ public class SilkgladeBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.1F).scale(0.25F).temperature(0.75F).downfall(0.2F).waterColor(0x82826A).waterFogColor(0x0D0F09).parent((String)null)); // Structures - this.addStructureStart(Feature.SWAMP_HUT.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.SWAMP_HUT); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -58,7 +58,7 @@ public class SilkgladeBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Feature.NORMAL_TREE.configured(DefaultBiomeFeatures.SWAMP_TREE_CONFIG).weighted(0.05F), BOPBiomeFeatures.BIRCH_POPLAR.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.15F), BOPBiomeFeatures.COBWEB_BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F), BOPBiomeFeatures.SMALL_DEAD_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.5F), BOPBiomeFeatures.SILK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F), BOPBiomeFeatures.FULL_COBWEB_BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.05F), BOPBiomeFeatures.FULL_SILK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.05F)), BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(5, 0.4F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.toadstool.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SnowyConiferousForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SnowyConiferousForestBiome.java index c0936eeb1..a3de2f981 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SnowyConiferousForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SnowyConiferousForestBiome.java @@ -34,12 +34,12 @@ public class SnowyConiferousForestBiome extends BiomeBOP // Structures this.addStructureStart(Feature.IGLOO.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -54,7 +54,7 @@ public class SnowyConiferousForestBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.FIR_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.33333334F)), BOPBiomeFeatures.FIR_TREE_LARGE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(4, 0.1F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SNOWY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(2)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SWEET_BERRY_BUSH_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SnowyFirClearingBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SnowyFirClearingBiome.java index e779e4197..42ec4b09f 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SnowyFirClearingBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SnowyFirClearingBiome.java @@ -32,12 +32,12 @@ public class SnowyFirClearingBiome extends BiomeBOP // Structures this.addStructureStart(Feature.IGLOO.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -52,7 +52,7 @@ public class SnowyFirClearingBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.FIR_TREE_SMALL.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(1, 0.1F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SNOWY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.SWEET_BERRY_BUSH_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SnowyForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SnowyForestBiome.java index 08183d1df..f5bfc1157 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SnowyForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SnowyForestBiome.java @@ -43,13 +43,13 @@ public class SnowyForestBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/snowy/town_centers", 6))); this.addStructureStart(Feature.IGLOO.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -61,7 +61,7 @@ public class SnowyForestBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.DYING_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F)), Feature.NORMAL_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(3, 0.2F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(4)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SNOWY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(DefaultBiomeFeatures.PUMPKIN_CONFIG).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(32)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SteppeBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SteppeBiome.java index 45b4e4f0c..d075dd95e 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SteppeBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SteppeBiome.java @@ -34,12 +34,12 @@ public class SteppeBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(1.75F).scale(0.3F).temperature(0.775F).downfall(0.05F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -49,7 +49,7 @@ public class SteppeBiome extends BiomeBOP //////////////////////////////////////////////////////////// // Vegetation - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.desert_grass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(20)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestBiome.java index 06264d6f9..a2a7738ae 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestBiome.java @@ -38,12 +38,12 @@ public class TemperateRainforestBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(-0.25F).scale(0.1F).temperature(0.65F).downfall(1.2F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -57,7 +57,7 @@ public class TemperateRainforestBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.TALL_SWAMP_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.15F), BOPBiomeFeatures.BIG_OAK_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F), BOPBiomeFeatures.SEQUOIA_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.5F)), BOPBiomeFeatures.SEQUOIA_TREE_LARGE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(4, 0.2F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LARGE_FERN.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(7)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestHillsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestHillsBiome.java index 48a4d34c1..325282a4c 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestHillsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestHillsBiome.java @@ -37,12 +37,12 @@ public class TemperateRainforestHillsBiome extends BiomeBOP super((new Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(RainType.RAIN).biomeCategory(Category.FOREST).depth(0.75F).scale(0.25F).temperature(0.65F).downfall(1.2F).waterColor(4159204).waterFogColor(329011).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(4)))); @@ -56,7 +56,7 @@ public class TemperateRainforestHillsBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.SEQUOIA_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.5F)), BOPBiomeFeatures.SEQUOIA_TREE_LARGE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(8, 0.2F, 1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LARGE_FERN.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(7)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.FLOWER.configured(DefaultBiomeFeatures.DEFAULT_FLOWER_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(2)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TropicalRainforestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TropicalRainforestBiome.java index b5383672f..ea88f3f54 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TropicalRainforestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TropicalRainforestBiome.java @@ -39,12 +39,12 @@ public class TropicalRainforestBiome extends BiomeBOP // Structures this.addStructureStart(Feature.JUNGLE_TEMPLE.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -58,7 +58,7 @@ public class TropicalRainforestBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.JUNGLE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(6)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.watergrass.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.TALL_GRASS.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(15)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LARGE_FERN.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(6)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TropicsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TropicsBiome.java index 22700973b..a70996104 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TropicsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TropicsBiome.java @@ -40,12 +40,12 @@ public class TropicsBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.NONE).depth(0.25F).scale(0.4F).temperature(0.95F).downfall(1.0F).waterColor(4445678).waterFogColor(270131).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -58,7 +58,7 @@ public class TropicsBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.JUNGLE_TWIGLET_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.3F), BOPBiomeFeatures.FLOWERING_BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F)), BOPBiomeFeatures.PALM_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(11, 0.2F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.TROPICS_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(15)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SHORT_BAMBOO.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(10)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.blue_hydrangea.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.ROSE_BUSH.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TundraBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TundraBiome.java index 684147ffd..933e5e605 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TundraBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TundraBiome.java @@ -45,12 +45,12 @@ public class TundraBiome extends BiomeBOP // Structures this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/taiga/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -64,7 +64,7 @@ public class TundraBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.FOREST_ROCK.configured(new BlockBlobConfig(Blocks.COBBLESTONE.defaultBlockState(), 0)).decorated(Placement.FOREST_ROCK.configured(new FrequencyConfig(1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.SCATTERED_ROCKS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(3)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.FERN.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(4)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/VolcanoBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/VolcanoBiome.java index 09c4f1d40..1723148d5 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/VolcanoBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/VolcanoBiome.java @@ -37,12 +37,12 @@ public class VolcanoBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.VOLCANO_SURFACE_BUILDER, BOPBiomeFeatures.ASH_SURFACE)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.NONE).depth(4.5F).scale(0.0F).temperature(0.95F).downfall(0.3F).waterColor(4566514).waterFogColor(267827).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.LAVA.defaultBlockState())).decorated(Placement.LAVA_LAKE.configured(new ChanceConfig(10)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/VolcanoEdgeBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/VolcanoEdgeBiome.java index 090d85cfc..6a2b14103 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/VolcanoEdgeBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/VolcanoEdgeBiome.java @@ -39,12 +39,12 @@ public class VolcanoEdgeBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(BOPBiomeFeatures.VOLCANO_EDGE_SURFACE_BUILDER, SurfaceBuilder.CONFIG_STONE)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.NONE).depth(1.25F).scale(0.4F).temperature(0.95F).downfall(0.3F).waterColor(4566514).waterFogColor(267827).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.LAVA.defaultBlockState())).decorated(Placement.LAVA_LAKE.configured(new ChanceConfig(10)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/WastelandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/WastelandBiome.java index 1fef6b3d5..abc53a256 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/WastelandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/WastelandBiome.java @@ -40,12 +40,12 @@ public class WastelandBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, BOPBiomeFeatures.DRIED_SALT_SURFACE)).precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.DESERT).depth(-0.05F).scale(-0.05F).temperature(2.0F).downfall(0.0F).waterColor(0x433721).waterFogColor(0x0C0C03).parent((String)null)); // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -57,7 +57,7 @@ public class WastelandBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.DEAD_TREE_WASTELAND.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F)), BOPBiomeFeatures.DYING_TREE_WASTELAND.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig((int)0.75F, 0.1F, 1)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.WASTELAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new WastelandGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(2)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new WastelandGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(2)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/WetlandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/WetlandBiome.java index 095eb6507..77e670205 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/WetlandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/WetlandBiome.java @@ -39,12 +39,12 @@ public class WetlandBiome extends BiomeBOP super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)).precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(0.0F).scale(0.2F).temperature(0.6F).downfall(0.7F).waterColor(0x272179).waterFogColor(0x0C031B).parent((String)null)); // Structures - this.addStructureStart(Feature.SWAMP_HUT.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.SWAMP_HUT); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.WATER.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(2)))); @@ -62,7 +62,7 @@ public class WetlandBiome extends BiomeBOP // Flowers and Foliage this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.WETLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(16)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new FernGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(16)))); // Other Plants this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.cattail.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(30)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/WhiteBeachBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/WhiteBeachBiome.java index 8ff85b0f7..a3ddd4c47 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/WhiteBeachBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/WhiteBeachBiome.java @@ -39,13 +39,13 @@ public class WhiteBeachBiome extends BiomeBOP // Structures - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); this.addStructureStart(Feature.BURIED_TREASURE.configured(new BuriedTreasureConfig(0.01F))); this.addStructureStart(Feature.SHIPWRECK.configured(new ShipwreckConfig(true))); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -54,7 +54,7 @@ public class WhiteBeachBiome extends BiomeBOP // Vegetation this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.SIMPLE_RANDOM_SELECTOR.configured(new SingleRandomFeature(ImmutableList.of(Feature.CORAL_TREE.configured(IFeatureConfig.NONE), Feature.CORAL_CLAW.configured(IFeatureConfig.NONE), Feature.CORAL_MUSHROOM.configured(IFeatureConfig.NONE)))).decorated(Placement.TOP_SOLID_HEIGHTMAP_NOISE_BIASED.configured(new TopSolidWithNoiseConfig(20, 400.0D, 0.0D, Heightmap.Type.OCEAN_FLOOR_WG)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.TROPICS_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(15)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(12)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.SEA_PICKLE.configured(new CountConfig(20)).decorated(Placement.CHANCE_TOP_SOLID_HEIGHTMAP.configured(new ChanceConfig(16)))); //////////////////////////////////////////////////////////// diff --git a/src/main/java/biomesoplenty/common/biome/overworld/WoodlandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/WoodlandBiome.java index b7eddbf63..09aa7618e 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/WoodlandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/WoodlandBiome.java @@ -43,12 +43,12 @@ public class WoodlandBiome extends BiomeBOP this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/plains/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); this.addStructureStart(Feature.WOODLAND_MANSION.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); DefaultBiomeFeatures.addDefaultLakes(this); DefaultBiomeFeatures.addDefaultMonsterRoom(this); DefaultBiomeFeatures.addDefaultUndergroundVariety(this); @@ -63,7 +63,7 @@ public class WoodlandBiome extends BiomeBOP this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.ROSE_BUSH.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.EXTENDED_FLOWERS.configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.goldenrod.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1)))); - this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(6)))); + this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig.CODEC).configured(IFeatureConfig.NONE).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(6)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.defaultBlockState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8)))); this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.toadstool.defaultBlockState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(2)))); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/XericShrublandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/XericShrublandBiome.java index 21082912e..c496179c0 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/XericShrublandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/XericShrublandBiome.java @@ -42,12 +42,12 @@ public class XericShrublandBiome extends BiomeBOP this.addStructureStart(Feature.VILLAGE.configured(new VillageConfig("village/desert/town_centers", 6))); this.addStructureStart(Feature.PILLAGER_OUTPOST.configured(IFeatureConfig.NONE)); this.addStructureStart(Feature.DESERT_PYRAMID.configured(IFeatureConfig.NONE)); - this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL))); - this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NONE)); + this.addStructureStart(DefaultBiomeFeatures.MINESHAFT); + this.addStructureStart(DefaultBiomeFeatures.STRONGHOLD); // Underground DefaultBiomeFeatures.addDefaultCarvers(this); - DefaultBiomeFeatures.addStructureFeaturePlacement(this); + DefaultBiomeFeatures.addDefaultOverworldLandStructures(this); this.addFeature(GenerationStage.Decoration.LOCAL_MODIFICATIONS, Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.LAVA.defaultBlockState())).decorated(Placement.LAVA_LAKE.configured(new ChanceConfig(80)))); diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/AshSplatterFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/AshSplatterFeature.java index fa7f1e77c..dbd8fc931 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/AshSplatterFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/AshSplatterFeature.java @@ -2,20 +2,23 @@ package biomesoplenty.common.world.gen.feature; import biomesoplenty.api.block.BOPBlocks; import com.mojang.datafixers.Dynamic; +import com.mojang.serialization.Codec; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; import net.minecraft.util.math.BlockPos; +import net.minecraft.world.ISeedReader; import net.minecraft.world.IWorld; import net.minecraft.world.gen.ChunkGenerator; import net.minecraft.world.gen.GenerationSettings; import net.minecraft.world.gen.feature.Feature; import net.minecraft.world.gen.feature.NoFeatureConfig; +import net.minecraft.world.gen.feature.structure.StructureManager; import java.util.Random; import java.util.function.Function; public class AshSplatterFeature extends Feature { - public AshSplatterFeature(Function, ? extends NoFeatureConfig> deserializer) { + public AshSplatterFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/BOPBiomeFeatures.java b/src/main/java/biomesoplenty/common/world/gen/feature/BOPBiomeFeatures.java index d4c195bca..092a2b8e0 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/BOPBiomeFeatures.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/BOPBiomeFeatures.java @@ -115,25 +115,25 @@ public class BOPBiomeFeatures ///////////////////////////////////////////////////////////////////////////////// //Features - public static final Feature BRAMBLE = new BrambleFeature(NoFeatureConfig::deserialize); - public static final Feature MANGROVE = new MangroveFeature(NoFeatureConfig::deserialize); - public static final Feature PUMPKIN_PATCH = new PumpkinPatchFeature(NoFeatureConfig::deserialize); - public static final Feature BIG_PUMPKIN = new BigPumpkinFeature(NoFeatureConfig::deserialize); - public static final Feature SHORT_BAMBOO = new ShortBambooFeature(NoFeatureConfig::deserialize); - public static final Feature SCRUB = new ScrubFeature(NoFeatureConfig::deserialize); - public static final Feature SCATTERED_ROCKS = new ScatteredRocksFeature(NoFeatureConfig::deserialize); - public static final Feature NETHER_VINES = new NetherVinesFeature(NoFeatureConfig::deserialize); - public static final Feature FLESH_SPLATTER = new FleshSplatterFeature(NoFeatureConfig::deserialize); - public static final Feature BONE_SPINE = new BoneSpineFeature(NoFeatureConfig::deserialize); - public static final Feature ASH_SPLATTER = new AshSplatterFeature(NoFeatureConfig::deserialize); - public static final Feature PODZOL_SPLATTER = new PodzolSplatterFeature(NoFeatureConfig::deserialize); - public static final Feature MYCELIUM_SPLATTER = new MyceliumSplatterFeature(NoFeatureConfig::deserialize); - public static final Feature SMALL_RED_MUSHROOM = new SmallRedMushroomFeature(NoFeatureConfig::deserialize); - public static final Feature SMALL_BROWN_MUSHROOM = new SmallBrownMushroomFeature(NoFeatureConfig::deserialize); - public static final Feature SMALL_GLOWSHROOM = new SmallGlowshroomFeature(NoFeatureConfig::deserialize); - public static final Feature SMALL_TOADSTOOL = new SmallToadstoolFeature(NoFeatureConfig::deserialize); - public static final Feature HUGE_GLOWSHROOM = new HugeGlowshroomFeature(NoFeatureConfig::deserialize); - public static final Feature HUGE_TOADSTOOL = new HugeToadstoolFeature(NoFeatureConfig::deserialize); + public static final Feature BRAMBLE = new BrambleFeature(NoFeatureConfig.CODEC); + public static final Feature MANGROVE = new MangroveFeature(NoFeatureConfig.CODEC); + public static final Feature PUMPKIN_PATCH = new PumpkinPatchFeature(NoFeatureConfig.CODEC); + public static final Feature BIG_PUMPKIN = new BigPumpkinFeature(NoFeatureConfig.CODEC); + public static final Feature SHORT_BAMBOO = new ShortBambooFeature(NoFeatureConfig.CODEC); + public static final Feature SCRUB = new ScrubFeature(NoFeatureConfig.CODEC); + public static final Feature SCATTERED_ROCKS = new ScatteredRocksFeature(NoFeatureConfig.CODEC); + public static final Feature NETHER_VINES = new NetherVinesFeature(NoFeatureConfig.CODEC); + public static final Feature FLESH_SPLATTER = new FleshSplatterFeature(NoFeatureConfig.CODEC); + public static final Feature BONE_SPINE = new BoneSpineFeature(NoFeatureConfig.CODEC); + public static final Feature ASH_SPLATTER = new AshSplatterFeature(NoFeatureConfig.CODEC); + public static final Feature PODZOL_SPLATTER = new PodzolSplatterFeature(NoFeatureConfig.CODEC); + public static final Feature MYCELIUM_SPLATTER = new MyceliumSplatterFeature(NoFeatureConfig.CODEC); + public static final Feature SMALL_RED_MUSHROOM = new SmallRedMushroomFeature(NoFeatureConfig.CODEC); + public static final Feature SMALL_BROWN_MUSHROOM = new SmallBrownMushroomFeature(NoFeatureConfig.CODEC); + public static final Feature SMALL_GLOWSHROOM = new SmallGlowshroomFeature(NoFeatureConfig.CODEC); + public static final Feature SMALL_TOADSTOOL = new SmallToadstoolFeature(NoFeatureConfig.CODEC); + public static final Feature HUGE_GLOWSHROOM = new HugeGlowshroomFeature(NoFeatureConfig.CODEC); + public static final Feature HUGE_TOADSTOOL = new HugeToadstoolFeature(NoFeatureConfig.CODEC); //Flowers public static final FlowersFeature CHAPARRAL_FLOWERS = new ChaparralFlowersFeature(); diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/BigPumpkinFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/BigPumpkinFeature.java index 3dab8ce21..25c2d2524 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/BigPumpkinFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/BigPumpkinFeature.java @@ -20,7 +20,7 @@ public class BigPumpkinFeature extends Feature protected IBlockPosQuery placeOn = (world, pos) -> world.getBlockState(pos).getBlock() == Blocks.GRASS_BLOCK; protected IBlockPosQuery replace = (world, pos) -> world.getBlockState(pos).canBeReplacedByLeaves(world, pos); - public BigPumpkinFeature(Function, ? extends NoFeatureConfig> deserializer) + public BigPumpkinFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/BoneSpineFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/BoneSpineFeature.java index da7c7996f..f2352ceff 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/BoneSpineFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/BoneSpineFeature.java @@ -23,7 +23,7 @@ public class BoneSpineFeature extends Feature protected IBlockPosQuery replace = (world, pos) -> world.getBlockState(pos).isAir(world, pos); private int maxHeight = 5; - public BoneSpineFeature(Function, ? extends NoFeatureConfig> deserializer) + public BoneSpineFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/BrambleFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/BrambleFeature.java index 96ad12f21..56c3fb163 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/BrambleFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/BrambleFeature.java @@ -30,7 +30,7 @@ import java.util.function.Function; public class BrambleFeature extends Feature { - public BrambleFeature(Function, ? extends NoFeatureConfig> deserializer) + public BrambleFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/DefaultFlowersFeatureNoConfig.java b/src/main/java/biomesoplenty/common/world/gen/feature/DefaultFlowersFeatureNoConfig.java index dd86d55d7..fdbc2771d 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/DefaultFlowersFeatureNoConfig.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/DefaultFlowersFeatureNoConfig.java @@ -23,7 +23,7 @@ public abstract class DefaultFlowersFeatureNoConfig extends FlowersFeature { - public FernGrassFeature(Function, ? extends NoFeatureConfig> deserializer) + public FernGrassFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/FleshSplatterFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/FleshSplatterFeature.java index 824c92c7b..e0c41a9a8 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/FleshSplatterFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/FleshSplatterFeature.java @@ -16,7 +16,7 @@ import java.util.function.Function; public class FleshSplatterFeature extends Feature { - public FleshSplatterFeature(Function, ? extends NoFeatureConfig> deserializer) + public FleshSplatterFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/HeathFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/HeathFeature.java index 047410789..47b559a69 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/HeathFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/HeathFeature.java @@ -16,7 +16,7 @@ import java.util.function.Function; public class HeathFeature extends Feature { - public HeathFeature(Function, ? extends NoFeatureConfig> deserializer) + public HeathFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/HugeGlowshroomFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/HugeGlowshroomFeature.java index 7bd31ffbc..64e9cc789 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/HugeGlowshroomFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/HugeGlowshroomFeature.java @@ -22,7 +22,7 @@ public class HugeGlowshroomFeature extends Feature protected IBlockPosQuery placeOn = (world, pos) -> world.getBlockState(pos).getBlock() == Blocks.GRASS_BLOCK || world.getBlockState(pos).getBlock() == Blocks.MYCELIUM; protected IBlockPosQuery replace = (world, pos) -> world.getBlockState(pos).canBeReplacedByLeaves(world, pos) || world.getBlockState(pos).getBlock() instanceof BushBlock; - public HugeGlowshroomFeature(Function, ? extends NoFeatureConfig> deserializer) + public HugeGlowshroomFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/HugeToadstoolFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/HugeToadstoolFeature.java index f838be2a7..abaa4b7d8 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/HugeToadstoolFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/HugeToadstoolFeature.java @@ -22,7 +22,7 @@ public class HugeToadstoolFeature extends Feature protected IBlockPosQuery placeOn = (world, pos) -> world.getBlockState(pos).getBlock() == Blocks.GRASS_BLOCK || world.getBlockState(pos).getBlock() == Blocks.MYCELIUM; protected IBlockPosQuery replace = (world, pos) -> world.getBlockState(pos).canBeReplacedByLeaves(world, pos) || world.getBlockState(pos).getBlock() instanceof BushBlock; - public HugeToadstoolFeature(Function, ? extends NoFeatureConfig> deserializer) + public HugeToadstoolFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/MangroveFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/MangroveFeature.java index e35a59bbe..c3e9aca22 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/MangroveFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/MangroveFeature.java @@ -19,7 +19,7 @@ import java.util.function.Function; public class MangroveFeature extends Feature { - public MangroveFeature(Function, ? extends NoFeatureConfig> deserializer) + public MangroveFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/MyceliumSplatterFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/MyceliumSplatterFeature.java index e6f89efda..e4776ead8 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/MyceliumSplatterFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/MyceliumSplatterFeature.java @@ -15,7 +15,7 @@ import java.util.function.Function; public class MyceliumSplatterFeature extends Feature { - public MyceliumSplatterFeature(Function, ? extends NoFeatureConfig> deserializer) + public MyceliumSplatterFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/NetherVinesFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/NetherVinesFeature.java index 15bda6ed4..9d0ab5685 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/NetherVinesFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/NetherVinesFeature.java @@ -25,7 +25,7 @@ public class NetherVinesFeature extends Feature int minHeight = 8; int maxHeight = 20; - public NetherVinesFeature(Function, ? extends NoFeatureConfig> deserializer) + public NetherVinesFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/NetherWartFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/NetherWartFeature.java index ec1633e00..3c9c5253b 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/NetherWartFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/NetherWartFeature.java @@ -15,7 +15,7 @@ import java.util.function.Function; public class NetherWartFeature extends Feature { - public NetherWartFeature(Function, ? extends NoFeatureConfig> deserializer) + public NetherWartFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/PodzolSplatterFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/PodzolSplatterFeature.java index 6ea6e114c..53c747e25 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/PodzolSplatterFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/PodzolSplatterFeature.java @@ -16,7 +16,7 @@ import java.util.function.Function; public class PodzolSplatterFeature extends Feature { - public PodzolSplatterFeature(Function, ? extends NoFeatureConfig> deserializer) + public PodzolSplatterFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/PumpkinPatchFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/PumpkinPatchFeature.java index 5e2e91af3..f57f64edb 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/PumpkinPatchFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/PumpkinPatchFeature.java @@ -17,7 +17,7 @@ import java.util.function.Function; public class PumpkinPatchFeature extends Feature { - public PumpkinPatchFeature(Function, ? extends NoFeatureConfig> deserializer) + public PumpkinPatchFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/ScatteredRocksFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/ScatteredRocksFeature.java index 7b39c968a..2349a570f 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/ScatteredRocksFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/ScatteredRocksFeature.java @@ -14,7 +14,7 @@ import java.util.function.Function; public class ScatteredRocksFeature extends Feature { - public ScatteredRocksFeature(Function, ? extends NoFeatureConfig> deserializer) + public ScatteredRocksFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/ScrubFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/ScrubFeature.java index ccdc67e05..97234fcf9 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/ScrubFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/ScrubFeature.java @@ -15,7 +15,7 @@ import java.util.function.Function; public class ScrubFeature extends Feature { - public ScrubFeature(Function, ? extends NoFeatureConfig> deserializer) + public ScrubFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/ShortBambooFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/ShortBambooFeature.java index c47545a3a..c723a1700 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/ShortBambooFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/ShortBambooFeature.java @@ -26,7 +26,7 @@ public class ShortBambooFeature extends Feature private static final BlockState field_214568_aT = field_214566_a.setValue(BambooBlock.LEAVES, BambooLeaves.LARGE).setValue(BambooBlock.STAGE, Integer.valueOf(1)); private static final BlockState field_214569_aU = field_214566_a.setValue(BambooBlock.LEAVES, BambooLeaves.SMALL).setValue(BambooBlock.STAGE, Integer.valueOf(1)); - public ShortBambooFeature(Function, ? extends NoFeatureConfig> deserializer) + public ShortBambooFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/SmallBrownMushroomFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/SmallBrownMushroomFeature.java index fde8d8597..a1ec7f590 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/SmallBrownMushroomFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/SmallBrownMushroomFeature.java @@ -18,7 +18,7 @@ public class SmallBrownMushroomFeature extends Feature protected IBlockPosQuery placeOn = (world, pos) -> world.getBlockState(pos).getBlock() == Blocks.GRASS_BLOCK || world.getBlockState(pos).getBlock() == Blocks.MYCELIUM; protected IBlockPosQuery replace = (world, pos) -> world.getBlockState(pos).canBeReplacedByLeaves(world, pos) || world.getBlockState(pos).getBlock() instanceof BushBlock; - public SmallBrownMushroomFeature(Function, ? extends NoFeatureConfig> deserializer) + public SmallBrownMushroomFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/SmallGlowshroomFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/SmallGlowshroomFeature.java index 30acaa895..63e1550fb 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/SmallGlowshroomFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/SmallGlowshroomFeature.java @@ -22,7 +22,7 @@ public class SmallGlowshroomFeature extends Feature protected IBlockPosQuery placeOn = (world, pos) -> world.getBlockState(pos).getBlock() == Blocks.GRASS_BLOCK || world.getBlockState(pos).getBlock() == Blocks.MYCELIUM; protected IBlockPosQuery replace = (world, pos) -> world.getBlockState(pos).canBeReplacedByLeaves(world, pos) || world.getBlockState(pos).getBlock() instanceof BushBlock; - public SmallGlowshroomFeature(Function, ? extends NoFeatureConfig> deserializer) + public SmallGlowshroomFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/SmallRedMushroomFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/SmallRedMushroomFeature.java index cbb842f2b..109f4120d 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/SmallRedMushroomFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/SmallRedMushroomFeature.java @@ -21,7 +21,7 @@ public class SmallRedMushroomFeature extends Feature protected IBlockPosQuery placeOn = (world, pos) -> world.getBlockState(pos).getBlock() == Blocks.GRASS_BLOCK || world.getBlockState(pos).getBlock() == Blocks.MYCELIUM; protected IBlockPosQuery replace = (world, pos) -> world.getBlockState(pos).canBeReplacedByLeaves(world, pos) || world.getBlockState(pos).getBlock() instanceof BushBlock; - public SmallRedMushroomFeature(Function, ? extends NoFeatureConfig> deserializer) + public SmallRedMushroomFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/SmallToadstoolFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/SmallToadstoolFeature.java index b0b24febb..d19d0dbbb 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/SmallToadstoolFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/SmallToadstoolFeature.java @@ -22,7 +22,7 @@ public class SmallToadstoolFeature extends Feature protected IBlockPosQuery placeOn = (world, pos) -> world.getBlockState(pos).getBlock() == Blocks.GRASS_BLOCK || world.getBlockState(pos).getBlock() == Blocks.MYCELIUM; protected IBlockPosQuery replace = (world, pos) -> world.getBlockState(pos).canBeReplacedByLeaves(world, pos) || world.getBlockState(pos).getBlock() instanceof BushBlock; - public SmallToadstoolFeature(Function, ? extends NoFeatureConfig> deserializer) + public SmallToadstoolFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/StandardGrassFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/StandardGrassFeature.java index 267e0d677..f255f83d0 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/StandardGrassFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/StandardGrassFeature.java @@ -8,6 +8,7 @@ package biomesoplenty.common.world.gen.feature; import com.mojang.datafixers.Dynamic; +import com.mojang.serialization.Codec; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; import net.minecraft.tags.BlockTags; @@ -22,8 +23,8 @@ import java.util.Random; import java.util.function.Function; public class StandardGrassFeature extends Feature -{ - public StandardGrassFeature(Function, ? extends NoFeatureConfig> deserializer) +{Codec + public StandardGrassFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/VolcanoSurfaceBuilder.java b/src/main/java/biomesoplenty/common/world/gen/feature/VolcanoSurfaceBuilder.java index a6486a6c8..dbed9c8ad 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/VolcanoSurfaceBuilder.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/VolcanoSurfaceBuilder.java @@ -7,7 +7,7 @@ ******************************************************************************/ package biomesoplenty.common.world.gen.feature; -import com.mojang.datafixers.Dynamic; +import com.mojang.serialization.Codec; import net.minecraft.block.BlockState; import net.minecraft.world.biome.Biome; import net.minecraft.world.chunk.IChunk; @@ -15,11 +15,10 @@ import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder; import net.minecraft.world.gen.surfacebuilders.SurfaceBuilderConfig; import java.util.Random; -import java.util.function.Function; public class VolcanoSurfaceBuilder extends SurfaceBuilder { - public VolcanoSurfaceBuilder(Function, ? extends SurfaceBuilderConfig> deserializer) + public VolcanoSurfaceBuilder(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/WastelandGrassFeature.java b/src/main/java/biomesoplenty/common/world/gen/feature/WastelandGrassFeature.java index 53162c86a..5c39d62cb 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/WastelandGrassFeature.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/WastelandGrassFeature.java @@ -23,7 +23,7 @@ import java.util.function.Function; public class WastelandGrassFeature extends Feature { - public WastelandGrassFeature(Function, ? extends NoFeatureConfig> deserializer) + public WastelandGrassFeature(Codec deserializer) { super(deserializer); } diff --git a/src/main/java/biomesoplenty/init/ModBiomes.java b/src/main/java/biomesoplenty/init/ModBiomes.java index 5f5134106..cd8673ad5 100644 --- a/src/main/java/biomesoplenty/init/ModBiomes.java +++ b/src/main/java/biomesoplenty/init/ModBiomes.java @@ -179,7 +179,7 @@ public class ModBiomes registerVanillaBiome(Biomes.BADLANDS_PLATEAU, BOPClimates.HOT_DESERT, 10); registerVanillaBiome(Biomes.WOODED_BADLANDS_PLATEAU, BOPClimates.HOT_DESERT, 3); - registerVanillaBiome(Biomes.NETHER, BOPClimates.NETHER, 10); + registerVanillaBiome(Biomes.NETHER_WASTES, BOPClimates.NETHER, 10); BiomeRegistry.configureVanillaBiomes(); BiomeRegistry.finalizeRegistrations(BiomeRegistry.RegistrationType.VANILLA_BIOME);