From 11cb8752667d447ba68b8354742923d509e9b40f Mon Sep 17 00:00:00 2001 From: Maxx <53229958+MBatt1@users.noreply.github.com> Date: Mon, 12 Aug 2024 08:54:27 -0500 Subject: [PATCH] tree placed features --- .../ParadiseLostMiscPlacedFeatures.java | 2 + .../ParadiseLostPlacedFeatures.java | 6 +- .../ParadiseLostTreePlacedFeatures.java | 81 +++++-------------- .../fallen_lavender_leaves.json | 28 +++++++ .../placed_feature/fallen_leaves.json | 28 +++++++ .../placed_feature/fallen_rose_leaves.json | 28 +++++++ .../placed_feature/mottled_fallen_log.json | 28 +++++++ .../mottled_hollow_fallen_log.json | 28 +++++++ .../placed_feature/shield_hollow_stumps.json | 28 +++++++ .../placed_feature/shield_stumps.json | 28 +++++++ .../placed_feature/thicket_fallen_log.json | 28 +++++++ .../placed_feature/trees_dense_shield.json | 35 ++++++++ .../worldgen/placed_feature/trees_mixed.json | 35 ++++++++ .../placed_feature/trees_plateau.json | 35 ++++++++ .../placed_feature/trees_rainbow_forest.json | 35 ++++++++ .../placed_feature/trees_scattered.json | 35 ++++++++ .../worldgen/placed_feature/trees_shield.json | 35 ++++++++ .../worldgen/placed_feature/trees_sparse.json | 35 ++++++++ .../placed_feature/trees_thicket.json | 35 ++++++++ .../trees_thicket_mother_aurel.json | 23 ++++++ 20 files changed, 553 insertions(+), 63 deletions(-) create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_lavender_leaves.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_leaves.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_rose_leaves.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/mottled_fallen_log.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/mottled_hollow_fallen_log.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/shield_hollow_stumps.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/shield_stumps.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/thicket_fallen_log.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_dense_shield.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_mixed.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_plateau.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_rainbow_forest.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_scattered.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_shield.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_sparse.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_thicket.json create mode 100644 src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_thicket_mother_aurel.json diff --git a/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostMiscPlacedFeatures.java b/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostMiscPlacedFeatures.java index c218e31e3..80e87a021 100644 --- a/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostMiscPlacedFeatures.java +++ b/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostMiscPlacedFeatures.java @@ -2,9 +2,11 @@ import net.id.paradiselost.world.feature.configured_features.ParadiseLostMiscConfiguredFeatures; import net.id.paradiselost.world.feature.placement_modifiers.ChancePlacementModifier; +import net.minecraft.registry.RegistryKey; import net.minecraft.util.math.intprovider.UniformIntProvider; import net.minecraft.world.Heightmap; import net.minecraft.world.gen.YOffset; +import net.minecraft.world.gen.feature.ConfiguredFeature; import net.minecraft.world.gen.feature.PlacedFeature; import net.minecraft.world.gen.feature.PlacedFeatures; import net.minecraft.world.gen.placementmodifier.*; diff --git a/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostPlacedFeatures.java b/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostPlacedFeatures.java index 305147016..1447b4322 100644 --- a/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostPlacedFeatures.java +++ b/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostPlacedFeatures.java @@ -3,6 +3,8 @@ import net.id.paradiselost.world.feature.configured_features.ParadiseLostTreeConfiguredFeatures; import net.minecraft.block.Blocks; import net.minecraft.fluid.Fluids; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; import net.minecraft.util.math.Vec3i; @@ -34,8 +36,8 @@ public class ParadiseLostPlacedFeatures { // for ease of familiarity with how 1.17 did it. static final PlacementModifier SPREAD_32_ABOVE = HeightRangePlacementModifier.uniform(YOffset.aboveBottom(32), YOffset.getTop()); - static RegistryEntry register(String id, RegistryEntry> feature, PlacementModifier... modifiers) { - return BuiltinRegistries.add(BuiltinRegistries.PLACED_FEATURE, locate(id), new PlacedFeature(RegistryEntry.upcast(feature), List.of(modifiers))); + public static RegistryKey of(String id) { + return RegistryKey.of(RegistryKeys.PLACED_FEATURE, locate(id)); } public static void init() { diff --git a/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostTreePlacedFeatures.java b/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostTreePlacedFeatures.java index b28fe90be..2008b6df0 100644 --- a/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostTreePlacedFeatures.java +++ b/src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostTreePlacedFeatures.java @@ -1,75 +1,34 @@ package net.id.paradiselost.world.feature.placed_features; -import net.id.paradiselost.world.feature.configured_features.ParadiseLostTreeConfiguredFeatures; -import net.id.paradiselost.world.feature.placement_modifiers.ChancePlacementModifier; -import net.minecraft.block.Block; -import net.minecraft.registry.entry.RegistryEntry; -import net.minecraft.util.math.intprovider.UniformIntProvider; -import net.minecraft.world.Heightmap; -import net.minecraft.world.gen.blockpredicate.BlockPredicate; +import net.minecraft.registry.RegistryKey; import net.minecraft.world.gen.feature.*; -import net.minecraft.world.gen.placementmodifier.BlockFilterPlacementModifier; -import net.minecraft.world.gen.placementmodifier.CountMultilayerPlacementModifier; -import net.minecraft.world.gen.placementmodifier.CountPlacementModifier; -import net.minecraft.world.gen.placementmodifier.HeightmapPlacementModifier; -import net.minecraft.world.gen.placementmodifier.PlacementModifier; - -import java.util.List; - -import static net.id.paradiselost.blocks.ParadiseLostBlocks.*; public class ParadiseLostTreePlacedFeatures extends ParadiseLostPlacedFeatures { - public static final List PARADISE_LOST_GROUND = List.of( - HIGHLANDS_GRASS, FLOESTONE, MOSSY_FLOESTONE, DIRT, COARSE_DIRT, PERMAFROST - ); - /* - Highlands - */ - // Default - public static final RegistryEntry AUREL_TREE = register("aurel_tree", ParadiseLostTreeConfiguredFeatures.AUREL_TREE, placed(AUREL_WOODSTUFF.sapling())); - public static final RegistryEntry MOTHER_AUREL_TREE = register("mother_aurel_tree", ParadiseLostTreeConfiguredFeatures.MOTHER_AUREL_TREE, placed(MOTHER_AUREL_WOODSTUFF.sapling())); - public static final RegistryEntry ORANGE_TREE = register("orange_tree", ParadiseLostTreeConfiguredFeatures.ORANGE_TREE, placed(ORANGE_WOODSTUFF.sapling())); - // Wisteria - public static final RegistryEntry ROSE_WISTERIA_TREE = register("rose_wisteria_tree", ParadiseLostTreeConfiguredFeatures.ROSE_WISTERIA_TREE, placed(ROSE_WISTERIA_SAPLING)); - public static final RegistryEntry LAVENDER_WISTERIA_TREE = register("lavender_wisteria_tree", ParadiseLostTreeConfiguredFeatures.LAVENDER_WISTERIA_TREE, placed(LAVENDER_WISTERIA_SAPLING)); - public static final RegistryEntry FROST_WISTERIA_TREE = register("frost_wisteria_tree", ParadiseLostTreeConfiguredFeatures.FROST_WISTERIA_TREE, placed(FROST_WISTERIA_SAPLING)); - // Fancy - public static final RegistryEntry FANCY_ROSE_WISTERIA_TREE = register("fancy_rose_wisteria_tree", ParadiseLostTreeConfiguredFeatures.FANCY_ROSE_WISTERIA_TREE, placed(ROSE_WISTERIA_SAPLING)); - public static final RegistryEntry FANCY_LAVENDER_WISTERIA_TREE = register("fancy_lavender_wisteria_tree", ParadiseLostTreeConfiguredFeatures.FANCY_LAVENDER_WISTERIA_TREE, placed(LAVENDER_WISTERIA_SAPLING)); - public static final RegistryEntry FANCY_FROST_WISTERIA_TREE = register("fancy_frost_wisteria_tree", ParadiseLostTreeConfiguredFeatures.FANCY_FROST_WISTERIA_TREE, placed(FROST_WISTERIA_SAPLING)); - public static final RegistryEntry FANCY_AUREL_TREE = register("fancy_aurel_tree", ParadiseLostTreeConfiguredFeatures.FANCY_AUREL_TREE, placed(AUREL_WOODSTUFF.sapling())); // Tree Assortments - public static final RegistryEntry SCATTERED_TREES = register("scattered_trees", ParadiseLostTreeConfiguredFeatures.SCATTERED_TREES, CountMultilayerPlacementModifier.of(6), CountPlacementModifier.of(UniformIntProvider.create(0, 6))); - public static final RegistryEntry SHIELD_TREES = register("shield_trees", ParadiseLostTreeConfiguredFeatures.SHIELD_TREES, CountMultilayerPlacementModifier.of(5), CountPlacementModifier.of(UniformIntProvider.create(0, 6))); - public static final RegistryEntry DENSE_SHIELD_TREES = register("dense_shield_trees", ParadiseLostTreeConfiguredFeatures.DENSE_SHIELD_TREES, CountMultilayerPlacementModifier.of(12), ChancePlacementModifier.of(18)); - public static final RegistryEntry PLATEAU_TREES = register("plateau_trees", ParadiseLostTreeConfiguredFeatures.PLATEAU_TREES, ChancePlacementModifier.of(3), CountMultilayerPlacementModifier.of(1), CountPlacementModifier.of(UniformIntProvider.create(0, 1))); - public static final RegistryEntry MIXED_TREES = register("mixed_trees", ParadiseLostTreeConfiguredFeatures.MIXED_TREES, CountMultilayerPlacementModifier.of(1), ChancePlacementModifier.of(30)); - public static final RegistryEntry SPARSE_TREES = register("sparse_trees", ParadiseLostTreeConfiguredFeatures.SPARSE_TREES, CountMultilayerPlacementModifier.of(7), ChancePlacementModifier.of(100), CountPlacementModifier.of(UniformIntProvider.create(0, 2))); - public static final RegistryEntry THICKET_TREES = register("thicket_trees", ParadiseLostTreeConfiguredFeatures.THICKET_TREES, CountMultilayerPlacementModifier.of(6), CountPlacementModifier.of(UniformIntProvider.create(0, 3))); - public static final RegistryEntry THICKET_MOTHER_AUREL_TREES = register("thicket_mother_aurel_trees", ParadiseLostTreeConfiguredFeatures.THICKET_MOTHER_AUREL_TREES, CountMultilayerPlacementModifier.of(2), ChancePlacementModifier.of(30)); - public static final RegistryEntry RAINBOW_FOREST_TREES = register("wisteria_woods_trees", ParadiseLostTreeConfiguredFeatures.RAINBOW_FOREST_TREES, CountMultilayerPlacementModifier.of(17), CountPlacementModifier.of(UniformIntProvider.create(0, 4))); + public static final RegistryKey SCATTERED_TREES = of("trees_scattered"); + public static final RegistryKey SHIELD_TREES = of("trees_shield"); + public static final RegistryKey DENSE_SHIELD_TREES = of("trees_dense_shield"); + public static final RegistryKey PLATEAU_TREES = of("trees_plateau"); + public static final RegistryKey MIXED_TREES = of("trees_mixed"); + public static final RegistryKey SPARSE_TREES = of("trees_sparse"); + public static final RegistryKey THICKET_TREES = of("trees_thicket"); + public static final RegistryKey THICKET_MOTHER_AUREL_TREES = of("trees_thicket_mother_aurel"); + public static final RegistryKey RAINBOW_FOREST_TREES = of("trees_rainbow_forest"); + // Fallen leaves - public static final RegistryEntry FALLEN_LEAVES = register("fallen_leaves", ParadiseLostTreeConfiguredFeatures.FALLEN_LEAVES, SPREAD_32_ABOVE, PlacedFeatures.MOTION_BLOCKING_HEIGHTMAP, CountPlacementModifier.of(3), ChancePlacementModifier.of(5), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); - public static final RegistryEntry ALT_FALLEN_LEAVES = register("alt_fallen_leaves", ParadiseLostTreeConfiguredFeatures.FALLEN_LEAVES, SPREAD_32_ABOVE, PlacedFeatures.MOTION_BLOCKING_HEIGHTMAP, CountPlacementModifier.of(3), ChancePlacementModifier.of(5), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); + public static final RegistryKey FALLEN_LEAVES = of("fallen_leaves"); + public static final RegistryKey FALLEN_ROSE_LEAVES = of("fallen_rose_leaves"); + public static final RegistryKey FALLEN_LAVENDER_LEAVES = of("fallen_lavender_leaves"); - public static final RegistryEntry FALLEN_ROSE_LEAVES = register("fallen_rose_leaves", ParadiseLostTreeConfiguredFeatures.FALLEN_ROSE_LEAVES, PlacedFeatures.BOTTOM_TO_TOP_RANGE, ChancePlacementModifier.of(2), CountMultilayerPlacementModifier.of(1), CountPlacementModifier.of(UniformIntProvider.create(0, 3)), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); - public static final RegistryEntry FALLEN_LAVENDER_LEAVES = register("fallen_lavender_leaves", ParadiseLostTreeConfiguredFeatures.FALLEN_LAVENDER_LEAVES, PlacedFeatures.BOTTOM_TO_TOP_RANGE, ChancePlacementModifier.of(2), CountMultilayerPlacementModifier.of(1), CountPlacementModifier.of(UniformIntProvider.create(0, 3)), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); // Logs & Stumps - public static final RegistryEntry THICKET_FALLEN_LOG = register("thicket_fallen_log", ParadiseLostTreeConfiguredFeatures.THICKET_FALLEN_LOG, ChancePlacementModifier.of(3), CountMultilayerPlacementModifier.of(2), CountPlacementModifier.of(UniformIntProvider.create(0, 2)), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); - - public static final RegistryEntry MOTTLED_FALLEN_LOG = register("mottled_fallen_log", ParadiseLostTreeConfiguredFeatures.MOTTLED_FALLEN_LOG, ChancePlacementModifier.of(3), CountMultilayerPlacementModifier.of(1), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); - public static final RegistryEntry MOTTLED_HOLLOW_FALLEN_LOG = register("mottled_hollow_fallen_log", ParadiseLostTreeConfiguredFeatures.MOTTLED_HOLLOW_FALLEN_LOG, ChancePlacementModifier.of(3), CountMultilayerPlacementModifier.of(1), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); - - public static final RegistryEntry SHIELD_STUMPS = register("shield_stumps", ParadiseLostTreeConfiguredFeatures.SHIELD_STUMPS, CountMultilayerPlacementModifier.of(1), CountPlacementModifier.of(UniformIntProvider.create(0, 1)), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); - public static final RegistryEntry SHIELD_HOLLOW_STUMPS = register("shield_hollow_stumps", ParadiseLostTreeConfiguredFeatures.SHIELD_HOLLOW_STUMPS, CountMultilayerPlacementModifier.of(1), HeightmapPlacementModifier.of(Heightmap.Type.WORLD_SURFACE)); + public static final RegistryKey THICKET_FALLEN_LOG = of("thicket_fallen_log"); + public static final RegistryKey MOTTLED_FALLEN_LOG = of("mottled_fallen_log"); + public static final RegistryKey MOTTLED_HOLLOW_FALLEN_LOG = of("mottled_hollow_fallen_log"); - public static final RegistryEntry SHIELD_FALLEN_LEAVES = register("shield_fallen_leaves", ParadiseLostTreeConfiguredFeatures.SHIELD_FALLEN_LEAVES, PlacedFeatures.BOTTOM_TO_TOP_RANGE, CountMultilayerPlacementModifier.of(2), ChancePlacementModifier.of(4), CountPlacementModifier.of(UniformIntProvider.create(0, 3)), BlockFilterPlacementModifier.of(BlockPredicate.matchingBlocks(PARADISE_LOST_GROUND))); + public static final RegistryKey SHIELD_STUMPS = of("shield_stumps"); + public static final RegistryKey SHIELD_HOLLOW_STUMPS = of("shield_hollow_stumps"); - private static PlacementModifier placed(Block sapling) { - return PlacedFeatures.wouldSurvive(sapling); - } + public static void init() {} - public static void init() { - } } diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_lavender_leaves.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_lavender_leaves.json new file mode 100644 index 000000000..06ee59bb5 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_lavender_leaves.json @@ -0,0 +1,28 @@ +{ + "feature": "paradise_lost:fallen_lavender_leaves", + "placement": [ + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "above_bottom": 32 + } + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE" + }, + { + "type": "minecraft:count", + "count": 2 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_leaves.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_leaves.json new file mode 100644 index 000000000..fc79492ce --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_leaves.json @@ -0,0 +1,28 @@ +{ + "feature": "paradise_lost:fallen_leaves", + "placement": [ + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "above_bottom": 32 + } + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE" + }, + { + "type": "minecraft:count", + "count": 3 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_rose_leaves.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_rose_leaves.json new file mode 100644 index 000000000..483a3ae67 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/fallen_rose_leaves.json @@ -0,0 +1,28 @@ +{ + "feature": "paradise_lost:fallen_rose_leaves", + "placement": [ + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "above_bottom": 32 + } + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE" + }, + { + "type": "minecraft:count", + "count": 2 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/mottled_fallen_log.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/mottled_fallen_log.json new file mode 100644 index 000000000..be18312f3 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/mottled_fallen_log.json @@ -0,0 +1,28 @@ +{ + "feature": "paradise_lost:mottled_fallen_log", + "placement": [ + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "above_bottom": 32 + } + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE" + }, + { + "type": "minecraft:count", + "count": 2 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/mottled_hollow_fallen_log.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/mottled_hollow_fallen_log.json new file mode 100644 index 000000000..45ab07f42 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/mottled_hollow_fallen_log.json @@ -0,0 +1,28 @@ +{ + "feature": "paradise_lost:mottled_hollow_fallen_log", + "placement": [ + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "above_bottom": 32 + } + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE" + }, + { + "type": "minecraft:count", + "count": 2 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/shield_hollow_stumps.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/shield_hollow_stumps.json new file mode 100644 index 000000000..49288b00b --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/shield_hollow_stumps.json @@ -0,0 +1,28 @@ +{ + "feature": "paradise_lost:shield_hollow_stumps", + "placement": [ + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "above_bottom": 32 + } + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE" + }, + { + "type": "minecraft:count", + "count": 1 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/shield_stumps.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/shield_stumps.json new file mode 100644 index 000000000..709063790 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/shield_stumps.json @@ -0,0 +1,28 @@ +{ + "feature": "paradise_lost:shield_stumps", + "placement": [ + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "above_bottom": 32 + } + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE" + }, + { + "type": "minecraft:count", + "count": 1 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/thicket_fallen_log.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/thicket_fallen_log.json new file mode 100644 index 000000000..868dcb8d3 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/thicket_fallen_log.json @@ -0,0 +1,28 @@ +{ + "feature": "paradise_lost:thicket_fallen_log", + "placement": [ + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "above_bottom": 32 + } + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE" + }, + { + "type": "minecraft:count", + "count": 2 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_dense_shield.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_dense_shield.json new file mode 100644 index 000000000..8a1418342 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_dense_shield.json @@ -0,0 +1,35 @@ +{ + "feature": "paradise_lost:trees_dense_shield", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 11, + "weight": 9 + }, + { + "data": 12, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_mixed.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_mixed.json new file mode 100644 index 000000000..60ebe2079 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_mixed.json @@ -0,0 +1,35 @@ +{ + "feature": "paradise_lost:trees_mixed", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 0, + "weight": 15 + }, + { + "data": 1, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_plateau.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_plateau.json new file mode 100644 index 000000000..f22596ea1 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_plateau.json @@ -0,0 +1,35 @@ +{ + "feature": "paradise_lost:trees_plateau", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 0, + "weight": 10 + }, + { + "data": 1, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_rainbow_forest.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_rainbow_forest.json new file mode 100644 index 000000000..4579d5952 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_rainbow_forest.json @@ -0,0 +1,35 @@ +{ + "feature": "paradise_lost:trees_rainbow_forest", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 11, + "weight": 9 + }, + { + "data": 12, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_scattered.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_scattered.json new file mode 100644 index 000000000..34524cfc1 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_scattered.json @@ -0,0 +1,35 @@ +{ + "feature": "paradise_lost:trees_scattered", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 5, + "weight": 9 + }, + { + "data": 6, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_shield.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_shield.json new file mode 100644 index 000000000..8f42f6b79 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_shield.json @@ -0,0 +1,35 @@ +{ + "feature": "paradise_lost:trees_shield", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 3, + "weight": 5 + }, + { + "data": 5, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_sparse.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_sparse.json new file mode 100644 index 000000000..6570d3f49 --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_sparse.json @@ -0,0 +1,35 @@ +{ + "feature": "paradise_lost:trees_sparse", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 0, + "weight": 15 + }, + { + "data": 1, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_thicket.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_thicket.json new file mode 100644 index 000000000..f9a3a2fea --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_thicket.json @@ -0,0 +1,35 @@ +{ + "feature": "paradise_lost:trees_thicket", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 6, + "weight": 7 + }, + { + "data": 8, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_thicket_mother_aurel.json b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_thicket_mother_aurel.json new file mode 100644 index 000000000..a4f9efbda --- /dev/null +++ b/src/main/resources/data/paradise_lost/worldgen/placed_feature/trees_thicket_mother_aurel.json @@ -0,0 +1,23 @@ +{ + "feature": "paradise_lost:tree_mother_aurel", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 100 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file