From 382fc4a90cf323156434523d04911dbec4881e6a Mon Sep 17 00:00:00 2001 From: Forstride Date: Tue, 22 Sep 2020 16:41:31 -0400 Subject: [PATCH] Finished up feature overhaul stuff --- .../common/biome/overworld/BayouBiome.java | 2 +- .../common/biome/overworld/BogBiome.java | 2 +- .../biome/overworld/BorealForestBiome.java | 2 +- .../biome/overworld/BrushlandBiome.java | 2 +- .../biome/overworld/ChaparralBiome.java | 4 +- .../overworld/CherryBlossomGroveBiome.java | 4 +- .../biome/overworld/DeadForestBiome.java | 2 +- .../biome/overworld/FloodplainBiome.java | 2 +- .../biome/overworld/FlowerMeadowBiome.java | 2 +- .../common/biome/overworld/GroveBiome.java | 4 +- .../biome/overworld/HighlandMoorBiome.java | 4 +- .../biome/overworld/LushGrasslandBiome.java | 4 +- .../biome/overworld/LushSwampBiome.java | 4 +- .../common/biome/overworld/MangroveBiome.java | 2 +- .../biome/overworld/MapleWoodsBiome.java | 2 +- .../common/biome/overworld/MeadowBiome.java | 6 +- .../common/biome/overworld/MireBiome.java | 2 +- .../common/biome/overworld/MuskegBiome.java | 2 +- .../biome/overworld/MysticGroveBiome.java | 2 +- .../common/biome/overworld/OasisBiome.java | 2 +- .../biome/overworld/OminousWoodsBiome.java | 4 +- .../common/biome/overworld/OrchardBiome.java | 4 +- .../common/biome/overworld/OutbackBiome.java | 2 +- .../biome/overworld/OvergrownCliffsBiome.java | 4 +- .../biome/overworld/PoppyFieldBiome.java | 1 + .../common/biome/overworld/PrairieBiome.java | 2 +- .../biome/overworld/PumpkinPatchBiome.java | 2 +- .../biome/overworld/RainbowValleyBiome.java | 4 +- .../biome/overworld/RainforestBiome.java | 4 +- .../biome/overworld/RedwoodForestBiome.java | 2 +- .../overworld/RedwoodForestEdgeBiome.java | 2 +- .../biome/overworld/ScrublandBiome.java | 2 +- .../biome/overworld/SeasonalForestBiome.java | 2 +- .../common/biome/overworld/ShieldBiome.java | 2 +- .../biome/overworld/ShrublandBiome.java | 2 +- .../biome/overworld/SilkgladeBiome.java | 2 +- .../biome/overworld/SnowyForestBiome.java | 2 +- .../overworld/TemperateRainforestBiome.java | 2 +- .../TemperateRainforestHillsBiome.java | 2 +- .../biome/overworld/TropicBeachBiome.java | 2 +- .../overworld/TropicalRainforestBiome.java | 4 +- .../common/biome/overworld/TropicsBiome.java | 4 +- .../common/biome/overworld/TundraBiome.java | 2 +- .../biome/overworld/VolcanicPlainsBiome.java | 2 +- .../biome/overworld/WastelandBiome.java | 4 +- .../common/biome/overworld/WetlandBiome.java | 4 +- .../common/biome/overworld/WoodlandBiome.java | 4 +- .../biome/overworld/XericShrublandBiome.java | 4 +- .../gen/feature/BOPConfiguredFeatures.java | 176 +++++++++++++++--- 49 files changed, 213 insertions(+), 96 deletions(-) diff --git a/src/main/java/biomesoplenty/common/biome/overworld/BayouBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/BayouBiome.java index ed1e39907..2cd6d006c 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/BayouBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/BayouBiome.java @@ -64,7 +64,7 @@ public class BayouBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.CYPRESS_TREE_MEDIUM.configured(Features.OAK.config()).weighted(0.3F)), BOPFeatures.CYPRESS_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.6F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BAYOU_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_12); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_8); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/BogBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/BogBiome.java index a2241ebf2..e5a1d4b51 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/BogBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/BogBiome.java @@ -65,7 +65,7 @@ public class BogBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.SPRUCE_TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.4F), BOPFeatures.MAPLE_TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.6F)), BOPFeatures.TWIGLET_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.4F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BOG_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_50); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_10); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/BorealForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/BorealForestBiome.java index c2e3a5bbb..2b056b918 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/BorealForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/BorealForestBiome.java @@ -65,7 +65,7 @@ public class BorealForestBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.BIG_OAK_TREE.configured(Features.OAK.config()).weighted(0.075F), Feature.TREE.configured(Features.OAK.config()).weighted(0.15F), BOPFeatures.YELLOW_POPLAR_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.YELLOW_AUTUMN_TREE.configured(Features.OAK.config()).weighted(0.15F)), BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.4F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BOREAL_FOREST_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_5); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/BrushlandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/BrushlandBiome.java index a393c5c72..14bd98625 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/BrushlandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/BrushlandBiome.java @@ -66,7 +66,7 @@ public class BrushlandBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.4F), BOPFeatures.DYING_TREE.configured(Features.OAK.config()).weighted(0.1F), BOPFeatures.SPARSE_OAK_TREE.configured(Features.OAK.config()).weighted(0.2F)), BOPFeatures.ACACIA_TWIGLET_SMALL.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.4F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BRUSHLAND_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_15); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_5); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ChaparralBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ChaparralBiome.java index d674d4354..7171ace8f 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ChaparralBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ChaparralBiome.java @@ -61,8 +61,8 @@ public class ChaparralBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(12, 0.3F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.CHAPARRAL_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(17))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CHAPARRAL_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CHAPARRAL_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_5); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/CherryBlossomGroveBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/CherryBlossomGroveBiome.java index 690f483de..e15aee029 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/CherryBlossomGroveBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/CherryBlossomGroveBiome.java @@ -61,8 +61,8 @@ public class CherryBlossomGroveBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.WHITE_CHERRY_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_002))).weighted(0.1F), BOPFeatures.PINK_CHERRY_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_002))).weighted(0.2F), BOPFeatures.BIG_WHITE_CHERRY_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.FLOWERING_OAK_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_002))).weighted(0.15F), BOPFeatures.FLOWERING_BUSH.configured(Features.OAK.config()).weighted(0.3F)), BOPFeatures.BIG_PINK_CHERRY_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.3F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.CHERRY_BLOSSOM_GROVE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CHERRY_BLOSSOM_GROVE_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CHERRY_BLOSSOM_GROVE_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_4); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_5); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/DeadForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/DeadForestBiome.java index 62276b534..6d28ea095 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/DeadForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/DeadForestBiome.java @@ -61,7 +61,7 @@ public class DeadForestBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.DYING_TREE.configured(Features.OAK.config()).weighted(0.2F), BOPFeatures.DEAD_TREE.configured(Features.OAK.config()).weighted(0.1F), BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.SMALL_DEAD_TREE.configured(Features.OAK.config()).weighted(0.3F)), Feature.TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.5F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_FOREST_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/FloodplainBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/FloodplainBiome.java index 628ce9572..0752d1754 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/FloodplainBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/FloodplainBiome.java @@ -65,7 +65,7 @@ public class FloodplainBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.SPARSE_OAK_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.BIG_OAK_TREE.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.3F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FLOODPLAIN_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_15); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/FlowerMeadowBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/FlowerMeadowBiome.java index e78d05e80..2df1adf2f 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/FlowerMeadowBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/FlowerMeadowBiome.java @@ -59,7 +59,7 @@ public class FlowerMeadowBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_005))).weighted(0.1F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.3F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FLOWER_MEADOW_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FLOWER_MEADOW_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_2); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/GroveBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/GroveBiome.java index 5eb0b1158..ea7345c9a 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/GroveBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/GroveBiome.java @@ -65,8 +65,8 @@ public class GroveBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.SPARSE_OAK_TREE.configured(Features.OAK.config()).weighted(0.05F), BOPFeatures.DARK_OAK_POPLAR.configured(Features.OAK.config()).weighted(0.2F), BOPFeatures.SPRUCE_POPLAR.configured(Features.OAK.config()).weighted(0.4F), BOPFeatures.FLOWERING_BUSH.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.5F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.EXTENDED_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GROVE_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GROVE_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_15); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PEONY_1); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/HighlandMoorBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/HighlandMoorBiome.java index 8568654d3..9ce44e196 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/HighlandMoorBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/HighlandMoorBiome.java @@ -60,8 +60,8 @@ public class HighlandMoorBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.MOOR_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.VIOLET_FEATURE.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(50))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MOOR_FLOWERS); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MOOR_FLOWERS_2); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_EXTRA); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/LushGrasslandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/LushGrasslandBiome.java index 11ff7565f..b892e9fe0 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/LushGrasslandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/LushGrasslandBiome.java @@ -63,8 +63,8 @@ public class LushGrasslandBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.SMALL_JUNGLE_TREE.configured(Features.OAK.config()).weighted(0.1F), Feature.TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_0002))).weighted(0.2F), BOPFeatures.PALM_TREE.configured(Features.OAK.config()).weighted(0.05F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.95F, 0.6F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.LUSH_GRASSLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LUSH_GRASSLAND_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LUSH_GRASSLAND_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_5); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/LushSwampBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/LushSwampBiome.java index 5f1cfc44e..244ac90ef 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/LushSwampBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/LushSwampBiome.java @@ -63,8 +63,8 @@ public class LushSwampBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_SWAMP_TREE.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.1F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.LUSH_SWAMP_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LUSH_SWAMP_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LUSH_SWAMP_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLUE_HYDRANGEA_1); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_6); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MangroveBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MangroveBiome.java index eb2858687..79543b49b 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MangroveBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MangroveBiome.java @@ -65,7 +65,7 @@ public class MangroveBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.BUSH.configured(Features.OAK.config()).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(15, 0.3F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MANGROVE_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MANGROVE_ROOTS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MapleWoodsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MapleWoodsBiome.java index 01c01f349..6f1b6065b 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MapleWoodsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MapleWoodsBiome.java @@ -62,7 +62,7 @@ public class MapleWoodsBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config()).weighted(0.2F), BOPFeatures.BIG_MAPLE_TREE.configured(Features.OAK.config()).weighted(0.05F)), BOPFeatures.MAPLE_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(20, 0.15F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MAPLE_WOODS_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SNOWY_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MeadowBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MeadowBiome.java index 8732c550e..270f44909 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MeadowBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MeadowBiome.java @@ -65,9 +65,9 @@ public class MeadowBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_002))).weighted(0.25F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.1F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.MEADOW_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.FLOWER_MEADOW_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MEADOW_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MEADOW_FLOWERS); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MEADOW_FLOWERS_2); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_1); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_1); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MireBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MireBiome.java index 071d3fa5b..93693e3b5 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MireBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MireBiome.java @@ -69,7 +69,7 @@ public class MireBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.DARK_OAK_TWIGLET_TREE.configured(Features.OAK.config()).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.1F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MIRE_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_BROWN_MUSHROOM_EXTRA); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PODZOL_SPLATTER); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MuskegBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MuskegBiome.java index 83bbc2cc8..6b7215484 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MuskegBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MuskegBiome.java @@ -70,7 +70,7 @@ public class MuskegBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.DARK_OAK_TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.4F), BOPFeatures.DEAD_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.DYING_TREE.configured(Features.OAK.config()).weighted(0.075F), BOPFeatures.DEAD_TWIGLET_TREE_TALL.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.DEAD_TWIGLET_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.2F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MUSKEG_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_10); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_NORMAL); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/MysticGroveBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/MysticGroveBiome.java index 87d0fce19..e62c7ef2f 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/MysticGroveBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/MysticGroveBiome.java @@ -68,7 +68,7 @@ public class MysticGroveBiome extends BiomeTemplate // Vegetation builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MYSTIC_GROVE_TREES); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.MYSTIC_GROVE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(18))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MYSTIC_GROVE_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLUE_HYDRANGEA_4); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_RED_MUSHROOM_EXTRA); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OasisBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OasisBiome.java index cd1f9c30e..5b9ec6ff5 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OasisBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OasisBiome.java @@ -58,7 +58,7 @@ public class OasisBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.PALM_TREE.configured(Features.OAK.config()).weighted(0.3F)), BOPFeatures.OASIS_JUNGLE_TWIGLET_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.2F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OASIS_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_10); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DUNE_GRASS_20); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OminousWoodsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OminousWoodsBiome.java index 49e31f8b9..ebc80adf8 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OminousWoodsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OminousWoodsBiome.java @@ -68,8 +68,8 @@ public class OminousWoodsBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.DEAD_TREE.configured(Features.OAK.config()).weighted(0.05F), BOPFeatures.DYING_TREE.configured(Features.OAK.config()).weighted(0.15F), BOPFeatures.WILLOW_TREE.configured(Features.OAK.config()).weighted(0.15F), BOPFeatures.TALL_UMBRAN_TREE.configured(Features.OAK.config()).weighted(0.7F)), BOPFeatures.UMBRAN_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(7, 0.5F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.OMINOUS_WOODS_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OMINOUS_WOODS_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OMINOUS_WOODS_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BRAMBLE); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_2); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OrchardBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OrchardBiome.java index 63e694756..4f89e2ed2 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OrchardBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OrchardBiome.java @@ -57,8 +57,8 @@ public class OrchardBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPConfiguredFeatures.BIG_FLOWERING_OAK_TREE.weighted(0.1F)), BOPConfiguredFeatures.FLOWERING_OAK_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.3F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.EXTENDED_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(15))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ORCHARD_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ORCHARD_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_1); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_5); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OutbackBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OutbackBiome.java index f3f8e81f3..534de6db8 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OutbackBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OutbackBiome.java @@ -67,7 +67,7 @@ public class OutbackBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.ACACIA_BUSH.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.ACACIA_TWIGLET_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.5F, 0.3F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OUTBACK_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_5); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_CACTUS_DESERT); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/OvergrownCliffsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/OvergrownCliffsBiome.java index 2969e69b8..576686079 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/OvergrownCliffsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/OvergrownCliffsBiome.java @@ -64,8 +64,8 @@ public class OvergrownCliffsBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.JUNGLE_TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.MAHOGANY_TREE.configured(Features.OAK.config()).weighted(0.01F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(18, 0.4F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.JUNGLE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OVERGROWN_CLIFFS_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.JUNGLE_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_25); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/PoppyFieldBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/PoppyFieldBiome.java index 8e9344b92..e173d4093 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/PoppyFieldBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/PoppyFieldBiome.java @@ -60,6 +60,7 @@ public class PoppyFieldBiome extends BiomeTemplate // Vegetation builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.POPPY_FIELD_FLOWERS); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_15); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_50); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/PrairieBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/PrairieBiome.java index 1afaf7115..af5b4072a 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/PrairieBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/PrairieBiome.java @@ -60,7 +60,7 @@ public class PrairieBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.BIG_OAK_TREE.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.SPARSE_OAK_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.85F, 0.3F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PRAIRIE_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CONIFEROUS_FOREST_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GOLDENROD_8); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/PumpkinPatchBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/PumpkinPatchBiome.java index 1ce750dd6..f22ce7a4c 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/PumpkinPatchBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/PumpkinPatchBiome.java @@ -60,7 +60,7 @@ public class PumpkinPatchBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.BUSH.configured(Features.OAK.config()).weighted(0.2F)), BOPFeatures.TWIGLET_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.5F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PUMPKIN_PATCH_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BIG_PUMPKIN); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_10); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/RainbowValleyBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/RainbowValleyBiome.java index 1e35d610c..2fdf6eda7 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/RainbowValleyBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/RainbowValleyBiome.java @@ -59,8 +59,8 @@ public class RainbowValleyBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.BUSH.configured(Features.OAK.config()).weighted(0.2F), BOPFeatures.FIR_TREE_SMALL.configured(Features.OAK.config()).weighted(0.1F), BOPFeatures.FIR_TREE.configured(Features.OAK.config()).weighted(0.025F), BOPFeatures.BIG_RAINBOW_BIRCH_TREE.configured(Features.OAK.config()).weighted(0.2F)), BOPFeatures.RAINBOW_BIRCH_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_005))))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(15, 0.5F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.RAINBOW_VALLEY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(25))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINBOW_VALLEY_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINBOW_VALLEY_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLUE_HYDRANGEA_4); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GOLDENROD_2); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/RainforestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/RainforestBiome.java index 2c96a8faf..801345107 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/RainforestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/RainforestBiome.java @@ -62,8 +62,8 @@ public class RainforestBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Feature.TREE.configured(Features.BIRCH.config).weighted(0.1F), BOPFeatures.BIG_OAK_TREE.configured(Features.OAK.config()).weighted(0.4F)), Feature.TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.5F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.RAINFOREST_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PEONY_1); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestBiome.java index 11ee545df..8a3c5071b 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestBiome.java @@ -61,7 +61,7 @@ public class RedwoodForestBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.REDWOOD_TREE.configured(Features.OAK.config()).weighted(0.1F), BOPFeatures.REDWOOD_TREE_MEDIUM.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.REDWOOD_TREE_LARGE.configured(Features.OAK.config()).weighted(0.5F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(18, 0.2F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REDWOOD_FOREST_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestEdgeBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestEdgeBiome.java index 2873a59db..3bbd07f86 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestEdgeBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/RedwoodForestEdgeBiome.java @@ -58,7 +58,7 @@ public class RedwoodForestEdgeBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.REDWOOD_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.REDWOOD_TREE_MEDIUM.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.3F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REDWOOD_FOREST_EDGE_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_8); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ScrublandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ScrublandBiome.java index 1d9c2c0c9..94a7c3130 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ScrublandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ScrublandBiome.java @@ -62,7 +62,7 @@ public class ScrublandBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.SPRUCE_TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.TALL_TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.ACACIA_TWIGLET.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.5F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUBLAND_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_EXTRA); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SeasonalForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SeasonalForestBiome.java index 9b0fc74f0..f897204b6 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SeasonalForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SeasonalForestBiome.java @@ -64,7 +64,7 @@ public class SeasonalForestBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.BIG_OAK_TREE.configured(Features.OAK.config()).weighted(0.05F), BOPFeatures.DYING_TREE.configured(Features.OAK.config()).weighted(0.1F), BOPFeatures.MAPLE_TREE.configured(Features.OAK.config()).weighted(0.2F), BOPFeatures.YELLOW_AUTUMN_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.BIG_MAPLE_TREE.configured(Features.OAK.config()).weighted(0.1F), BOPFeatures.BIG_YELLOW_AUTUMN_TREE.configured(Features.OAK.config()).weighted(0.1F), BOPFeatures.BIG_ORANGE_AUTUMN_TREE.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.ORANGE_AUTUMN_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.3F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SEASONAL_FOREST_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_5); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ShieldBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ShieldBiome.java index 9fecfed58..3bac96331 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ShieldBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ShieldBiome.java @@ -65,7 +65,7 @@ public class ShieldBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.BUSH.configured(Features.OAK.config()).weighted(0.3F)), BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(6, 0.1F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHIELD_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_6); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/ShrublandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/ShrublandBiome.java index 98ee51501..17d2577c3 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/ShrublandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/ShrublandBiome.java @@ -67,7 +67,7 @@ public class ShrublandBiome extends BiomeTemplate // Vegetation builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHRUBLAND_TREES); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.SHRUBLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHRUBLAND_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_10); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_1); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SilkgladeBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SilkgladeBiome.java index ed0b13687..ea249090b 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SilkgladeBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SilkgladeBiome.java @@ -64,7 +64,7 @@ public class SilkgladeBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Features.SWAMP_TREE.weighted(0.05F), BOPFeatures.BIRCH_POPLAR.configured(Features.OAK.config()).weighted(0.15F), BOPFeatures.COBWEB_BUSH.configured(Features.OAK.config()).weighted(0.2F), BOPFeatures.SMALL_DEAD_TREE.configured(Features.OAK.config()).weighted(0.5F), BOPFeatures.SILK_TREE.configured(Features.OAK.config()).weighted(0.2F), BOPFeatures.FULL_COBWEB_BUSH.configured(Features.OAK.config()).weighted(0.05F), BOPFeatures.FULL_SILK_TREE.configured(Features.OAK.config()).weighted(0.05F)), BOPFeatures.BUSH.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.4F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SILKGLADE_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_NORMAL); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/SnowyForestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/SnowyForestBiome.java index c6e0e3451..dacbb7752 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/SnowyForestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/SnowyForestBiome.java @@ -61,7 +61,7 @@ public class SnowyForestBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.DYING_TREE.configured(Features.OAK.config()).weighted(0.2F)), Feature.TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.2F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SNOWY_FOREST_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SNOWY_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestBiome.java index 85432d029..92d13570c 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestBiome.java @@ -67,7 +67,7 @@ public class TemperateRainforestBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPConfiguredFeatures.TALL_SWAMP_TREE.weighted(0.15F), BOPFeatures.BIG_OAK_TREE.configured(Features.OAK.config()).weighted(0.1F), BOPFeatures.SEQUOIA_TREE.configured(Features.OAK.config()).weighted(0.5F)), BOPFeatures.SEQUOIA_TREE_LARGE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(4, 0.2F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TEMPERATE_RAINFOREST_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_12); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestHillsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestHillsBiome.java index fda539aff..d25d8e0cd 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestHillsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TemperateRainforestHillsBiome.java @@ -63,7 +63,7 @@ public class TemperateRainforestHillsBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.SEQUOIA_TREE.configured(Features.OAK.config()).weighted(0.5F)), BOPFeatures.SEQUOIA_TREE_LARGE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(8, 0.2F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TEMPERATE_RAINFOREST_HILLS_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_8); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TropicBeachBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TropicBeachBiome.java index 5e8b25729..5012a707c 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TropicBeachBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TropicBeachBiome.java @@ -56,7 +56,7 @@ public class TropicBeachBiome extends BiomeTemplate DefaultBiomeFeatures.addDefaultOres(builder); // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.TROPICS_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(15))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TROPIC_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEA_PICKLE); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TropicalRainforestBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TropicalRainforestBiome.java index 0a687313f..fad53df60 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TropicalRainforestBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TropicalRainforestBiome.java @@ -66,8 +66,8 @@ public class TropicalRainforestBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Feature.TREE.configured(Features.JUNGLE_TREE.config).weighted(0.1F)), BOPFeatures.MAHOGANY_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(12, 0.3F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.JUNGLE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TROPICAL_RAINFOREST_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.JUNGLE_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_7); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TropicsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TropicsBiome.java index bb26dab8a..e6a3ac1b6 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TropicsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TropicsBiome.java @@ -64,8 +64,8 @@ public class TropicsBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.JUNGLE_TWIGLET_TREE.configured(Features.OAK.config()).weighted(0.3F), BOPFeatures.FLOWERING_BUSH.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.PALM_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(11, 0.2F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.TROPICS_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(15))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TROPICS_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TROPIC_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLUE_HYDRANGEA_4); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_1); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/TundraBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/TundraBiome.java index a892a4bac..ab4d842bc 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/TundraBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/TundraBiome.java @@ -66,7 +66,7 @@ public class TundraBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.DEAD_TWIGLET_TREE_SMALL.configured(Features.OAK.config()).weighted(0.1F)), BOPFeatures.MAPLE_TWIGLET_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.3F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TUNDRA_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_4); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_5); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/VolcanicPlainsBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/VolcanicPlainsBiome.java index 19ac33644..4e7d06ecc 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/VolcanicPlainsBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/VolcanicPlainsBiome.java @@ -59,7 +59,7 @@ public class VolcanicPlainsBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.TWIGLET_TREE_VOLCANO.configured(Features.OAK.config()).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.1F, 1)))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.VOLCANIC_PLAINS_TREES); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLACK_SANDSTONE_COLUMN); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_200); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/WastelandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/WastelandBiome.java index 71a7bab4c..d18bc3aaa 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/WastelandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/WastelandBiome.java @@ -60,8 +60,8 @@ public class WastelandBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.DEAD_TREE_WASTELAND.configured(Features.OAK.config()).weighted(0.2F)), BOPFeatures.DYING_TREE_WASTELAND.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.75F, 0.1F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.WASTELAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(1))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_GRASS_2); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/WetlandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/WetlandBiome.java index b81757ade..c6d7dbc65 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/WetlandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/WetlandBiome.java @@ -70,8 +70,8 @@ public class WetlandBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config()).weighted(0.5F)), BOPFeatures.WILLOW_TREE.configured(Features.OAK.config()))).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.1F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.WETLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WETLAND_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WETLAND_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_24); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/WoodlandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/WoodlandBiome.java index 87dd0953e..c57d27d50 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/WoodlandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/WoodlandBiome.java @@ -65,8 +65,8 @@ public class WoodlandBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.TREE.configured(Features.OAK.config()).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(7, 0.1F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.EXTENDED_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WOODLAND_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GROVE_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GOLDENROD_1); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_4); diff --git a/src/main/java/biomesoplenty/common/biome/overworld/XericShrublandBiome.java b/src/main/java/biomesoplenty/common/biome/overworld/XericShrublandBiome.java index 3f82c59e6..9a68d8e90 100644 --- a/src/main/java/biomesoplenty/common/biome/overworld/XericShrublandBiome.java +++ b/src/main/java/biomesoplenty/common/biome/overworld/XericShrublandBiome.java @@ -62,8 +62,8 @@ public class XericShrublandBiome extends BiomeTemplate //////////////////////////////////////////////////////////// // Vegetation - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.ACACIA_TWIGLET_SMALL.configured(Features.OAK.config()).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)1F, 0.1F, 1)))); - builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPFeatures.WILDFLOWER_FEATURE.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(1))); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.XERIC_SHRUBLAND_TREES); + builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.XERIC_SHRUBLAND_FLOWERS); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_2); builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_10); diff --git a/src/main/java/biomesoplenty/common/world/gen/feature/BOPConfiguredFeatures.java b/src/main/java/biomesoplenty/common/world/gen/feature/BOPConfiguredFeatures.java index 0380a6c0c..43e67e825 100644 --- a/src/main/java/biomesoplenty/common/world/gen/feature/BOPConfiguredFeatures.java +++ b/src/main/java/biomesoplenty/common/world/gen/feature/BOPConfiguredFeatures.java @@ -28,52 +28,168 @@ import net.minecraft.world.gen.placement.TopSolidRangeConfig; public class BOPConfiguredFeatures { // Trees - public static final ConfiguredFeature HELLBARK_TREE = register("hellbark_tree", BOPFeatures.HELLBARK_TREE.configured(Features.OAK.config())); - public static final ConfiguredFeature ORIGIN_TREE = register("origin_tree", BOPFeatures.ORIGIN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature ACACIA_BUSH = register("acacia_bush", BOPFeatures.ACACIA_BUSH.configured(Features.OAK.config())); + public static final ConfiguredFeature ACACIA_TWIGLET = register("acacia_twiglet", BOPFeatures.ACACIA_TWIGLET.configured(Features.OAK.config())); + public static final ConfiguredFeature ACACIA_TWIGLET_SMALL = register("acacia_twiglet_small", BOPFeatures.ACACIA_TWIGLET_SMALL.configured(Features.OAK.config())); + public static final ConfiguredFeature ACACIA_TWIGLET_TREE = register("acacia_twiglet_tree", BOPFeatures.ACACIA_TWIGLET_TREE.configured(Features.OAK.config())); public static final ConfiguredFeature ALPS_SPRUCE_TREE = register("alps_spruce_tree", BOPFeatures.ALPS_SPRUCE_TREE.configured(Features.OAK.config())); - public static final ConfiguredFeature FIR_TREE = register("fir_tree", BOPFeatures.FIR_TREE.configured(Features.OAK.config())); - public static final ConfiguredFeature FIR_TREE_SMALL = register("fir_tree_small", BOPFeatures.FIR_TREE_SMALL.configured(Features.OAK.config())); - public static final ConfiguredFeature FIR_TREE_LARGE = register("fir_tree_large", BOPFeatures.FIR_TREE_LARGE.configured(Features.OAK.config())); - public static final ConfiguredFeature FLOWERING_OAK_TREE = register("flowering_oak_tree", BOPFeatures.FLOWERING_OAK_TREE.configured(Features.OAK.config())); - public static final ConfiguredFeature FLOWERING_OAK_TREE_BEES = register("flowering_oak_tree_bees", BOPFeatures.FLOWERING_OAK_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_005)))); - public static final ConfiguredFeature GIANT_TREE = register("giant_tree", BOPFeatures.GIANT_TREE.configured(Features.OAK.config())); - public static final ConfiguredFeature JACARANDA_TREE = register("jacaranda_tree", BOPFeatures.JACARANDA_TREE.configured(Features.OAK.config())); - public static final ConfiguredFeature JACARANDA_TREE_BEES = register("jacaranda_tree_bees", BOPFeatures.JACARANDA_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_0002)))); - public static final ConfiguredFeature MAGIC_TREE = register("magic_tree", BOPFeatures.MAGIC_TREE.configured(Features.OAK.config())); - public static final ConfiguredFeature TALL_SWAMP_TREE = register("tall_swamp_tree", BOPFeatures.TALL_SWAMP_TREE.configured(Features.OAK.config())); - - // Big Trees - public static final ConfiguredFeature BIG_ORIGIN_TREE = register("big_origin_tree", BOPFeatures.BIG_ORIGIN_TREE.configured(Features.OAK.config())); public static final ConfiguredFeature BIG_FLOWERING_OAK_TREE = register("big_flowering_oak_tree", BOPFeatures.BIG_FLOWERING_OAK_TREE.configured(Features.OAK.config())); public static final ConfiguredFeature BIG_JACARANDA_TREE = register("big_jacaranda_tree", BOPFeatures.BIG_JACARANDA_TREE.configured(Features.OAK.config())); public static final ConfiguredFeature BIG_MAGIC_TREE = register("big_magic_tree", BOPFeatures.BIG_MAGIC_TREE.configured(Features.OAK.config())); - - // Bushes + public static final ConfiguredFeature BIG_MAPLE_TREE = register("big_maple_tree", BOPFeatures.BIG_MAPLE_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature BIG_OAK_TREE = register("big_oak_tree", BOPFeatures.BIG_OAK_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature BIG_ORANGE_AUTUMN_TREE = register("big_orange_autumn_tree", BOPFeatures.BIG_ORANGE_AUTUMN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature BIG_ORIGIN_TREE = register("big_origin_tree", BOPFeatures.BIG_ORIGIN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature BIG_PINK_CHERRY_TREE = register("big_pink_cherry_tree", BOPFeatures.BIG_PINK_CHERRY_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature BIG_RAINBOW_BIRCH_TREE = register("big_rainbow_birch_tree", BOPFeatures.BIG_RAINBOW_BIRCH_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature BIG_WHITE_CHERRY_TREE = register("big_white_cherry_tree", BOPFeatures.BIG_WHITE_CHERRY_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature BIG_YELLOW_AUTUMN_TREE = register("big_yellow_autumn_tree", BOPFeatures.BIG_YELLOW_AUTUMN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature BIRCH_POPLAR = register("birch_poplar", BOPFeatures.BIRCH_POPLAR.configured(Features.OAK.config())); public static final ConfiguredFeature BUSH = register("bush", BOPFeatures.BUSH.configured(Features.OAK.config())); - public static final ConfiguredFeature ACACIA_BUSH = register("acacia_bush", BOPFeatures.ACACIA_BUSH.configured(Features.OAK.config())); + public static final ConfiguredFeature COBWEB_BUSH = register("cobweb_bush", BOPFeatures.COBWEB_BUSH.configured(Features.OAK.config())); + public static final ConfiguredFeature CYPRESS_TREE = register("cypress_tree", BOPFeatures.CYPRESS_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature CYPRESS_TREE_MEDIUM = register("cypress_tree_medium", BOPFeatures.CYPRESS_TREE_MEDIUM.configured(Features.OAK.config())); + public static final ConfiguredFeature DARK_OAK_POPLAR = register("dark_oak_poplar", BOPFeatures.DARK_OAK_POPLAR.configured(Features.OAK.config())); + public static final ConfiguredFeature DARK_OAK_TWIGLET_TREE = register("dark_oak_twiglet_tree", BOPFeatures.DARK_OAK_TWIGLET_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature DEAD_TREE = register("dead_tree", BOPFeatures.DEAD_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature DEAD_TREE_WASTELAND = register("dead_tree_wasteland", BOPFeatures.DEAD_TREE_WASTELAND.configured(Features.OAK.config())); + public static final ConfiguredFeature DEAD_TWIGLET_TREE = register("dead_twiglet_tree", BOPFeatures.DEAD_TWIGLET_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature DEAD_TWIGLET_TREE_SMALL = register("dead_twiglet_tree_small", BOPFeatures.DEAD_TWIGLET_TREE_SMALL.configured(Features.OAK.config())); + public static final ConfiguredFeature DEAD_TWIGLET_TREE_TALL = register("dead_twiglet_tree_tall", BOPFeatures.DEAD_TWIGLET_TREE_TALL.configured(Features.OAK.config())); + public static final ConfiguredFeature DYING_TREE = register("dying_tree", BOPFeatures.DYING_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature DYING_TREE_WASTELAND = register("dying_tree_wasteland", BOPFeatures.DYING_TREE_WASTELAND.configured(Features.OAK.config())); + public static final ConfiguredFeature FIR_TREE = register("fir_tree", BOPFeatures.FIR_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature FIR_TREE_LARGE = register("fir_tree_large", BOPFeatures.FIR_TREE_LARGE.configured(Features.OAK.config())); + public static final ConfiguredFeature FIR_TREE_SMALL = register("fir_tree_small", BOPFeatures.FIR_TREE_SMALL.configured(Features.OAK.config())); + public static final ConfiguredFeature FLOWERING_BUSH = register("flowering_bush", BOPFeatures.FLOWERING_BUSH.configured(Features.OAK.config())); + public static final ConfiguredFeature FLOWERING_OAK_TREE = register("flowering_oak_tree", BOPFeatures.FLOWERING_OAK_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature FLOWERING_OAK_TREE_BEES = register("flowering_oak_tree_bees", BOPFeatures.FLOWERING_OAK_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_005)))); + public static final ConfiguredFeature FULL_COBWEB_BUSH = register("full_cobweb_bush", BOPFeatures.FULL_COBWEB_BUSH.configured(Features.OAK.config())); + public static final ConfiguredFeature FULL_SILK_TREE = register("full_silk_tree", BOPFeatures.FULL_SILK_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature GIANT_TREE = register("giant_tree", BOPFeatures.GIANT_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature HELLBARK_TREE = register("hellbark_tree", BOPFeatures.HELLBARK_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature JACARANDA_TREE = register("jacaranda_tree", BOPFeatures.JACARANDA_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature JACARANDA_TREE_BEES = register("jacaranda_tree_bees", BOPFeatures.JACARANDA_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_0002)))); + public static final ConfiguredFeature JUNGLE_TWIGLET_TREE = register("jungle_twiglet_tree", BOPFeatures.JUNGLE_TWIGLET_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature MAGIC_TREE = register("magic_tree", BOPFeatures.MAGIC_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature MAHOGANY_TREE = register("mahogany_tree", BOPFeatures.MAHOGANY_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature MAPLE_TREE = register("maple_tree", BOPFeatures.MAPLE_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature MAPLE_TWIGLET_TREE = register("maple_twiglet_tree", BOPFeatures.MAPLE_TWIGLET_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature OASIS_JUNGLE_TWIGLET_TREE = register("oasis_jungle_twiglet_tree", BOPFeatures.OASIS_JUNGLE_TWIGLET_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature ORANGE_AUTUMN_TREE = register("orange_autumn_tree", BOPFeatures.ORANGE_AUTUMN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature ORIGIN_TREE = register("origin_tree", BOPFeatures.ORIGIN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature PALM_TREE = register("palm_tree", BOPFeatures.PALM_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature PINK_CHERRY_TREE_BEES = register("pink_cherry_tree_bees", BOPFeatures.PINK_CHERRY_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_002)))); + public static final ConfiguredFeature RAINBOW_BIRCH_TREE = register("rainbow_birch_tree", BOPFeatures.RAINBOW_BIRCH_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_005)))); + public static final ConfiguredFeature REDWOOD_TREE = register("redwood_tree", BOPFeatures.REDWOOD_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature REDWOOD_TREE_LARGE = register("redwood_tree_large", BOPFeatures.REDWOOD_TREE_LARGE.configured(Features.OAK.config())); + public static final ConfiguredFeature REDWOOD_TREE_MEDIUM = register("redwood_tree_medium", BOPFeatures.REDWOOD_TREE_MEDIUM.configured(Features.OAK.config())); + public static final ConfiguredFeature SEQUOIA_TREE = register("sequoia_tree", BOPFeatures.SEQUOIA_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature SEQUOIA_TREE_LARGE = register("sequoia_tree_large", BOPFeatures.SEQUOIA_TREE_LARGE.configured(Features.OAK.config())); + public static final ConfiguredFeature SILK_TREE = register("silk_tree", BOPFeatures.SILK_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature SMALL_DEAD_TREE = register("small_dead_tree", BOPFeatures.SMALL_DEAD_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature SMALL_JUNGLE_TREE = register("small_jungle_tree", BOPFeatures.SMALL_JUNGLE_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature SPARSE_OAK_TREE = register("sparse_oak_tree", BOPFeatures.SPARSE_OAK_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature SPRUCE_POPLAR = register("spruce_poplar", BOPFeatures.SPRUCE_POPLAR.configured(Features.OAK.config())); + public static final ConfiguredFeature SPRUCE_TWIGLET_TREE = register("spruce_twiglet_tree", BOPFeatures.SPRUCE_TWIGLET_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature TALL_SPRUCE_TREE = register("tall_spruce_tree", BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature TALL_SPRUCE_TREE_BEES = register("tall_spruce_tree_bees", BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_005)))); + public static final ConfiguredFeature TALL_SWAMP_TREE = register("tall_swamp_tree", BOPFeatures.TALL_SWAMP_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature TALL_TWIGLET_TREE = register("tall_twiglet_tree", BOPFeatures.TALL_TWIGLET_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature TALL_UMBRAN_TREE = register("tall_umbran_tree", BOPFeatures.TALL_UMBRAN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature TWIGLET_TREE = register("twiglet_tree", BOPFeatures.TWIGLET_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature TWIGLET_TREE_VOLCANO = register("twiglet_tree_volcano", BOPFeatures.TWIGLET_TREE_VOLCANO.configured(Features.OAK.config())); + public static final ConfiguredFeature UMBRAN_TREE = register("umbran_tree", BOPFeatures.UMBRAN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature WHITE_CHERRY_TREE_BEES = register("white_cherry_tree_bees", BOPFeatures.WHITE_CHERRY_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_002)))); + public static final ConfiguredFeature WILLOW_TREE = register("willow_tree", BOPFeatures.WILLOW_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature YELLOW_AUTUMN_TREE = register("yellow_autumn_tree", BOPFeatures.YELLOW_AUTUMN_TREE.configured(Features.OAK.config())); + public static final ConfiguredFeature YELLOW_POPLAR_TREE = register("yellow_poplar_tree", BOPFeatures.YELLOW_POPLAR_TREE.configured(Features.OAK.config())); ///////////////////////////////////////////////////////////////////// // Biome Tree Listings - public static final ConfiguredFeature FUNGAL_JUNGLE_TREES = register("fungal_jungle_trees", BUSH.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.1F, 1)))); - public static final ConfiguredFeature SHRUBLAND_TREES = register("shrubland_trees", BUSH.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.05F, 1)))); - public static final ConfiguredFeature UNDERGROWTH_TREES = register("undergrowth_trees", HELLBARK_TREE.decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(35))); - public static final ConfiguredFeature ORIGIN_HILLS_TREES = register("origin_hills_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BIG_ORIGIN_TREE.weighted(0.1F)), ORIGIN_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.4F, 1)))); - public static final ConfiguredFeature CONIFEROUS_FOREST_TREES = register("coniferous_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FIR_TREE.weighted(0.33333334F)), FIR_TREE_LARGE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.1F, 1)))); - public static final ConfiguredFeature SNOWY_CONIFEROUS_FOREST_TREES = register("snowy_coniferous_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FIR_TREE.weighted(0.33333334F)), FIR_TREE_LARGE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(4, 0.1F, 1)))); - public static final ConfiguredFeature FIR_CLEARING_TREES = register("fir_clearing_trees", FIR_TREE_SMALL.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.1F, 1)))); public static final ConfiguredFeature ALPS_FOOTHILLS_TREES = register("alps_foothills_trees", ALPS_SPRUCE_TREE.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.1F, 1)))); - public static final ConfiguredFeature MYSTIC_GROVE_TREES = register("mystic_grove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(GIANT_TREE.weighted(0.01F), TALL_SWAMP_TREE.weighted(0.1F), BIG_FLOWERING_OAK_TREE.weighted(0.2F), JACARANDA_TREE.weighted(0.3F), BIG_MAGIC_TREE.weighted(0.3F)), MAGIC_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.5F, 1)))); + public static final ConfiguredFeature BAYOU_TREES = register("bayou_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(CYPRESS_TREE_MEDIUM.weighted(0.3F)), CYPRESS_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.6F, 1)))); + public static final ConfiguredFeature BOG_TREES = register("bog_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SPRUCE_TWIGLET_TREE.weighted(0.4F), MAPLE_TWIGLET_TREE.weighted(0.6F)), TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.4F, 1)))); + public static final ConfiguredFeature BOREAL_FOREST_TREES = register("boreal_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BIG_OAK_TREE.weighted(0.075F), Features.OAK.weighted(0.15F), YELLOW_POPLAR_TREE.weighted(0.3F), YELLOW_AUTUMN_TREE.weighted(0.15F)), TALL_SPRUCE_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.4F, 1)))); + public static final ConfiguredFeature BRUSHLAND_TREES = register("brushland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TWIGLET_TREE.weighted(0.4F), DYING_TREE.weighted(0.1F), SPARSE_OAK_TREE.weighted(0.2F)), ACACIA_TWIGLET_SMALL)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.4F, 1)))); + public static final ConfiguredFeature CHAPARRAL_TREES = register("chaparral_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TWIGLET_TREE.weighted(0.1F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(12, 0.3F, 1)))); + public static final ConfiguredFeature CHERRY_BLOSSOM_GROVE_TREES = register("cherry_blossom_grove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(WHITE_CHERRY_TREE_BEES.weighted(0.1F), PINK_CHERRY_TREE_BEES.weighted(0.2F), BIG_WHITE_CHERRY_TREE.weighted(0.3F), FLOWERING_OAK_TREE_BEES.weighted(0.15F), FLOWERING_BUSH.weighted(0.3F)), BIG_PINK_CHERRY_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.3F, 1)))); + public static final ConfiguredFeature CONIFEROUS_FOREST_TREES = register("coniferous_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FIR_TREE.weighted(0.33333334F)), FIR_TREE_LARGE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.1F, 1)))); + public static final ConfiguredFeature DEAD_FOREST_TREES = register("dead_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DYING_TREE.weighted(0.2F), DEAD_TREE.weighted(0.1F), TALL_SPRUCE_TREE.weighted(0.3F), SMALL_DEAD_TREE.weighted(0.3F)), Features.OAK)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.5F, 1)))); + public static final ConfiguredFeature FIR_CLEARING_TREES = register("fir_clearing_trees", FIR_TREE_SMALL.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.1F, 1)))); + public static final ConfiguredFeature FLOODPLAIN_TREES = register("floodplain_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SPARSE_OAK_TREE.weighted(0.3F), BIG_OAK_TREE.weighted(0.1F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.3F, 1)))); + public static final ConfiguredFeature FLOWER_MEADOW_TREES = register("flower_meadow_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SPRUCE_TREE_BEES.weighted(0.1F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.3F, 1)))); + public static final ConfiguredFeature FUNGAL_JUNGLE_TREES = register("fungal_jungle_trees", BUSH.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.1F, 1)))); + public static final ConfiguredFeature GROVE_TREES = register("grove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SPARSE_OAK_TREE.weighted(0.05F), DARK_OAK_POPLAR.weighted(0.2F), SPRUCE_POPLAR.weighted(0.4F), FLOWERING_BUSH.weighted(0.1F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.5F, 1)))); public static final ConfiguredFeature LAVENDER_FIELD_TREES = register("lavender_field_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FLOWERING_OAK_TREE_BEES.weighted(0.2F), BIG_FLOWERING_OAK_TREE.weighted(0.1F), BIG_JACARANDA_TREE.weighted(0.1F)), JACARANDA_TREE_BEES)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.2F, 1)))); + public static final ConfiguredFeature LUSH_GRASSLAND_TREES = register("lush_grassland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SMALL_JUNGLE_TREE.weighted(0.1F), Features.OAK_BEES_0002.weighted(0.2F), PALM_TREE.weighted(0.05F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.95F, 0.6F, 1)))); + public static final ConfiguredFeature LUSH_SWAMP_TREES = register("lush_swamp_trees", TALL_SWAMP_TREE.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.1F, 1)))); + public static final ConfiguredFeature MANGROVE_TREES = register("mangrove_trees", BUSH.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(15, 0.3F, 1)))); + public static final ConfiguredFeature MAPLE_WOODS_TREES = register("maple_woods_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SPRUCE_TREE.weighted(0.2F), BIG_MAPLE_TREE.weighted(0.05F)), MAPLE_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(20, 0.15F, 1)))); + public static final ConfiguredFeature MEADOW_TREES = register("meadow_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SPRUCE_TREE_BEES.weighted(0.25F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.1F, 1)))); + public static final ConfiguredFeature MIRE_TREES = register("mire_trees", DARK_OAK_TWIGLET_TREE.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.1F, 1)))); + public static final ConfiguredFeature MUSKEG_TREES = register("muskeg_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DARK_OAK_TWIGLET_TREE.weighted(0.4F), DEAD_TREE.weighted(0.3F), DYING_TREE.weighted(0.075F), DEAD_TWIGLET_TREE_TALL.weighted(0.1F)), DEAD_TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.2F, 1)))); + public static final ConfiguredFeature MYSTIC_GROVE_TREES = register("mystic_grove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(GIANT_TREE.weighted(0.01F), TALL_SWAMP_TREE.weighted(0.1F), BIG_FLOWERING_OAK_TREE.weighted(0.2F), JACARANDA_TREE.weighted(0.3F), BIG_MAGIC_TREE.weighted(0.3F)), MAGIC_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.5F, 1)))); + public static final ConfiguredFeature OASIS_TREES = register("oasis_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(PALM_TREE.weighted(0.3F)), OASIS_JUNGLE_TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.2F, 1)))); + public static final ConfiguredFeature OMINOUS_WOODS_TREES = register("ominous_woods_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DEAD_TREE.weighted(0.05F), DYING_TREE.weighted(0.15F), WILLOW_TREE.weighted(0.15F), TALL_UMBRAN_TREE.weighted(0.7F)), UMBRAN_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(7, 0.5F, 1)))); + public static final ConfiguredFeature ORCHARD_TREES = register("orchard_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BIG_FLOWERING_OAK_TREE.weighted(0.1F)), FLOWERING_OAK_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.3F, 1)))); + public static final ConfiguredFeature ORIGIN_HILLS_TREES = register("origin_hills_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BIG_ORIGIN_TREE.weighted(0.1F)), ORIGIN_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.4F, 1)))); + public static final ConfiguredFeature OUTBACK_TREES = register("outback_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(ACACIA_BUSH.weighted(0.1F)), ACACIA_TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.5F, 0.3F, 1)))); + public static final ConfiguredFeature OVERGROWN_CLIFFS_TREES = register("overgrown_cliffs_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(JUNGLE_TWIGLET_TREE.weighted(0.3F), MAHOGANY_TREE.weighted(0.01F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(18, 0.4F, 1)))); + public static final ConfiguredFeature PRAIRIE_TREES = register("prairie_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BIG_OAK_TREE.weighted(0.1F)), SPARSE_OAK_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.85F, 0.3F, 1)))); + public static final ConfiguredFeature PUMPKIN_PATCH_TREES = register("pumpkin_patch_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BUSH.weighted(0.2F)), TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.5F, 1)))); + public static final ConfiguredFeature RAINBOW_VALLEY_TREES = register("rainbow_valley_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BUSH.weighted(0.2F), FIR_TREE_SMALL.weighted(0.1F), FIR_TREE.weighted(0.025F), BIG_RAINBOW_BIRCH_TREE.weighted(0.2F)), RAINBOW_BIRCH_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(15, 0.5F, 1)))); + public static final ConfiguredFeature RAINFOREST_TREES = register("rainforest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Features.BIRCH.weighted(0.1F), BIG_OAK_TREE.weighted(0.4F)), Features.OAK)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.5F, 1)))); + public static final ConfiguredFeature REDWOOD_FOREST_EDGE_TREES = register("redwood_forest_edge_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(REDWOOD_TREE.weighted(0.3F), REDWOOD_TREE_MEDIUM.weighted(0.1F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.3F, 1)))); + public static final ConfiguredFeature REDWOOD_FOREST_TREES = register("redwood_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(REDWOOD_TREE.weighted(0.1F), REDWOOD_TREE_MEDIUM.weighted(0.3F), REDWOOD_TREE_LARGE.weighted(0.5F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(18, 0.2F, 1)))); + public static final ConfiguredFeature SCRUBLAND_TREES = register("scrubland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SPRUCE_TWIGLET_TREE.weighted(0.3F), TALL_TWIGLET_TREE.weighted(0.1F)), ACACIA_TWIGLET)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.5F, 1)))); + public static final ConfiguredFeature SEASONAL_FOREST_TREES = register("seasonal_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BIG_OAK_TREE.weighted(0.05F), DYING_TREE.weighted(0.1F), MAPLE_TREE.weighted(0.2F), YELLOW_AUTUMN_TREE.weighted(0.3F), BIG_MAPLE_TREE.weighted(0.1F), BIG_YELLOW_AUTUMN_TREE.weighted(0.1F), BIG_ORANGE_AUTUMN_TREE.weighted(0.1F)), ORANGE_AUTUMN_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.3F, 1)))); + public static final ConfiguredFeature SHIELD_TREES = register("shield_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BUSH.weighted(0.3F)), TALL_SPRUCE_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(6, 0.1F, 1)))); + public static final ConfiguredFeature SHRUBLAND_TREES = register("shrubland_trees", BUSH.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.05F, 1)))); + public static final ConfiguredFeature SILKGLADE_TREES = register("silkglade_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Features.SWAMP_TREE.weighted(0.05F), BIRCH_POPLAR.weighted(0.15F), COBWEB_BUSH.weighted(0.2F), SMALL_DEAD_TREE.weighted(0.5F), SILK_TREE.weighted(0.2F), FULL_COBWEB_BUSH.weighted(0.05F), FULL_SILK_TREE.weighted(0.05F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.4F, 1)))); + public static final ConfiguredFeature SNOWY_CONIFEROUS_FOREST_TREES = register("snowy_coniferous_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FIR_TREE.weighted(0.33333334F)), FIR_TREE_LARGE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(4, 0.1F, 1)))); + public static final ConfiguredFeature SNOWY_FOREST_TREES = register("snowy_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DYING_TREE.weighted(0.2F)), Features.OAK)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.2F, 1)))); + public static final ConfiguredFeature TEMPERATE_RAINFOREST_HILLS_TREES = register("temperate_rainforest_hills_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SEQUOIA_TREE.weighted(0.5F)), SEQUOIA_TREE_LARGE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(8, 0.2F, 1)))); + public static final ConfiguredFeature TEMPERATE_RAINFOREST_TREES = register("temperate_rainforest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SWAMP_TREE.weighted(0.15F), BIG_OAK_TREE.weighted(0.1F), SEQUOIA_TREE.weighted(0.5F)), SEQUOIA_TREE_LARGE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(4, 0.2F, 1)))); + public static final ConfiguredFeature TROPICAL_RAINFOREST_TREES = register("tropical_rainforest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Features.JUNGLE_TREE.weighted(0.1F)), MAHOGANY_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(12, 0.3F, 1)))); + public static final ConfiguredFeature TROPICS_TREES = register("tropics_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(JUNGLE_TWIGLET_TREE.weighted(0.3F), FLOWERING_BUSH.weighted(0.1F)), PALM_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(11, 0.2F, 1)))); + public static final ConfiguredFeature TUNDRA_TREES = register("tundra_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DEAD_TWIGLET_TREE_SMALL.weighted(0.1F)), MAPLE_TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.3F, 1)))); + public static final ConfiguredFeature UNDERGROWTH_TREES = register("undergrowth_trees", HELLBARK_TREE.decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(35))); + public static final ConfiguredFeature VOLCANIC_PLAINS_TREES = register("volcanic_plains_trees", TWIGLET_TREE_VOLCANO.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.1F, 1)))); + public static final ConfiguredFeature WASTELAND_TREES = register("wasteland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DEAD_TREE_WASTELAND.weighted(0.2F)), DYING_TREE_WASTELAND)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.75F, 0.1F, 1)))); + public static final ConfiguredFeature WETLAND_TREES = register("wetland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SPRUCE_TREE.weighted(0.5F)), WILLOW_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.1F, 1)))); + public static final ConfiguredFeature WOODLAND_TREES = register("woodland_trees", Features.OAK.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(7, 0.1F, 1)))); + public static final ConfiguredFeature XERIC_SHRUBLAND_TREES = register("xeric_shrubland_trees", ACACIA_TWIGLET_SMALL.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)1F, 0.1F, 1)))); // Biome Flower Listings - public static final ConfiguredFeature UNDERGROWTH_FLOWERS = register("undergrowth_flowers", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.burning_blossom.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(8))); + public static final ConfiguredFeature CHAPARRAL_FLOWERS = register("chaparral_flowers", BOPFeatures.CHAPARRAL_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(17))); + public static final ConfiguredFeature CHERRY_BLOSSOM_GROVE_FLOWERS = register("cherry_blossom_grove_flowers", BOPFeatures.CHERRY_BLOSSOM_GROVE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); public static final ConfiguredFeature CONIFEROUS_FOREST_FLOWERS = register("coniferous_forest_flowers", BOPFeatures.CONIFEROUS_FOREST_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(4))); - public static final ConfiguredFeature SNOWY_FLOWERS = register("snowy_flowers", BOPFeatures.SNOWY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); - public static final ConfiguredFeature ORIGIN_FLOWERS = register("origin_flowers", BOPFeatures.ORIGIN_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(4))); - public static final ConfiguredFeature LAVENDER_FIELD_FLOWERS = register("lavender_field_flowers", BOPFeatures.LAVENDER_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).decorated(FeatureUtil.denseCount(500))); public static final ConfiguredFeature FLOWER_MEADOW_FLOWERS = register("flower_meadow_flowers", BOPFeatures.FLOWER_MEADOW_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).decorated(FeatureUtil.denseCount(150))); + public static final ConfiguredFeature GROVE_FLOWERS = register("grove_flowers", BOPFeatures.EXTENDED_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); + public static final ConfiguredFeature JUNGLE_FLOWERS = register("jungle_flowers", BOPFeatures.JUNGLE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); + public static final ConfiguredFeature LAVENDER_FIELD_FLOWERS = register("lavender_field_flowers", BOPFeatures.LAVENDER_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).decorated(FeatureUtil.denseCount(500))); + public static final ConfiguredFeature LUSH_GRASSLAND_FLOWERS = register("lush_grassland_flowers", BOPFeatures.LUSH_GRASSLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); + public static final ConfiguredFeature LUSH_SWAMP_FLOWERS = register("lush_swamp_flowers", BOPFeatures.LUSH_SWAMP_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); + public static final ConfiguredFeature MEADOW_FLOWERS = register("meadow_flowers", BOPFeatures.MEADOW_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); + public static final ConfiguredFeature MEADOW_FLOWERS_2 = register("meadow_flowers_2", BOPFeatures.FLOWER_MEADOW_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + public static final ConfiguredFeature MOOR_FLOWERS = register("moor_flowers", BOPFeatures.MOOR_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5))); + public static final ConfiguredFeature MOOR_FLOWERS_2 = register("moor_flowers_2", BOPFeatures.VIOLET_FEATURE.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(50))); + public static final ConfiguredFeature MYSTIC_GROVE_FLOWERS = register("mystic_grove_flowers", BOPFeatures.MYSTIC_GROVE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(18))); + public static final ConfiguredFeature OMINOUS_WOODS_FLOWERS = register("ominous_woods_flowers", BOPFeatures.OMINOUS_WOODS_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + public static final ConfiguredFeature ORCHARD_FLOWERS = register("orchard_flowers", BOPFeatures.EXTENDED_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(15))); + public static final ConfiguredFeature ORIGIN_FLOWERS = register("origin_flowers", BOPFeatures.ORIGIN_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(4))); public static final ConfiguredFeature POPPY_FIELD_FLOWERS = register("poppy_field_flowers", BOPFeatures.POPPY_FEATURE.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).decorated(FeatureUtil.denseCount(500))); + public static final ConfiguredFeature RAINBOW_VALLEY_FLOWERS = register("rainbow_valley_flowers", BOPFeatures.RAINBOW_VALLEY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(25))); + public static final ConfiguredFeature RAINFOREST_FLOWERS = register("rainforest_flowers", BOPFeatures.RAINFOREST_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(6))); + public static final ConfiguredFeature SHRUBLAND_FLOWERS = register("shrubland_flowers", BOPFeatures.SHRUBLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + public static final ConfiguredFeature SNOWY_FLOWERS = register("snowy_flowers", BOPFeatures.SNOWY_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + public static final ConfiguredFeature TROPIC_FLOWERS = register("tropic_flowers", BOPFeatures.TROPICS_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(15))); + public static final ConfiguredFeature UNDERGROWTH_FLOWERS = register("undergrowth_flowers", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.burning_blossom.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(8))); + public static final ConfiguredFeature WASTELAND_FLOWERS = register("wasteland_flowers", BOPFeatures.WASTELAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(1))); + public static final ConfiguredFeature WETLAND_FLOWERS = register("wetland_flowers", BOPFeatures.WETLAND_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(3))); + public static final ConfiguredFeature XERIC_SHRUBLAND_FLOWERS = register("xeric_shrubland_flowers", BOPFeatures.WILDFLOWER_FEATURE.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(1))); /////////////////////////////////////////////////////////////////////