From 610bf044ee0670f31f35b207f9404753df4337ee Mon Sep 17 00:00:00 2001 From: Flanks255 <32142731+Flanks255@users.noreply.github.com> Date: Mon, 4 Mar 2024 15:03:46 -0600 Subject: [PATCH] More Recipe fixes. --- .../data/ColorChangeGenerator.java | 27 ++++---- .../data/CrushingRecipeGenerator.java | 16 ++--- .../data/DamageTypeTagsGenerator.java | 3 +- .../data/EmpoweringRecipeGenerator.java | 37 +++++------ .../data/FuelRecipeGenerator.java | 31 ++++----- .../data/ItemRecipeGenerator.java | 2 +- .../data/ItemTagsGenerator.java | 3 +- .../data/LaserRecipeGenerator.java | 65 +++++++++---------- .../data/MiningLensGenerator.java | 13 ++-- .../data/MiscMachineRecipeGenerator.java | 17 +++-- 10 files changed, 101 insertions(+), 113 deletions(-) diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/ColorChangeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/ColorChangeGenerator.java index e22d39bf6..8421fbe79 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/ColorChangeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/ColorChangeGenerator.java @@ -3,6 +3,7 @@ package de.ellpeck.actuallyadditions.data; import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.ActuallyBlocks; import de.ellpeck.actuallyadditions.mod.crafting.ColorChangeRecipe; +import de.ellpeck.actuallyadditions.mod.util.NoAdvRecipeOutput; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.RecipeOutput; @@ -25,22 +26,18 @@ public class ColorChangeGenerator extends RecipeProvider { return "Color Change " + super.getName(); } -// @Override //TODO: Flanks do your RecipeOutput wrapper thingy ;) -// protected @Nullable CompletableFuture saveAdvancement(CachedOutput stack, FinishedRecipe finishedRecipe, JsonObject advancementJson) { -// return null; -// //Nope... maybe later... -// } - @Override - protected void buildRecipes(@Nonnull RecipeOutput consumer) { - buildWool(consumer); - buildStainedGlass(consumer); - buildStainedGlassPane(consumer); - buildTerracotta(consumer); - buildGlazedTerracotta(consumer); - buildCarpet(consumer); - buildLamps(consumer); - buildDye(consumer); + protected void buildRecipes(@Nonnull RecipeOutput output) { + var recipeOutput = new NoAdvRecipeOutput(output); + + buildWool(recipeOutput); + buildStainedGlass(recipeOutput); + buildStainedGlassPane(recipeOutput); + buildTerracotta(recipeOutput); + buildGlazedTerracotta(recipeOutput); + buildCarpet(recipeOutput); + buildLamps(recipeOutput); + buildDye(recipeOutput); } private void buildWool(@Nonnull RecipeOutput c) { diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/CrushingRecipeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/CrushingRecipeGenerator.java index 312927a85..51ae32d09 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/CrushingRecipeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/CrushingRecipeGenerator.java @@ -2,6 +2,7 @@ package de.ellpeck.actuallyadditions.data; import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.crafting.CrushingRecipe; +import de.ellpeck.actuallyadditions.mod.util.NoAdvRecipeOutput; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.data.recipes.RecipeProvider; @@ -10,6 +11,8 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; +import javax.annotation.Nonnull; + public class CrushingRecipeGenerator extends RecipeProvider { public CrushingRecipeGenerator(PackOutput packOutput) { super(packOutput); @@ -20,15 +23,12 @@ public class CrushingRecipeGenerator extends RecipeProvider { return "Crushing " + super.getName(); } -// @Override //TODO: Flanks do your RecipeOutput wrapper thingy ;) -// protected @Nullable CompletableFuture saveAdvancement(CachedOutput stack, FinishedRecipe finishedRecipe, JsonObject advancementJson) { -// return null; -// //Nope... maybe later... -// } - @Override - protected void buildRecipes(RecipeOutput consumer) { + protected void buildRecipes(@Nonnull RecipeOutput output) { + var recipeOutput = new NoAdvRecipeOutput(output); + + CrushingRecipe recipe = new CrushingRecipe(Ingredient.of(Items.BONE), new ItemStack(Items.BONE_MEAL, 6), 1.0f, ItemStack.EMPTY, 0.0f); - consumer.accept(new ResourceLocation(ActuallyAdditions.MODID, "crushing/iron_crusher"), recipe, null); + recipeOutput.accept(new ResourceLocation(ActuallyAdditions.MODID, "crushing/iron_crusher"), recipe, null); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/DamageTypeTagsGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/DamageTypeTagsGenerator.java index e4bfd836b..3d2799521 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/DamageTypeTagsGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/DamageTypeTagsGenerator.java @@ -9,6 +9,7 @@ import net.minecraft.tags.DamageTypeTags; import net.neoforged.neoforge.common.data.ExistingFileHelper; import org.jetbrains.annotations.Nullable; +import javax.annotation.Nonnull; import java.util.concurrent.CompletableFuture; public class DamageTypeTagsGenerator extends DamageTypeTagsProvider { @@ -17,7 +18,7 @@ public class DamageTypeTagsGenerator extends DamageTypeTagsProvider { } @Override - protected void addTags(HolderLookup.Provider pProvider) { + protected void addTags(@Nonnull HolderLookup.Provider pProvider) { tag(DamageTypeTags.BYPASSES_ARMOR).add( ActuallyDamageTypes.ATOMIC_RECONSTRUCTOR ); diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/EmpoweringRecipeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/EmpoweringRecipeGenerator.java index 317f3d744..30fed90cb 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/EmpoweringRecipeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/EmpoweringRecipeGenerator.java @@ -5,6 +5,7 @@ import de.ellpeck.actuallyadditions.mod.blocks.ActuallyBlocks; import de.ellpeck.actuallyadditions.mod.crafting.EmpowererRecipe; import de.ellpeck.actuallyadditions.mod.items.ActuallyItems; import de.ellpeck.actuallyadditions.mod.items.metalists.Crystals; +import de.ellpeck.actuallyadditions.mod.util.NoAdvRecipeOutput; import net.minecraft.core.NonNullList; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.PackOutput; @@ -30,85 +31,81 @@ public class EmpoweringRecipeGenerator extends RecipeProvider { return "Empowering " + super.getName(); } -// @Override //TODO: Flanks do your RecipeOutput wrapper thingy ;) -// protected @Nullable CompletableFuture saveAdvancement(CachedOutput stack, FinishedRecipe finishedRecipe, JsonObject advancementJson) { -// return null; -// //Nope... maybe later... -// } - @Override - protected void buildRecipes(RecipeOutput consumer) { + protected void buildRecipes(RecipeOutput output) { + var recipeOutput = new NoAdvRecipeOutput(output); + EmpoweringBuilder.builder(ActuallyItems.EMPOWERED_RESTONIA_CRYSTAL.get(), ActuallyItems.RESTONIA_CRYSTAL.get(), 5000, 50, Crystals.REDSTONE.conversionColorParticles) .addModifier(Tags.Items.DYES_RED) .addModifier(Items.NETHER_BRICK) .addModifier(Tags.Items.DUSTS_REDSTONE) - .addModifier(Items.BRICK).save(consumer, "restonia"); + .addModifier(Items.BRICK).save(recipeOutput, "restonia"); EmpoweringBuilder.builder(ActuallyBlocks.EMPOWERED_RESTONIA_CRYSTAL.get(), ActuallyBlocks.RESTONIA_CRYSTAL.get(), 50000, 500, Crystals.REDSTONE.conversionColorParticles) .addModifier(Tags.Items.DYES_RED) .addModifier(Items.NETHER_BRICK) .addModifier(Tags.Items.DUSTS_REDSTONE) - .addModifier(Items.BRICK).save(consumer, "restonia_block"); + .addModifier(Items.BRICK).save(recipeOutput, "restonia_block"); EmpoweringBuilder.builder(ActuallyItems.EMPOWERED_PALIS_CRYSTAL.get(), ActuallyItems.PALIS_CRYSTAL.get(), 5000, 50, Crystals.LAPIS.conversionColorParticles) .addModifier(Tags.Items.DYES_CYAN) .addModifier(Items.PRISMARINE_SHARD) .addModifier(Items.PRISMARINE_SHARD) - .addModifier(Items.PRISMARINE_SHARD).save(consumer, "palis"); + .addModifier(Items.PRISMARINE_SHARD).save(recipeOutput, "palis"); EmpoweringBuilder.builder(ActuallyBlocks.EMPOWERED_PALIS_CRYSTAL.get(), ActuallyBlocks.PALIS_CRYSTAL.get(), 50000, 500, Crystals.LAPIS.conversionColorParticles) .addModifier(Tags.Items.DYES_CYAN) .addModifier(Items.PRISMARINE_SHARD) .addModifier(Items.PRISMARINE_SHARD) - .addModifier(Items.PRISMARINE_SHARD).save(consumer, "palis_block"); + .addModifier(Items.PRISMARINE_SHARD).save(recipeOutput, "palis_block"); EmpoweringBuilder.builder(ActuallyItems.EMPOWERED_DIAMATINE_CRYSTAL.get(), ActuallyItems.DIAMATINE_CRYSTAL.get(), 5000, 50, Crystals.DIAMOND.conversionColorParticles) .addModifier(Tags.Items.DYES_LIGHT_BLUE) .addModifier(Items.CLAY_BALL) .addModifier(Items.CLAY_BALL) - .addModifier(Items.CLAY).save(consumer, "diamatine"); + .addModifier(Items.CLAY).save(recipeOutput, "diamatine"); EmpoweringBuilder.builder(ActuallyBlocks.EMPOWERED_DIAMATINE_CRYSTAL.get(), ActuallyBlocks.DIAMATINE_CRYSTAL.get(), 50000, 500, Crystals.DIAMOND.conversionColorParticles) .addModifier(Tags.Items.DYES_LIGHT_BLUE) .addModifier(Items.CLAY_BALL) .addModifier(Items.CLAY_BALL) - .addModifier(Items.CLAY).save(consumer, "diamatine_block"); + .addModifier(Items.CLAY).save(recipeOutput, "diamatine_block"); EmpoweringBuilder.builder(ActuallyItems.EMPOWERED_ENORI_CRYSTAL.get(), ActuallyItems.ENORI_CRYSTAL.get(), 5000, 50, Crystals.IRON.conversionColorParticles) .addModifier(Tags.Items.DYES_GRAY) .addModifier(Items.SNOWBALL) .addModifier(Items.STONE_BUTTON) - .addModifier(Tags.Items.COBBLESTONE).save(consumer, "enori"); + .addModifier(Tags.Items.COBBLESTONE).save(recipeOutput, "enori"); EmpoweringBuilder.builder(ActuallyBlocks.EMPOWERED_ENORI_CRYSTAL.get(), ActuallyBlocks.ENORI_CRYSTAL.get(), 50000, 500, Crystals.IRON.conversionColorParticles) .addModifier(Tags.Items.DYES_GRAY) .addModifier(Items.SNOWBALL) .addModifier(Items.STONE_BUTTON) - .addModifier(Tags.Items.COBBLESTONE).save(consumer, "enori_block"); + .addModifier(Tags.Items.COBBLESTONE).save(recipeOutput, "enori_block"); EmpoweringBuilder.builder(ActuallyItems.EMPOWERED_VOID_CRYSTAL.get(), ActuallyItems.VOID_CRYSTAL.get(), 5000, 50, Crystals.COAL.conversionColorParticles) .addModifier(Tags.Items.DYES_BLACK) .addModifier(ItemTags.COALS) .addModifier(Items.FLINT) - .addModifier(Tags.Items.STONE).save(consumer, "void"); + .addModifier(Tags.Items.STONE).save(recipeOutput, "void"); EmpoweringBuilder.builder(ActuallyBlocks.EMPOWERED_VOID_CRYSTAL.get(), ActuallyBlocks.VOID_CRYSTAL.get(), 50000, 500, Crystals.COAL.conversionColorParticles) .addModifier(Tags.Items.DYES_BLACK) .addModifier(ItemTags.COALS) .addModifier(Items.FLINT) - .addModifier(Tags.Items.STONE).save(consumer, "void_block"); + .addModifier(Tags.Items.STONE).save(recipeOutput, "void_block"); EmpoweringBuilder.builder(ActuallyItems.EMPOWERED_EMERADIC_CRYSTAL.get(), ActuallyItems.EMERADIC_CRYSTAL.get(), 5000, 50, Crystals.EMERALD.conversionColorParticles) .addModifier(Tags.Items.DYES_LIME) .addModifier(Items.TALL_GRASS) .addModifier(ItemTags.SAPLINGS) - .addModifier(Tags.Items.SLIMEBALLS).save(consumer, "emeradic"); + .addModifier(Tags.Items.SLIMEBALLS).save(recipeOutput, "emeradic"); EmpoweringBuilder.builder(ActuallyBlocks.EMPOWERED_EMERADIC_CRYSTAL.get(), ActuallyBlocks.EMERADIC_CRYSTAL.get(), 50000, 500, Crystals.EMERALD.conversionColorParticles) .addModifier(Tags.Items.DYES_LIME) .addModifier(Items.TALL_GRASS) .addModifier(ItemTags.SAPLINGS) - .addModifier(Tags.Items.SLIMEBALLS).save(consumer, "emeradic_block"); + .addModifier(Tags.Items.SLIMEBALLS).save(recipeOutput, "emeradic_block"); EmpoweringBuilder.builder(ActuallyItems.EMPOWERED_CANOLA_SEED.get(), ActuallyItems.CRYSTALLIZED_CANOLA_SEED.get(), 1000, 30, 0xFF5B4C) .addModifier(ActuallyItems.CANOLA_SEEDS.get()) .addModifier(ActuallyItems.CANOLA_SEEDS.get()) .addModifier(ActuallyItems.CANOLA_SEEDS.get()) - .addModifier(ActuallyItems.CANOLA_SEEDS.get()).save(consumer, "empowered_canola"); + .addModifier(ActuallyItems.CANOLA_SEEDS.get()).save(recipeOutput, "empowered_canola"); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/FuelRecipeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/FuelRecipeGenerator.java index dd69caa9d..dd1e26b95 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/FuelRecipeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/FuelRecipeGenerator.java @@ -5,6 +5,7 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.crafting.LiquidFuelRecipe; import de.ellpeck.actuallyadditions.mod.crafting.SolidFuelRecipe; import de.ellpeck.actuallyadditions.mod.fluids.InitFluids; +import de.ellpeck.actuallyadditions.mod.util.NoAdvRecipeOutput; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.data.recipes.RecipeProvider; @@ -27,31 +28,27 @@ public class FuelRecipeGenerator extends RecipeProvider { return "Fuel " + super.getName(); } -// @Override //TODO: Flanks do your RecipeOutput wrapper thingy ;) -// protected @Nullable CompletableFuture saveAdvancement(CachedOutput stack, FinishedRecipe finishedRecipe, JsonObject advancementJson) { -// return null; -// //Nope... maybe later... -// } - @Override - protected void buildRecipes(@Nonnull RecipeOutput consumer) { - addSolid(consumer, "coal", Items.COAL, 32000, 1600); - addSolid(consumer, "stick", Items.STICK, 2000, 100); - addSolid(consumer, "tiny-coal", ActuallyTags.Items.TINY_COALS, 4000, 200); - addSolid(consumer, "charcoal", Items.CHARCOAL, 32000, 1600); - addSolid(consumer, "coal-block", Items.COAL_BLOCK, 320000, 16000); - addSolid(consumer, "lava", Items.LAVA_BUCKET, 400000, 20000); + protected void buildRecipes(@Nonnull RecipeOutput output) { + var recipeOutput = new NoAdvRecipeOutput(output); - consumer.accept(new ResourceLocation(ActuallyAdditions.MODID, "liquid_fuel/canola_oil"), new LiquidFuelRecipe( + addSolid(recipeOutput, "coal", Items.COAL, 32000, 1600); + addSolid(recipeOutput, "stick", Items.STICK, 2000, 100); + addSolid(recipeOutput, "tiny-coal", ActuallyTags.Items.TINY_COALS, 4000, 200); + addSolid(recipeOutput, "charcoal", Items.CHARCOAL, 32000, 1600); + addSolid(recipeOutput, "coal-block", Items.COAL_BLOCK, 320000, 16000); + addSolid(recipeOutput, "lava", Items.LAVA_BUCKET, 400000, 20000); + + recipeOutput.accept(new ResourceLocation(ActuallyAdditions.MODID, "liquid_fuel/canola_oil"), new LiquidFuelRecipe( new FluidStack(InitFluids.CANOLA_OIL.get(), 50), 4000, 100), null); - consumer.accept(new ResourceLocation(ActuallyAdditions.MODID, "liquid_fuel/refined_canola_oil"), new LiquidFuelRecipe( + recipeOutput.accept(new ResourceLocation(ActuallyAdditions.MODID, "liquid_fuel/refined_canola_oil"), new LiquidFuelRecipe( new FluidStack(InitFluids.REFINED_CANOLA_OIL.get(), 50), 9600, 120), null); - consumer.accept(new ResourceLocation(ActuallyAdditions.MODID, "liquid_fuel/crystallized_canola_oil"),new LiquidFuelRecipe( + recipeOutput.accept(new ResourceLocation(ActuallyAdditions.MODID, "liquid_fuel/crystallized_canola_oil"),new LiquidFuelRecipe( new FluidStack(InitFluids.CRYSTALLIZED_OIL.get(), 50), 28000, 280), null); - consumer.accept(new ResourceLocation(ActuallyAdditions.MODID, "liquid_fuel/empowered_canola_oil"), new LiquidFuelRecipe( + recipeOutput.accept(new ResourceLocation(ActuallyAdditions.MODID, "liquid_fuel/empowered_canola_oil"), new LiquidFuelRecipe( new FluidStack(InitFluids.EMPOWERED_OIL.get(), 50), 48000, 400), null); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/ItemRecipeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/ItemRecipeGenerator.java index 0897e7d97..38e4699b8 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/ItemRecipeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/ItemRecipeGenerator.java @@ -33,7 +33,7 @@ public class ItemRecipeGenerator extends RecipeProvider { } @Override - protected void buildRecipes(RecipeOutput output) { + protected void buildRecipes(@Nonnull RecipeOutput output) { var recipeOutput = new NoAdvRecipeOutput(output); generatePaxels(recipeOutput); diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/ItemTagsGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/ItemTagsGenerator.java index 8ff59a227..0fe658721 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/ItemTagsGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/ItemTagsGenerator.java @@ -10,6 +10,7 @@ import net.minecraft.data.tags.TagsProvider; import net.minecraft.world.level.block.Block; import net.neoforged.neoforge.common.data.ExistingFileHelper; +import javax.annotation.Nonnull; import java.util.concurrent.CompletableFuture; public class ItemTagsGenerator extends ItemTagsProvider { @@ -19,7 +20,7 @@ public class ItemTagsGenerator extends ItemTagsProvider { } @Override - protected void addTags(HolderLookup.Provider provider) { + protected void addTags(@Nonnull HolderLookup.Provider provider) { tag(ActuallyTags.Items.COFFEE_BEANS) .add(ActuallyItems.COFFEE_BEANS.get()); tag(ActuallyTags.Items.TINY_COALS) diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/LaserRecipeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/LaserRecipeGenerator.java index 575256556..e7d6868e1 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/LaserRecipeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/LaserRecipeGenerator.java @@ -4,6 +4,7 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.ActuallyBlocks; import de.ellpeck.actuallyadditions.mod.crafting.LaserRecipe; import de.ellpeck.actuallyadditions.mod.items.ActuallyItems; +import de.ellpeck.actuallyadditions.mod.util.NoAdvRecipeOutput; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.RecipeOutput; @@ -17,6 +18,8 @@ import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.level.ItemLike; import net.neoforged.neoforge.common.Tags; +import javax.annotation.Nonnull; + public class LaserRecipeGenerator extends RecipeProvider { public LaserRecipeGenerator(PackOutput packOutput) { super(packOutput); @@ -27,49 +30,45 @@ public class LaserRecipeGenerator extends RecipeProvider { return "Laser " + super.getName(); } -// @Override //TODO: Flanks do your RecipeOutput wrapper thingy ;) -// protected @Nullable CompletableFuture saveAdvancement(CachedOutput stack, FinishedRecipe finishedRecipe, JsonObject advancementJson) { -// return null; -// //Nope... maybe later... -// } - @Override - protected void buildRecipes(RecipeOutput consumer) { + protected void buildRecipes(@Nonnull RecipeOutput output) { + var recipeOutput = new NoAdvRecipeOutput(output); + //Crystal Blocks - laserCrystalizeRecipe(consumer, ActuallyBlocks.RESTONIA_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_REDSTONE, 400); - laserCrystalizeRecipe(consumer, ActuallyBlocks.PALIS_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_LAPIS, 400); - laserCrystalizeRecipe(consumer, ActuallyBlocks.DIAMATINE_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_DIAMOND, 600); - laserCrystalizeRecipe(consumer, ActuallyBlocks.EMERADIC_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_EMERALD, 1000); - laserCrystalizeRecipe(consumer, ActuallyBlocks.VOID_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_COAL, 600); - laserCrystalizeRecipe(consumer, ActuallyBlocks.ENORI_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_IRON, 800); + laserCrystalizeRecipe(recipeOutput, ActuallyBlocks.RESTONIA_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_REDSTONE, 400); + laserCrystalizeRecipe(recipeOutput, ActuallyBlocks.PALIS_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_LAPIS, 400); + laserCrystalizeRecipe(recipeOutput, ActuallyBlocks.DIAMATINE_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_DIAMOND, 600); + laserCrystalizeRecipe(recipeOutput, ActuallyBlocks.EMERADIC_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_EMERALD, 1000); + laserCrystalizeRecipe(recipeOutput, ActuallyBlocks.VOID_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_COAL, 600); + laserCrystalizeRecipe(recipeOutput, ActuallyBlocks.ENORI_CRYSTAL.getItem(), Tags.Items.STORAGE_BLOCKS_IRON, 800); //Crystal Items - laserCrystalizeRecipe(consumer, ActuallyItems.RESTONIA_CRYSTAL.get(), Tags.Items.DUSTS_REDSTONE, 40); - laserCrystalizeRecipe(consumer, ActuallyItems.PALIS_CRYSTAL.get(), Tags.Items.GEMS_LAPIS, 40); - laserCrystalizeRecipe(consumer, ActuallyItems.DIAMATINE_CRYSTAL.get(), Tags.Items.GEMS_DIAMOND, 60); - laserCrystalizeRecipe(consumer, ActuallyItems.EMERADIC_CRYSTAL.get(), Tags.Items.GEMS_EMERALD, 100); - laserCrystalizeRecipe(consumer, ActuallyItems.VOID_CRYSTAL.get(), ItemTags.COALS, 60); - laserCrystalizeRecipe(consumer, ActuallyItems.ENORI_CRYSTAL.get(), Tags.Items.INGOTS_IRON, 80); + laserCrystalizeRecipe(recipeOutput, ActuallyItems.RESTONIA_CRYSTAL.get(), Tags.Items.DUSTS_REDSTONE, 40); + laserCrystalizeRecipe(recipeOutput, ActuallyItems.PALIS_CRYSTAL.get(), Tags.Items.GEMS_LAPIS, 40); + laserCrystalizeRecipe(recipeOutput, ActuallyItems.DIAMATINE_CRYSTAL.get(), Tags.Items.GEMS_DIAMOND, 60); + laserCrystalizeRecipe(recipeOutput, ActuallyItems.EMERADIC_CRYSTAL.get(), Tags.Items.GEMS_EMERALD, 100); + laserCrystalizeRecipe(recipeOutput, ActuallyItems.VOID_CRYSTAL.get(), ItemTags.COALS, 60); + laserCrystalizeRecipe(recipeOutput, ActuallyItems.ENORI_CRYSTAL.get(), Tags.Items.INGOTS_IRON, 80); //Lenses - laserRecipe(consumer, ActuallyItems.LENS_OF_COLOR.get(), ActuallyItems.LENS.get(), 5000); - laserRecipe(consumer, ActuallyItems.LENS_OF_DETONATION.get(), ActuallyItems.LENS_OF_COLOR.get(), 5000); - laserRecipe(consumer, ActuallyItems.LENS_OF_CERTAIN_DEATH.get(), ActuallyItems.LENS_OF_DETONATION.get(), 5000); - laserRecipe(consumer, ActuallyItems.LENS.get(), ActuallyItems.LENS_OF_CERTAIN_DEATH.get(), 5000); + laserRecipe(recipeOutput, ActuallyItems.LENS_OF_COLOR.get(), ActuallyItems.LENS.get(), 5000); + laserRecipe(recipeOutput, ActuallyItems.LENS_OF_DETONATION.get(), ActuallyItems.LENS_OF_COLOR.get(), 5000); + laserRecipe(recipeOutput, ActuallyItems.LENS_OF_CERTAIN_DEATH.get(), ActuallyItems.LENS_OF_DETONATION.get(), 5000); + laserRecipe(recipeOutput, ActuallyItems.LENS.get(), ActuallyItems.LENS_OF_CERTAIN_DEATH.get(), 5000); //Relays - laserRecipe(consumer, ActuallyBlocks.LASER_RELAY_FLUIDS.getItem(), ActuallyBlocks.LASER_RELAY.getItem(), 2000); - laserRecipe(consumer, ActuallyBlocks.LASER_RELAY_ITEM.getItem(), ActuallyBlocks.LASER_RELAY_FLUIDS.getItem(), 2000); - laserRecipe(consumer, ActuallyBlocks.LASER_RELAY.getItem(), ActuallyBlocks.LASER_RELAY_ITEM.getItem(), 2000); + laserRecipe(recipeOutput, ActuallyBlocks.LASER_RELAY_FLUIDS.getItem(), ActuallyBlocks.LASER_RELAY.getItem(), 2000); + laserRecipe(recipeOutput, ActuallyBlocks.LASER_RELAY_ITEM.getItem(), ActuallyBlocks.LASER_RELAY_FLUIDS.getItem(), 2000); + laserRecipe(recipeOutput, ActuallyBlocks.LASER_RELAY.getItem(), ActuallyBlocks.LASER_RELAY_ITEM.getItem(), 2000); //Misc - laserRecipe(consumer, Items.SOUL_SAND, Tags.Items.SAND, 20000); - laserRecipe(consumer, Items.LEATHER, Items.ROTTEN_FLESH, 20000); - laserRecipe(consumer, Items.NETHER_WART, Items.RED_MUSHROOM, 150000); - laserRecipe(consumer, Items.PRISMARINE_SHARD, Items.QUARTZ, 30000); - laserRecipe(consumer, ActuallyItems.CRYSTALLIZED_CANOLA_SEED.get(), ActuallyItems.CANOLA_SEEDS.get(), 2000); - laserRecipe(consumer, ActuallyBlocks.ETHETIC_WHITE_BLOCK.getItem(), Items.QUARTZ_BLOCK, 10); - laserRecipe(consumer, ActuallyBlocks.ETHETIC_GREEN_BLOCK.getItem(), Items.CHISELED_QUARTZ_BLOCK, 10); + laserRecipe(recipeOutput, Items.SOUL_SAND, Tags.Items.SAND, 20000); + laserRecipe(recipeOutput, Items.LEATHER, Items.ROTTEN_FLESH, 20000); + laserRecipe(recipeOutput, Items.NETHER_WART, Items.RED_MUSHROOM, 150000); + laserRecipe(recipeOutput, Items.PRISMARINE_SHARD, Items.QUARTZ, 30000); + laserRecipe(recipeOutput, ActuallyItems.CRYSTALLIZED_CANOLA_SEED.get(), ActuallyItems.CANOLA_SEEDS.get(), 2000); + laserRecipe(recipeOutput, ActuallyBlocks.ETHETIC_WHITE_BLOCK.getItem(), Items.QUARTZ_BLOCK, 10); + laserRecipe(recipeOutput, ActuallyBlocks.ETHETIC_GREEN_BLOCK.getItem(), Items.CHISELED_QUARTZ_BLOCK, 10); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/MiningLensGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/MiningLensGenerator.java index 685ca07f6..80f947209 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/MiningLensGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/MiningLensGenerator.java @@ -2,6 +2,7 @@ package de.ellpeck.actuallyadditions.data; import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.crafting.MiningLensRecipe; +import de.ellpeck.actuallyadditions.mod.util.NoAdvRecipeOutput; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.data.recipes.RecipeProvider; @@ -13,6 +14,8 @@ import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.level.ItemLike; import net.neoforged.neoforge.common.Tags; +import javax.annotation.Nonnull; + public class MiningLensGenerator extends RecipeProvider { public MiningLensGenerator(PackOutput packOutput) { super(packOutput); @@ -23,15 +26,9 @@ public class MiningLensGenerator extends RecipeProvider { return "Mining Lens " + super.getName(); } -// @Override //TODO: Flanks do your RecipeOutput wrapper thingy ;) -// protected @Nullable CompletableFuture saveAdvancement(CachedOutput stack, FinishedRecipe finishedRecipe, JsonObject advancementJson) { -// return null; -// //Nope... maybe later... -// } - @Override - protected void buildRecipes(RecipeOutput consumer) { - buildMiningLens(consumer); + protected void buildRecipes(@Nonnull RecipeOutput recipeOutput) { + buildMiningLens(new NoAdvRecipeOutput(recipeOutput)); } // private String getItemName(ItemLike item) { diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/MiscMachineRecipeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/MiscMachineRecipeGenerator.java index 9bc0db19a..9be0cb1dd 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/MiscMachineRecipeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/MiscMachineRecipeGenerator.java @@ -5,6 +5,7 @@ import de.ellpeck.actuallyadditions.mod.crafting.FermentingRecipe; import de.ellpeck.actuallyadditions.mod.crafting.PressingRecipe; import de.ellpeck.actuallyadditions.mod.fluids.InitFluids; import de.ellpeck.actuallyadditions.mod.items.ActuallyItems; +import de.ellpeck.actuallyadditions.mod.util.NoAdvRecipeOutput; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.data.recipes.RecipeProvider; @@ -12,6 +13,8 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.crafting.Ingredient; import net.neoforged.neoforge.fluids.FluidStack; +import javax.annotation.Nonnull; + public class MiscMachineRecipeGenerator extends RecipeProvider { public MiscMachineRecipeGenerator(PackOutput packOutput) { super(packOutput); @@ -22,18 +25,14 @@ public class MiscMachineRecipeGenerator extends RecipeProvider { return "Misc " + super.getName(); } -// @Override //TODO: Flanks do your RecipeOutput wrapper thingy ;) -// protected @Nullable CompletableFuture saveAdvancement(CachedOutput stack, FinishedRecipe finishedRecipe, JsonObject advancementJson) { -// return null; -// //Nope... maybe later... -// } - @Override - protected void buildRecipes(RecipeOutput consumer) { - consumer.accept(folderRecipe("pressing", "canola"), new PressingRecipe( + protected void buildRecipes(@Nonnull RecipeOutput output) { + var recipeOutput = new NoAdvRecipeOutput(output); + + recipeOutput.accept(folderRecipe("pressing", "canola"), new PressingRecipe( Ingredient.of(ActuallyItems.CANOLA.get()), new FluidStack(InitFluids.CANOLA_OIL.get(), 80)), null); - consumer.accept(folderRecipe("fermenting", "refined_canola"), new FermentingRecipe( + recipeOutput.accept(folderRecipe("fermenting", "refined_canola"), new FermentingRecipe( new FluidStack(InitFluids.CANOLA_OIL.get(), 80), new FluidStack(InitFluids.REFINED_CANOLA_OIL.get(), 80), 100), null); }