我正在尝试为一本魔法书制作一个制作配方,你可以将其应用到一把锋利的剑上。我做了 .addEnchantment 但这使它像一把剑一样附魔。
package com.mcrm.uhccm.handlers;
import com.mcrm.uhccm.init.UHCCItems;
import com.mcrm.uhccm.items.EnchantmentBooks;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class RecipeHandler {
static ItemStack vorpal_sword = new ItemStack(UHCCItems.vorpal_sword);
public static void registerCraftingRecipes() {
ItemStack sharp1 = new ItemStack(Items.enchanted_book);
sharp1.addEnchantment(Enchantment.sharpness, 1);
vorpal_sword.addEnchantment(Enchantment.smite, 2);
vorpal_sword.addEnchantment(Enchantment.baneOfArthropods, 2);
GameRegistry.addRecipe(sharp1, new Object[] {"F ", " PP", " PI", 'F',Items.flint,'P',Items.paper,'I',Items.iron_sword});
GameRegistry.addRecipe(vorpal_sword, new Object[] { " B ", " I ", " R ", 'B',Items.bone,'I',Items.iron_sword,'R',Items.rotten_flesh});
GameRegistry.addRecipe(new ItemStack(UHCCItems.golden_head), new Object[] { "GGG", "GHG", "GGG", 'G',Items.gold_ingot,'H',Items.skull});
}
public static void registerFurnaceRecipes() {
}
}
这是我正在使用的代码。
最佳答案
EnchantedBook.addEnchantment(ItemStack, EnchantmentData)
您必须找到 1.8 的正确类名(ItemEnchantedBook
?)并检查方法签名,但该方法在该类上是静态的,并接受一个项目堆栈(您的 vorpal_sword
变量)和要添加的附魔的详细信息(我从 1.14.4 中提取了该签名,因为我没有为 1.8.9 设置开发环境,因为它太旧了)。
应该不会太难,类很小,版本之间应该不会有太大变化。
关于java - 1.8.9 我的世界工艺魔法书模组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57540162/