java - 1.8.9 我的世界工艺魔法书模组

标签 java minecraft

我正在尝试为一本魔法书制作一个制作配方,你可以将其应用到一把锋利的剑上。我做了 .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/

相关文章:

java - 无法根据俯仰和偏航正确计算法线/方向 vector

java - 如何通过类路径用另一个 jar 修补一个 jar(替换类文件)

java - 为什么对象的实例会破坏 protected 逻辑?

java - 如何从文本文件中删除内容?

java - logback 日志记录的时间戳错误

java - Craftbukkit : mvn clean install error

java - bukkit 调度程序重复

java - 无法使用 API Java SSL 和证书调用 EWS 服务

java - 尝试正则表达式匹配 Processbuilder 输出时出现异常

java - Java 如何获取网页的全部内容?