More Recipe fixes.

This commit is contained in:
Flanks255 2024-03-04 15:03:46 -06:00
parent c866a404ea
commit 610bf044ee
10 changed files with 101 additions and 113 deletions

View file

@ -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) {

View file

@ -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);
}
}

View file

@ -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
);

View file

@ -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");
}

View file

@ -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);
}

View file

@ -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);

View file

@ -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)

View file

@ -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);
}

View file

@ -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) {

View file

@ -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);
}