From fdce5c7dedb136cb01cd31df3a9f0fa6ad4e587f Mon Sep 17 00:00:00 2001 From: Hugman Date: Fri, 24 Jan 2025 00:14:23 +0100 Subject: [PATCH] Update to 1.21.4 --- gradle.properties | 6 +- .../data/UniversalOresDataGenerator.java | 2 +- .../UniversalOresBlockLootTableProvider.java | 2 +- .../provider/UniversalOresModelProvider.java | 8 +-- .../UniversalOresRecipeGenerator.java | 58 ++++++++++++------- .../block/UniversalOresBlocks.java | 4 +- src/main/resources/fabric.mod.json | 2 +- 7 files changed, 49 insertions(+), 33 deletions(-) diff --git a/gradle.properties b/gradle.properties index 37d98f6..f2a93cf 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,7 +11,7 @@ loader_name=Fabric loader_icon=https://fabricmc.net/assets/logo.png # check these on https://fabricmc.net/develop/ -minecraft_version=1.21.1 -yarn_mappings=1.21.1+build.3 +minecraft_version=1.21.4 +yarn_mappings=1.21.4+build.8 loader_version=0.16.10 -fabric_version=0.115.0+1.21.1 \ No newline at end of file +fabric_version=0.115.0+1.21.4 \ No newline at end of file diff --git a/src/datagen/java/fr/hugman/universal_ores/data/UniversalOresDataGenerator.java b/src/datagen/java/fr/hugman/universal_ores/data/UniversalOresDataGenerator.java index 512ab41..cf5f583 100644 --- a/src/datagen/java/fr/hugman/universal_ores/data/UniversalOresDataGenerator.java +++ b/src/datagen/java/fr/hugman/universal_ores/data/UniversalOresDataGenerator.java @@ -18,7 +18,7 @@ public void onInitializeDataGenerator(FabricDataGenerator fabricDataGenerator) { var blockTags = pack.addProvider(UniversalOresBlockTagProvider::new); pack.addProvider((fabricDataOutput, completableFuture) -> new UniversalOresItemTagProvider(fabricDataOutput, completableFuture, blockTags)); pack.addProvider(UniversalOresBlockLootTableProvider::new); - pack.addProvider(UniversalOresRecipeGenerator::new); + pack.addProvider(UniversalOresRecipeGenerator::create); } @Override diff --git a/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresBlockLootTableProvider.java b/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresBlockLootTableProvider.java index 7c948dd..0e508ef 100644 --- a/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresBlockLootTableProvider.java +++ b/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresBlockLootTableProvider.java @@ -21,7 +21,7 @@ public UniversalOresBlockLootTableProvider(FabricDataOutput dataOutput, Completa @Override public void generate() { - var enchantments = this.registryLookup.getWrapperOrThrow(RegistryKeys.ENCHANTMENT); + var enchantments = this.registries.getOrThrow(RegistryKeys.ENCHANTMENT); for (var block : UniversalOresBlocks.COAL_ORES) { this.addDrop(block, b -> this.oreDrops(b, Items.COAL)); diff --git a/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresModelProvider.java b/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresModelProvider.java index f00b0e9..3a84c14 100644 --- a/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresModelProvider.java +++ b/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresModelProvider.java @@ -2,11 +2,11 @@ import fr.hugman.universal_ores.block.UniversalOresBlocks; +import net.fabricmc.fabric.api.client.datagen.v1.provider.FabricModelProvider; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; -import net.fabricmc.fabric.api.datagen.v1.provider.FabricModelProvider; -import net.minecraft.data.client.BlockStateModelGenerator; -import net.minecraft.data.client.ItemModelGenerator; -import net.minecraft.data.client.TexturedModel; +import net.minecraft.client.data.BlockStateModelGenerator; +import net.minecraft.client.data.ItemModelGenerator; +import net.minecraft.client.data.TexturedModel; public class UniversalOresModelProvider extends FabricModelProvider { public UniversalOresModelProvider(FabricDataOutput output) { diff --git a/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresRecipeGenerator.java b/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresRecipeGenerator.java index 3a96eb1..1fc3793 100644 --- a/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresRecipeGenerator.java +++ b/src/datagen/java/fr/hugman/universal_ores/data/provider/UniversalOresRecipeGenerator.java @@ -5,12 +5,15 @@ import fr.hugman.universal_ores.block.UniversalOresBlocks; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; -import net.minecraft.data.server.recipe.CookingRecipeJsonBuilder; -import net.minecraft.data.server.recipe.RecipeExporter; +import net.minecraft.data.recipe.CookingRecipeJsonBuilder; +import net.minecraft.data.recipe.RecipeExporter; +import net.minecraft.data.recipe.RecipeGenerator; import net.minecraft.item.ItemConvertible; import net.minecraft.item.Items; import net.minecraft.recipe.*; import net.minecraft.recipe.book.RecipeCategory; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; import net.minecraft.registry.RegistryWrapper; import java.util.Arrays; @@ -18,34 +21,33 @@ import java.util.concurrent.CompletableFuture; import java.util.stream.Stream; -public class UniversalOresRecipeGenerator extends FabricRecipeProvider { - public UniversalOresRecipeGenerator(FabricDataOutput output, CompletableFuture registriesFuture) { - super(output, registriesFuture); +public class UniversalOresRecipeGenerator extends RecipeGenerator { + public UniversalOresRecipeGenerator(RegistryWrapper.WrapperLookup registries, RecipeExporter exporter) { + super(registries, exporter); } @Override - public void generate(RecipeExporter exporter) { - offerOres(exporter, ImmutableList.copyOf(UniversalOresBlocks.COAL_ORES), RecipeCategory.MISC, Items.COAL, 0.1F, 200, "coal"); - offerOres(exporter, ImmutableList.copyOf(UniversalOresBlocks.IRON_ORES), RecipeCategory.MISC, Items.IRON_INGOT, 0.7F, 200, "iron_ingot"); - offerOres(exporter, ImmutableList.copyOf( + public void generate() { + offerOres(ImmutableList.copyOf(UniversalOresBlocks.COAL_ORES), RecipeCategory.MISC, Items.COAL, 0.1F, 200, "coal"); + offerOres(ImmutableList.copyOf(UniversalOresBlocks.IRON_ORES), RecipeCategory.MISC, Items.IRON_INGOT, 0.7F, 200, "iron_ingot"); + offerOres(ImmutableList.copyOf( Stream.concat(Arrays.stream(UniversalOresBlocks.GOLD_ORES), Arrays.stream(UniversalOresBlocks.NETHER_GOLD_ORES)) .toArray(ItemConvertible[]::new) ), RecipeCategory.MISC, Items.GOLD_INGOT, 1.0F, 200, "gold_ingot"); - offerOres(exporter, ImmutableList.copyOf(UniversalOresBlocks.COPPER_ORES), RecipeCategory.MISC, Items.COPPER_INGOT, 0.7F, 200, "copper_ingot"); - offerOres(exporter, ImmutableList.copyOf(UniversalOresBlocks.LAPIS_ORES), RecipeCategory.MISC, Items.LAPIS_LAZULI, 0.2F, 200, "lapis_lazuli"); - offerOres(exporter, ImmutableList.copyOf(UniversalOresBlocks.REDSTONE_ORES), RecipeCategory.REDSTONE, Items.REDSTONE, 0.7F, 200, "redstone"); - offerOres(exporter, ImmutableList.copyOf(UniversalOresBlocks.EMERALD_ORES), RecipeCategory.MISC, Items.EMERALD, 1.0F, 200, "emerald"); - offerOres(exporter, ImmutableList.copyOf(UniversalOresBlocks.DIAMOND_ORES), RecipeCategory.MISC, Items.DIAMOND, 1.0F, 200, "diamond"); - offerOres(exporter, ImmutableList.copyOf(UniversalOresBlocks.QUARTZ_ORES), RecipeCategory.MISC, Items.QUARTZ, 0.2F, 200, "quartz"); + offerOres(ImmutableList.copyOf(UniversalOresBlocks.COPPER_ORES), RecipeCategory.MISC, Items.COPPER_INGOT, 0.7F, 200, "copper_ingot"); + offerOres(ImmutableList.copyOf(UniversalOresBlocks.LAPIS_ORES), RecipeCategory.MISC, Items.LAPIS_LAZULI, 0.2F, 200, "lapis_lazuli"); + offerOres(ImmutableList.copyOf(UniversalOresBlocks.REDSTONE_ORES), RecipeCategory.REDSTONE, Items.REDSTONE, 0.7F, 200, "redstone"); + offerOres(ImmutableList.copyOf(UniversalOresBlocks.EMERALD_ORES), RecipeCategory.MISC, Items.EMERALD, 1.0F, 200, "emerald"); + offerOres(ImmutableList.copyOf(UniversalOresBlocks.DIAMOND_ORES), RecipeCategory.MISC, Items.DIAMOND, 1.0F, 200, "diamond"); + offerOres(ImmutableList.copyOf(UniversalOresBlocks.QUARTZ_ORES), RecipeCategory.MISC, Items.QUARTZ, 0.2F, 200, "quartz"); } - public void offerOres(RecipeExporter exporter, List ores, RecipeCategory category, ItemConvertible result, float experience, int cookingTime, String name) { - offerMultipleOptions(exporter, RecipeSerializer.SMELTING, SmeltingRecipe::new, ores, category, result, experience, cookingTime, name, "_from_smelting"); - offerMultipleOptions(exporter, RecipeSerializer.BLASTING, BlastingRecipe::new, ores, category, result, experience, cookingTime / 2, name, "_from_blasting"); + public void offerOres(List ores, RecipeCategory category, ItemConvertible result, float experience, int cookingTime, String name) { + offerMultipleOptionsFixed(RecipeSerializer.SMELTING, SmeltingRecipe::new, ores, category, result, experience, cookingTime, name, "_from_smelting"); + offerMultipleOptionsFixed(RecipeSerializer.BLASTING, BlastingRecipe::new, ores, category, result, experience, cookingTime / 2, name, "_from_blasting"); } - public static void offerMultipleOptions( - RecipeExporter exporter, + public void offerMultipleOptionsFixed( RecipeSerializer serializer, AbstractCookingRecipe.RecipeFactory recipeFactory, List inputs, @@ -60,7 +62,21 @@ public static void offerMultipleOptions( CookingRecipeJsonBuilder.create(Ingredient.ofItems(itemConvertible), category, output, experience, cookingTime, serializer, recipeFactory) .group(group) .criterion(hasItem(itemConvertible), conditionsFromItem(itemConvertible)) - .offerTo(exporter, UniversalOres.id(getItemPath(output) + suffix + "_" + getItemPath(itemConvertible))); + .offerTo(this.exporter, RegistryKey.of(RegistryKeys.RECIPE, UniversalOres.id(getItemPath(output) + suffix + "_" + getItemPath(itemConvertible)))); } } + + public static FabricRecipeProvider create(FabricDataOutput fabricDataOutput, CompletableFuture completableFuture) { + return new FabricRecipeProvider(fabricDataOutput, completableFuture) { + @Override + protected RecipeGenerator getRecipeGenerator(RegistryWrapper.WrapperLookup wrapperLookup, RecipeExporter recipeExporter) { + return new UniversalOresRecipeGenerator(wrapperLookup, recipeExporter); + } + + @Override + public String getName() { + return "Recipes"; + } + }; + } } diff --git a/src/main/java/fr/hugman/universal_ores/block/UniversalOresBlocks.java b/src/main/java/fr/hugman/universal_ores/block/UniversalOresBlocks.java index 8d4b626..4048830 100644 --- a/src/main/java/fr/hugman/universal_ores/block/UniversalOresBlocks.java +++ b/src/main/java/fr/hugman/universal_ores/block/UniversalOresBlocks.java @@ -93,11 +93,11 @@ private static Block register(String key, Function key, Function factory, AbstractBlock.Settings blockSettings) { - var block = factory.apply(blockSettings); + var block = factory.apply(blockSettings.registryKey(key)); Registry.register(Registries.BLOCK, key, block); var itemRegistryKey = RegistryKey.of(RegistryKeys.ITEM, key.getValue()); - Registry.register(Registries.ITEM, itemRegistryKey, new BlockItem(block, new Item.Settings())); + Registry.register(Registries.ITEM, itemRegistryKey, new BlockItem(block, new Item.Settings().registryKey(itemRegistryKey).useBlockPrefixedTranslationKey())); return block; } diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 790e1f7..9dd8e1f 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -23,7 +23,7 @@ ], "accessWidener": "universal_ores.accesswidener", "depends": { - "minecraft": "^1.21.1", + "minecraft": "^1.21.4", "fabric": "*" }, "custom": {