minecraft forge 1.10 创建工艺配方导致 minecraft 崩溃

minecraft forge 1.10 creating crafting recipes crashes minecraft

我正在尝试制作 mod 但我遇到了这个问题。当我尝试创建工艺配方时,它使我的游戏崩溃。我真的不知道为什么。我尝试使用 Items.COOKED_BEEF 也尝试过 Item.cooked_beef。我导入了我需要的一切,但它仍然不起作用。

package Nedas60.TestMod.init;

import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.common.registry.GameRegistry;

public class ModCrafting {

    public static void register() {
        ItemStack diamond  = new ItemStack(Items.DIAMOND);
        ItemStack beef  = new ItemStack(Items.COOKED_BEEF);
        ItemStack DmdBeef = new ItemStack(ModItems.DiamondBeef);

        GameRegistry.addShapedRecipe(DmdBeef, diamond, beef);
    }
}

Eclipse 说这里一切正常。使用小写字母 Items.cooked_beef 无效。有什么问题?

错误日志:http://pastebin.com/7nmk2tfr

您正试图在未定义形状的情况下添加形状配方。您应该使用无形配方,或使用 1-3 个字符串设置配方形状,每个字符串 1-3 个字符(每行 1 个字符串,行中每个方块 1 个字符)。

形状食谱的一些示例:
//diamond above beef GameRegistry.addShapedRecipe(DmdBeef, "D", "B", 'D', diamond, 'B', beef);

//diamond on the left of beef GameRegistry.addShapedRecipe(DmdBeef, "DB", 'D', diamond, 'B', beef);

//diamond on the left of beef, with a blank space to the left, and 2 blank rows beneath it GameRegistry.addShapedRecipe(DmdBeef, "ADB", "AAA", "AAA", 'D', diamond, 'B', beef);

forge 文档站点上有更多教程和示例,minecraftforums 和谷歌搜索会显示更多。

您使用的字符并不重要,例如您可以使用'@'代表菱形。任何未指定的字符(例如上一个示例中的 'A')将被要求为空白。如果没有指定全部 9 个字符,则可以将指定的字符以正确的形式放在网格中的任何位置。

顺便说一句,标准的 java 做法是让变量以小写字母开头(DmdBeef 应该是 dmdBeef)。