Private
Public Access
1
0

Implemented world gen data gen.

This commit is contained in:
2026-06-10 18:20:16 +01:00
parent cd5ff6c497
commit 8c4e39162b
5 changed files with 403 additions and 2 deletions

View File

@ -0,0 +1,189 @@
{
"type": "minecraft:flower",
"config": {
"feature": {
"feature": {
"type": "minecraft:simple_block",
"config": {
"to_place": {
"type": "minecraft:weighted_state_provider",
"entries": [
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "north",
"flower_amount": "1"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "east",
"flower_amount": "1"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "south",
"flower_amount": "1"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "west",
"flower_amount": "1"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "north",
"flower_amount": "2"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "east",
"flower_amount": "2"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "south",
"flower_amount": "2"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "west",
"flower_amount": "2"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "north",
"flower_amount": "3"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "east",
"flower_amount": "3"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "south",
"flower_amount": "3"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "west",
"flower_amount": "3"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "north",
"flower_amount": "4"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "east",
"flower_amount": "4"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "south",
"flower_amount": "4"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "west",
"flower_amount": "4"
}
},
"weight": 1
}
]
}
}
},
"placement": [
{
"type": "minecraft:block_predicate_filter",
"predicate": {
"type": "minecraft:matching_blocks",
"blocks": "minecraft:air"
}
}
]
},
"tries": 64,
"xz_spread": 6,
"y_spread": 2
}
}

View File

@ -0,0 +1,189 @@
{
"type": "minecraft:flower",
"config": {
"feature": {
"feature": {
"type": "minecraft:simple_block",
"config": {
"to_place": {
"type": "minecraft:weighted_state_provider",
"entries": [
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "north",
"flower_amount": "1"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "east",
"flower_amount": "1"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "south",
"flower_amount": "1"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "west",
"flower_amount": "1"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "north",
"flower_amount": "2"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "east",
"flower_amount": "2"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "south",
"flower_amount": "2"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "west",
"flower_amount": "2"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "north",
"flower_amount": "3"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "east",
"flower_amount": "3"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "south",
"flower_amount": "3"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "west",
"flower_amount": "3"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "north",
"flower_amount": "4"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "east",
"flower_amount": "4"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "south",
"flower_amount": "4"
}
},
"weight": 1
},
{
"data": {
"Name": "wildflowers_backport:wildflowers",
"Properties": {
"facing": "west",
"flower_amount": "4"
}
},
"weight": 1
}
]
}
}
},
"placement": [
{
"type": "minecraft:block_predicate_filter",
"predicate": {
"type": "minecraft:matching_blocks",
"blocks": "minecraft:air"
}
}
]
},
"tries": 8,
"xz_spread": 6,
"y_spread": 2
}
}

View File

@ -4,6 +4,7 @@ import dev.micle.wildflowers_backport.WildflowersBackport;
import dev.micle.wildflowers_backport.data.client.ModBlockStateProvider;
import dev.micle.wildflowers_backport.data.client.ModItemModelProvider;
import dev.micle.wildflowers_backport.data.server.ModLootTableProvider;
import dev.micle.wildflowers_backport.data.server.ModWorldGenProvider;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.DataGenerator;
import net.minecraftforge.common.data.ExistingFileHelper;
@ -25,5 +26,6 @@ public class DataGenerators {
generator.addProvider(event.includeClient(), new ModItemModelProvider(generator, existingFileHelper));
generator.addProvider(event.includeServer(), new ModLootTableProvider(generator));
generator.addProvider(event.includeServer(), new ModWorldGenProvider(generator, lookupProvider));
}
}

View File

@ -0,0 +1,21 @@
package dev.micle.wildflowers_backport.data.server;
import dev.micle.wildflowers_backport.WildflowersBackport;
import dev.micle.wildflowers_backport.worldgen.ModConfiguredFeatures;
import net.minecraft.core.HolderLookup;
import net.minecraft.core.RegistrySetBuilder;
import net.minecraft.core.registries.Registries;
import net.minecraft.data.DataGenerator;
import net.minecraftforge.common.data.DatapackBuiltinEntriesProvider;
import java.util.Set;
import java.util.concurrent.CompletableFuture;
public class ModWorldGenProvider extends DatapackBuiltinEntriesProvider {
public static final RegistrySetBuilder BUILDER = new RegistrySetBuilder()
.add(Registries.CONFIGURED_FEATURE, ModConfiguredFeatures::bootstrap);
public ModWorldGenProvider(DataGenerator generator, CompletableFuture<HolderLookup.Provider> registries) {
super(generator.getPackOutput(), registries, BUILDER, Set.of(WildflowersBackport.MOD_ID));
}
}

View File

@ -63,8 +63,8 @@ public class ModConfiguredFeatures {
private static SimpleWeightedRandomList<BlockState> createAllPossibleFlowerBedBlockEntries(Block block) {
SimpleWeightedRandomList.Builder<BlockState> builder = SimpleWeightedRandomList.<BlockState>builder();
for (Direction direction : Direction.Plane.HORIZONTAL) {
for (int i = FlowerBedBlock.MIN_SEGMENT; i <= FlowerBedBlock.MAX_SEGMENT; i++) {
for (Direction direction : Direction.Plane.HORIZONTAL) {
builder.add(block.defaultBlockState().setValue(FlowerBedBlock.FACING, direction).setValue(FlowerBedBlock.AMOUNT, i), 1);
}
}