convert 1.20.5-21.1 module to kotlin as much as possible
This commit is contained in:
parent
157feb8e05
commit
d0f31746dd
6 changed files with 277 additions and 230 deletions
|
@ -1,30 +1,25 @@
|
|||
package observer.nelle.roses.datagen;
|
||||
package observer.nelle.roses.datagen
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
|
||||
import net.minecraft.registry.RegistryWrapper;
|
||||
import net.minecraft.registry.tag.BlockTags;
|
||||
import observer.nelle.roses.RosesBlocks;
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider
|
||||
import net.minecraft.registry.RegistryWrapper
|
||||
import net.minecraft.registry.tag.BlockTags
|
||||
import observer.nelle.roses.RosesBlocks.cyanRoseBush
|
||||
import observer.nelle.roses.RosesBlocks.cyanRoseFlower
|
||||
import observer.nelle.roses.RosesBlocks.pottedCyan
|
||||
import observer.nelle.roses.RosesBlocks.pottedRose
|
||||
import observer.nelle.roses.RosesBlocks.roseFlower
|
||||
import java.util.concurrent.CompletableFuture
|
||||
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
class RosesBlockTagProvider(
|
||||
output: FabricDataOutput,
|
||||
registriesFuture: CompletableFuture<RegistryWrapper.WrapperLookup?>?,
|
||||
) : FabricTagProvider.BlockTagProvider(output, registriesFuture) {
|
||||
override fun configure(wrapperLookup: RegistryWrapper.WrapperLookup) {
|
||||
getOrCreateTagBuilder(BlockTags.TALL_FLOWERS).add(cyanRoseBush)
|
||||
|
||||
public class RosesBlockTagProvider extends FabricTagProvider.BlockTagProvider {
|
||||
public RosesBlockTagProvider(FabricDataOutput output, CompletableFuture<RegistryWrapper.WrapperLookup> registriesFuture) {
|
||||
super(output, registriesFuture);
|
||||
}
|
||||
getOrCreateTagBuilder(BlockTags.SMALL_FLOWERS).add(roseFlower).add(cyanRoseFlower)
|
||||
|
||||
@Override
|
||||
protected void configure(RegistryWrapper.WrapperLookup wrapperLookup) {
|
||||
getOrCreateTagBuilder(BlockTags.TALL_FLOWERS)
|
||||
.add(RosesBlocks.INSTANCE.getCyanRoseBush())
|
||||
;
|
||||
getOrCreateTagBuilder(BlockTags.SMALL_FLOWERS)
|
||||
.add(RosesBlocks.INSTANCE.getRoseFlower())
|
||||
.add(RosesBlocks.INSTANCE.getCyanRoseFlower())
|
||||
;
|
||||
getOrCreateTagBuilder(BlockTags.FLOWER_POTS)
|
||||
.add(RosesBlocks.INSTANCE.getPottedRose())
|
||||
.add(RosesBlocks.INSTANCE.getPottedCyan())
|
||||
;
|
||||
getOrCreateTagBuilder(BlockTags.FLOWER_POTS).add(pottedRose).add(pottedCyan)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,43 +1,58 @@
|
|||
package observer.nelle.roses.datagen;
|
||||
package observer.nelle.roses.datagen
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricBlockLootTableProvider;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.enchantment.Enchantments;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.loot.LootTable;
|
||||
import net.minecraft.loot.entry.ItemEntry;
|
||||
import net.minecraft.loot.function.ApplyBonusLootFunction;
|
||||
import net.minecraft.loot.function.SetCountLootFunction;
|
||||
import net.minecraft.loot.provider.number.UniformLootNumberProvider;
|
||||
import net.minecraft.registry.RegistryWrapper;
|
||||
import observer.nelle.roses.RosesBlocks;
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricBlockLootTableProvider
|
||||
import net.minecraft.block.Block
|
||||
import net.minecraft.block.Blocks
|
||||
import net.minecraft.enchantment.Enchantments
|
||||
import net.minecraft.loot.LootTable
|
||||
import net.minecraft.loot.entry.ItemEntry
|
||||
import net.minecraft.loot.function.ApplyBonusLootFunction
|
||||
import net.minecraft.loot.function.SetCountLootFunction
|
||||
import net.minecraft.loot.provider.number.UniformLootNumberProvider
|
||||
import net.minecraft.registry.RegistryWrapper
|
||||
import observer.nelle.roses.RosesBlocks.cyanRoseBush
|
||||
import observer.nelle.roses.RosesBlocks.cyanRoseFlower
|
||||
import observer.nelle.roses.RosesBlocks.pottedCyan
|
||||
import observer.nelle.roses.RosesBlocks.pottedRose
|
||||
import observer.nelle.roses.RosesBlocks.roseFlower
|
||||
import java.util.concurrent.CompletableFuture
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
class RosesLootTableProvider(
|
||||
dataOutput: FabricDataOutput?,
|
||||
registryLookup: CompletableFuture<RegistryWrapper.WrapperLookup?>?,
|
||||
) : FabricBlockLootTableProvider(dataOutput, registryLookup) {
|
||||
override fun generate() {
|
||||
addDrop(roseFlower)
|
||||
addDrop(cyanRoseFlower)
|
||||
|
||||
public class RosesLootTableProvider extends FabricBlockLootTableProvider {
|
||||
public RosesLootTableProvider(FabricDataOutput dataOutput, CompletableFuture<RegistryWrapper.WrapperLookup> registryLookup) {
|
||||
super(dataOutput, registryLookup);
|
||||
addPottedPlantDrops(pottedRose)
|
||||
addPottedPlantDrops(pottedCyan)
|
||||
|
||||
addDrop(
|
||||
Blocks.ROSE_BUSH,
|
||||
roseBushDrops(Blocks.ROSE_BUSH, roseFlower, 2.0f, 5.0f),
|
||||
)
|
||||
addDrop(
|
||||
cyanRoseBush,
|
||||
roseBushDrops(cyanRoseBush!!, cyanRoseFlower, 2.0f, 5.0f),
|
||||
)
|
||||
}
|
||||
|
||||
@Override
|
||||
public void generate() {
|
||||
addDrop(RosesBlocks.INSTANCE.getRoseFlower());
|
||||
addDrop(RosesBlocks.INSTANCE.getCyanRoseFlower());
|
||||
|
||||
addPottedPlantDrops(RosesBlocks.INSTANCE.getPottedRose());
|
||||
addPottedPlantDrops(RosesBlocks.INSTANCE.getPottedCyan());
|
||||
|
||||
addDrop(Blocks.ROSE_BUSH, roseBushDrops(Blocks.ROSE_BUSH, Objects.requireNonNull(RosesBlocks.INSTANCE.getRoseFlower()).asItem(), 2.0F, 5.0F));
|
||||
addDrop(RosesBlocks.INSTANCE.getCyanRoseBush(), roseBushDrops(RosesBlocks.INSTANCE.getCyanRoseBush(), Objects.requireNonNull(RosesBlocks.INSTANCE.getCyanRoseFlower()).asItem(), 2.0F, 5.0F));
|
||||
}
|
||||
|
||||
public LootTable.Builder roseBushDrops(Block input, Item output, Float min, Float max) {
|
||||
return dropsWithShears(input, this
|
||||
.applyExplosionDecay(input, ItemEntry.builder(output)
|
||||
private fun roseBushDrops(
|
||||
input: Block,
|
||||
output: Block?,
|
||||
min: Float,
|
||||
max: Float,
|
||||
): LootTable.Builder =
|
||||
dropsWithShears(
|
||||
input,
|
||||
this.applyExplosionDecay(
|
||||
input,
|
||||
ItemEntry
|
||||
.builder(output)
|
||||
.apply(SetCountLootFunction.builder(UniformLootNumberProvider.create(min, max)))
|
||||
.apply(ApplyBonusLootFunction.oreDrops(Enchantments.FORTUNE))));
|
||||
}
|
||||
.apply(ApplyBonusLootFunction.oreDrops(Enchantments.FORTUNE)),
|
||||
),
|
||||
)
|
||||
}
|
||||
|
|
|
@ -1,27 +1,47 @@
|
|||
package observer.nelle.roses.datagen;
|
||||
package observer.nelle.roses.datagen
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
|
||||
import net.minecraft.data.server.recipe.RecipeExporter;
|
||||
import net.minecraft.item.Items;
|
||||
import net.minecraft.recipe.book.RecipeCategory;
|
||||
import net.minecraft.registry.RegistryWrapper;
|
||||
import observer.nelle.roses.RosesBlocks;
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider
|
||||
import net.minecraft.data.server.recipe.RecipeExporter
|
||||
import net.minecraft.item.Items
|
||||
import net.minecraft.recipe.book.RecipeCategory
|
||||
import net.minecraft.registry.RegistryWrapper
|
||||
import observer.nelle.roses.RosesBlocks.cyanRoseBush
|
||||
import observer.nelle.roses.RosesBlocks.cyanRoseFlower
|
||||
import observer.nelle.roses.RosesBlocks.roseFlower
|
||||
import java.util.concurrent.CompletableFuture
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
class RosesRecipeProvider(
|
||||
output: FabricDataOutput?,
|
||||
registriesFuture: CompletableFuture<RegistryWrapper.WrapperLookup?>?,
|
||||
) : FabricRecipeProvider(output, registriesFuture) {
|
||||
override fun generate(recipeExporter: RecipeExporter) {
|
||||
offerShapelessRecipe(
|
||||
recipeExporter,
|
||||
Items.RED_DYE,
|
||||
roseFlower,
|
||||
"dye",
|
||||
2,
|
||||
)
|
||||
offerShapelessRecipe(
|
||||
recipeExporter,
|
||||
Items.CYAN_DYE,
|
||||
cyanRoseFlower,
|
||||
"dye",
|
||||
2,
|
||||
)
|
||||
|
||||
public class RosesRecipeProvider extends FabricRecipeProvider {
|
||||
public RosesRecipeProvider(FabricDataOutput output, CompletableFuture<RegistryWrapper.WrapperLookup> registriesFuture) {
|
||||
super(output, registriesFuture);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void generate(RecipeExporter recipeExporter) {
|
||||
offerShapelessRecipe(recipeExporter, Items.RED_DYE, Objects.requireNonNull(RosesBlocks.INSTANCE.getRoseFlower()), "dye", 2);
|
||||
offerShapelessRecipe(recipeExporter, Items.CYAN_DYE, Objects.requireNonNull(RosesBlocks.INSTANCE.getCyanRoseFlower()), "dye", 2);
|
||||
|
||||
offer2x2CompactingRecipe(recipeExporter, RecipeCategory.DECORATIONS, Items.ROSE_BUSH, RosesBlocks.INSTANCE.getRoseFlower());
|
||||
offer2x2CompactingRecipe(recipeExporter, RecipeCategory.DECORATIONS, Objects.requireNonNull(RosesBlocks.INSTANCE.getCyanRoseBush()).asItem(), RosesBlocks.INSTANCE.getCyanRoseFlower());
|
||||
offer2x2CompactingRecipe(
|
||||
recipeExporter,
|
||||
RecipeCategory.DECORATIONS,
|
||||
Items.ROSE_BUSH,
|
||||
roseFlower,
|
||||
)
|
||||
offer2x2CompactingRecipe(
|
||||
recipeExporter,
|
||||
RecipeCategory.DECORATIONS,
|
||||
cyanRoseBush,
|
||||
cyanRoseFlower,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,25 +1,22 @@
|
|||
package observer.nelle.roses.datagen;
|
||||
package observer.nelle.roses.datagen
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricDynamicRegistryProvider;
|
||||
import net.minecraft.registry.RegistryKeys;
|
||||
import net.minecraft.registry.RegistryWrapper;
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricDynamicRegistryProvider
|
||||
import net.minecraft.registry.RegistryKeys
|
||||
import net.minecraft.registry.RegistryWrapper
|
||||
import java.util.concurrent.CompletableFuture
|
||||
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
public class RosesRegistryGenerator extends FabricDynamicRegistryProvider {
|
||||
public RosesRegistryGenerator(FabricDataOutput output, CompletableFuture<RegistryWrapper.WrapperLookup> registriesFuture) {
|
||||
super(output, registriesFuture);
|
||||
class RosesRegistryGenerator(
|
||||
output: FabricDataOutput?,
|
||||
registriesFuture: CompletableFuture<RegistryWrapper.WrapperLookup?>?,
|
||||
) : FabricDynamicRegistryProvider(output, registriesFuture) {
|
||||
override fun configure(
|
||||
registries: RegistryWrapper.WrapperLookup,
|
||||
entries: Entries,
|
||||
) {
|
||||
entries.addAll(registries.getWrapperOrThrow(RegistryKeys.CONFIGURED_FEATURE))
|
||||
entries.addAll(registries.getWrapperOrThrow(RegistryKeys.PLACED_FEATURE))
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configure(RegistryWrapper.WrapperLookup registries, Entries entries) {
|
||||
entries.addAll(registries.getWrapperOrThrow(RegistryKeys.CONFIGURED_FEATURE));
|
||||
entries.addAll(registries.getWrapperOrThrow(RegistryKeys.PLACED_FEATURE));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "";
|
||||
}
|
||||
override fun getName(): String = ""
|
||||
}
|
||||
|
|
|
@ -1,21 +1,24 @@
|
|||
package observer.nelle.roses.world.gen;
|
||||
package observer.nelle.roses.world.gen
|
||||
|
||||
import net.fabricmc.fabric.api.biome.v1.BiomeModifications;
|
||||
import net.fabricmc.fabric.api.biome.v1.BiomeSelectors;
|
||||
import net.minecraft.world.biome.BiomeKeys;
|
||||
import net.minecraft.world.gen.GenerationStep;
|
||||
import observer.nelle.roses.world.RosesPlacedFeatures;
|
||||
import net.fabricmc.fabric.api.biome.v1.BiomeModifications
|
||||
import net.fabricmc.fabric.api.biome.v1.BiomeSelectors
|
||||
import net.minecraft.world.biome.BiomeKeys
|
||||
import net.minecraft.world.gen.GenerationStep
|
||||
import observer.nelle.roses.world.RosesPlacedFeatures
|
||||
|
||||
public class RosesVegetationGeneration {
|
||||
public static void generateVegetation() {
|
||||
object RosesVegetationGeneration {
|
||||
fun generateVegetation() {
|
||||
BiomeModifications.addFeature(
|
||||
BiomeSelectors.includeByKey(
|
||||
BiomeKeys.FOREST,
|
||||
BiomeKeys.FLOWER_FOREST,
|
||||
BiomeKeys.BIRCH_FOREST,
|
||||
BiomeKeys.OLD_GROWTH_BIRCH_FOREST,
|
||||
BiomeKeys.DARK_FOREST),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION, RosesPlacedFeatures.cyanRoseBushPlacedKey);
|
||||
BiomeKeys.DARK_FOREST,
|
||||
),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION,
|
||||
RosesPlacedFeatures.cyanRoseBushPlacedKey,
|
||||
)
|
||||
|
||||
// regular
|
||||
BiomeModifications.addFeature(
|
||||
|
@ -37,10 +40,14 @@ public class RosesVegetationGeneration {
|
|||
BiomeKeys.WINDSWEPT_FOREST,
|
||||
BiomeKeys.WINDSWEPT_GRAVELLY_HILLS,
|
||||
BiomeKeys.RIVER,
|
||||
BiomeKeys.FROZEN_RIVER),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION, RosesPlacedFeatures.cyanRosePlacedKey);
|
||||
BiomeKeys.FROZEN_RIVER,
|
||||
),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION,
|
||||
RosesPlacedFeatures.cyanRosePlacedKey,
|
||||
)
|
||||
|
||||
BiomeModifications.addFeature(BiomeSelectors.includeByKey(
|
||||
BiomeModifications.addFeature(
|
||||
BiomeSelectors.includeByKey(
|
||||
BiomeKeys.PLAINS,
|
||||
BiomeKeys.SUNFLOWER_PLAINS,
|
||||
BiomeKeys.MEADOW, // https://minecraft.wiki/w/Flower#Flower_gradients
|
||||
|
@ -58,8 +65,11 @@ public class RosesVegetationGeneration {
|
|||
BiomeKeys.WINDSWEPT_FOREST,
|
||||
BiomeKeys.WINDSWEPT_GRAVELLY_HILLS,
|
||||
BiomeKeys.RIVER,
|
||||
BiomeKeys.FROZEN_RIVER),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION, RosesPlacedFeatures.rosePlacedKey);
|
||||
BiomeKeys.FROZEN_RIVER,
|
||||
),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION,
|
||||
RosesPlacedFeatures.rosePlacedKey,
|
||||
)
|
||||
|
||||
// rarer
|
||||
BiomeModifications.addFeature(
|
||||
|
@ -79,11 +89,14 @@ public class RosesVegetationGeneration {
|
|||
BiomeKeys.DESERT,
|
||||
BiomeKeys.ICE_SPIKES,
|
||||
BiomeKeys.DRIPSTONE_CAVES,
|
||||
BiomeKeys.DEEP_DARK
|
||||
BiomeKeys.DEEP_DARK,
|
||||
),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION, RosesPlacedFeatures.cyanRoseRarerPlacedKey);
|
||||
GenerationStep.Feature.VEGETAL_DECORATION,
|
||||
RosesPlacedFeatures.cyanRoseRarerPlacedKey,
|
||||
)
|
||||
|
||||
BiomeModifications.addFeature(BiomeSelectors.includeByKey(
|
||||
BiomeModifications.addFeature(
|
||||
BiomeSelectors.includeByKey(
|
||||
BiomeKeys.BEACH,
|
||||
BiomeKeys.SNOWY_BEACH,
|
||||
BiomeKeys.STONY_SHORE,
|
||||
|
@ -99,9 +112,11 @@ public class RosesVegetationGeneration {
|
|||
BiomeKeys.DESERT,
|
||||
BiomeKeys.ICE_SPIKES,
|
||||
BiomeKeys.DRIPSTONE_CAVES,
|
||||
BiomeKeys.DEEP_DARK
|
||||
BiomeKeys.DEEP_DARK,
|
||||
),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION, RosesPlacedFeatures.roseRarerPlacedKey);
|
||||
GenerationStep.Feature.VEGETAL_DECORATION,
|
||||
RosesPlacedFeatures.roseRarerPlacedKey,
|
||||
)
|
||||
|
||||
// more common
|
||||
BiomeModifications.addFeature(
|
||||
|
@ -111,18 +126,23 @@ public class RosesVegetationGeneration {
|
|||
BiomeKeys.SPARSE_JUNGLE,
|
||||
BiomeKeys.SAVANNA,
|
||||
BiomeKeys.SAVANNA_PLATEAU,
|
||||
BiomeKeys.WINDSWEPT_SAVANNA
|
||||
BiomeKeys.WINDSWEPT_SAVANNA,
|
||||
),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION, RosesPlacedFeatures.cyanRoseCommonPlacedKey);
|
||||
GenerationStep.Feature.VEGETAL_DECORATION,
|
||||
RosesPlacedFeatures.cyanRoseCommonPlacedKey,
|
||||
)
|
||||
|
||||
BiomeModifications.addFeature(BiomeSelectors.includeByKey(
|
||||
BiomeModifications.addFeature(
|
||||
BiomeSelectors.includeByKey(
|
||||
BiomeKeys.JUNGLE,
|
||||
BiomeKeys.BAMBOO_JUNGLE,
|
||||
BiomeKeys.SPARSE_JUNGLE,
|
||||
BiomeKeys.SAVANNA,
|
||||
BiomeKeys.SAVANNA_PLATEAU,
|
||||
BiomeKeys.WINDSWEPT_SAVANNA
|
||||
BiomeKeys.WINDSWEPT_SAVANNA,
|
||||
),
|
||||
GenerationStep.Feature.VEGETAL_DECORATION, RosesPlacedFeatures.roseCommonPlacedKey);
|
||||
GenerationStep.Feature.VEGETAL_DECORATION,
|
||||
RosesPlacedFeatures.roseCommonPlacedKey,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package observer.nelle.roses.world.gen;
|
||||
package observer.nelle.roses.world.gen
|
||||
|
||||
public class RosesWorldGeneration {
|
||||
public static void generateRosesWorldGen() {
|
||||
RosesVegetationGeneration.generateVegetation();
|
||||
object RosesWorldGeneration {
|
||||
fun generateRosesWorldGen() {
|
||||
RosesVegetationGeneration.generateVegetation()
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue