From b8afbfc6881c0fe308b37cd69e61f15c0980a3a3 Mon Sep 17 00:00:00 2001 From: Frank Date: Tue, 16 May 2023 17:17:13 +0200 Subject: [PATCH] [Change] Added default biome type for `nullscape:void_barrens` to our default datapack. (#81) --- .../worldgen/betterx/biome/void_barrens.json | 10 +++++ .../betterx/datagen/bclib/BCLibDatagen.java | 4 ++ .../bclib/integrations/NullscapeBiomes.java | 43 +++++++++++++++++++ 3 files changed, 57 insertions(+) create mode 100644 src/main/generated/data/nullscape/worldgen/betterx/biome/void_barrens.json create mode 100644 src/main/java/org/betterx/datagen/bclib/integrations/NullscapeBiomes.java diff --git a/src/main/generated/data/nullscape/worldgen/betterx/biome/void_barrens.json b/src/main/generated/data/nullscape/worldgen/betterx/biome/void_barrens.json new file mode 100644 index 00000000..8369f2d6 --- /dev/null +++ b/src/main/generated/data/nullscape/worldgen/betterx/biome/void_barrens.json @@ -0,0 +1,10 @@ +{ + "type": "bclib:biome", + "biome": "nullscape:void_barrens", + "edgeSize": 0, + "fogDensity": 1.0, + "genChance": 1.0, + "intended_for": "END_VOID", + "terrainHeight": 0.1, + "vertical": false +} \ No newline at end of file diff --git a/src/main/java/org/betterx/datagen/bclib/BCLibDatagen.java b/src/main/java/org/betterx/datagen/bclib/BCLibDatagen.java index 84668b73..791cf852 100644 --- a/src/main/java/org/betterx/datagen/bclib/BCLibDatagen.java +++ b/src/main/java/org/betterx/datagen/bclib/BCLibDatagen.java @@ -3,6 +3,7 @@ package org.betterx.datagen.bclib; import org.betterx.bclib.BCLib; import org.betterx.datagen.bclib.advancement.BCLAdvancementDataProvider; import org.betterx.datagen.bclib.advancement.RecipeDataProvider; +import org.betterx.datagen.bclib.integrations.NullscapeBiomes; import org.betterx.datagen.bclib.preset.WorldPresetDataProvider; import org.betterx.datagen.bclib.tests.TestBiomes; import org.betterx.datagen.bclib.tests.TestWorldgenProvider; @@ -29,11 +30,14 @@ public class BCLibDatagen implements DataGeneratorEntrypoint { RecipeDataProvider.createTestRecipes(); } + NullscapeBiomes.ensureStaticallyLoaded(); + pack.addProvider(NullscapeBiomes::new); pack.addProvider(RecipeDataProvider::new); pack.addProvider(WorldPresetDataProvider::new); pack.addProvider(BCLibRegistriesDataProvider::new); pack.addProvider(BCLAdvancementDataProvider::new); + } diff --git a/src/main/java/org/betterx/datagen/bclib/integrations/NullscapeBiomes.java b/src/main/java/org/betterx/datagen/bclib/integrations/NullscapeBiomes.java new file mode 100644 index 00000000..99b9f569 --- /dev/null +++ b/src/main/java/org/betterx/datagen/bclib/integrations/NullscapeBiomes.java @@ -0,0 +1,43 @@ +package org.betterx.datagen.bclib.integrations; + +import org.betterx.bclib.api.v2.levelgen.biomes.BCLBiome; +import org.betterx.bclib.api.v2.levelgen.biomes.BCLBiomeRegistry; +import org.betterx.bclib.api.v2.levelgen.biomes.BiomeAPI; +import org.betterx.bclib.api.v3.datagen.TagDataProvider; +import org.betterx.worlds.together.tag.v3.TagManager; + +import net.minecraft.core.HolderLookup; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.biome.Biome; + +import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; +import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider; + +import java.util.List; +import java.util.concurrent.CompletableFuture; + +public class NullscapeBiomes extends TagDataProvider { + + /** + * Constructs a new {@link FabricTagProvider} with the default computed path. + * + *

Common implementations of this class are provided. + * + * @param output the {@link FabricDataOutput} instance + * @param registriesFuture the backing registry for the tag type + */ + public NullscapeBiomes( + FabricDataOutput output, + CompletableFuture registriesFuture + ) { + super(TagManager.BIOMES, List.of("nullscape"), output, registriesFuture); + } + + + public static void ensureStaticallyLoaded() { + BCLBiomeRegistry.register(new BCLBiome( + new ResourceLocation("nullscape", "void_barrens"), + BiomeAPI.BiomeType.END_VOID + )); + } +}