admin管理员组

文章数量:1356701

So was creating the datagen folders for a minecraft mod and when i try to run my code it shows me this error: java.lang.reflect.InvocationTargetException

I created every datagen folder:

package net.jaimunchu.tutorialmod.datagen;

import net.jaimunchu.tutorialmod.TutorialMod;
import net.jaimunchu.tutorialmod.block.ModBlocks;
import net.jaimunchu.tutorialmod.item.ModItems;
import net.minecraft.data.PackOutput;
import net.minecraft.data.recipes.*;
import net.minecraft.world.item.crafting.AbstractCookingRecipe;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.item.crafting.RecipeSerializer;
import net.minecraft.world.level.ItemLike;
import net.minecraftfemon.crafting.conditions.IConditionBuilder;

import java.util.List;
import java.util.function.Consumer;

//ModBlocks.RUBI_ORE.get())., (para cuando tenga el ore_block)

public class ModRecipeProvider extends RecipeProvider implements IConditionBuilder {
    private static final List<ItemLike> RUBI_SMELTEABLES = List.of(ModItems.RAW_RUBI.get());
    public ModRecipeProvider(PackOutput pOutput) {
        super(pOutput);
    }

    @Override
    protected void buildRecipes(Consumer<FinishedRecipe> pWriter) {
        oreSmelting(pWriter, RUBI_SMELTEABLES, RecipeCategory.MISC, ModItems.RUBI.get(), 0.25f, 100, "rubi");
        oreBlasting(pWriter, RUBI_SMELTEABLES, RecipeCategory.MISC, ModItems.RUBI.get(), 0.25f, 100, "rubi");

        ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ModBlocks.RUBI_BLOCK.get())
                .pattern("SSS")
                .pattern("SSS")
                .pattern("SSS")
                .define('S', ModItems.RUBI.get())
                .unlockedBy(getHasName(ModItems.RUBI.get()), has(ModItems.RUBI.get()))
                .save(pWriter);

        ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, ModItems.RUBI.get(), 9)
                .requires(ModBlocks.RUBI_BLOCK.get())
                .unlockedBy(getHasName(ModBlocks.RUBI_BLOCK.get()), has(ModBlocks.RUBI_BLOCK.get()))
                .save(pWriter);
    }
    protected static void oreSmelting(Consumer<FinishedRecipe> pFinishedRecipeConsumer, List<ItemLike> pIngredients, RecipeCategory pCategory, ItemLike pResult, float pExperience, int pCookingTIme, String pGroup) {
        oreCooking(pFinishedRecipeConsumer, RecipeSerializer.SMELTING_RECIPE, pIngredients, pCategory, pResult, pExperience, pCookingTIme, pGroup, "_from_smelting");
    }

    protected static void oreBlasting(Consumer<FinishedRecipe> pFinishedRecipeConsumer, List<ItemLike> pIngredients, RecipeCategory pCategory, ItemLike pResult, float pExperience, int pCookingTime, String pGroup) {
        oreCooking(pFinishedRecipeConsumer, RecipeSerializer.BLASTING_RECIPE, pIngredients, pCategory, pResult, pExperience, pCookingTime, pGroup, "_from_blasting");
    }

    protected static void oreCooking(Consumer<FinishedRecipe> pFinishedRecipeConsumer, RecipeSerializer<? extends AbstractCookingRecipe> pCookingSerializer, List<ItemLike> pIngredients, RecipeCategory pCategory, ItemLike pResult, float pExperience, int pCookingTime, String pGroup, String pRecipeName) {
        for(ItemLike itemlike : pIngredients) {
            SimpleCookingRecipeBuilder.generic(Ingredient.of(new ItemLike[]{itemlike}), pCategory, pResult, pExperience, pCookingTime, pCookingSerializer).group(pGroup).unlockedBy(getHasName(itemlike),
                    has(itemlike)).save(pFinishedRecipeConsumer, TutorialMod.MODID + ":" + getItemName(pResult) + pRecipeName + "_" + getItemName(itemlike));
        }

    }
}

本文标签: Minecraft Mod gives this error javalangreflectInvocationTargetExceptionStack Overflow