1.16.3无法创建物品,但是在1.16.1可以

chaAB


版本信息
你使用的系统:Win10 64
你是用的JDK: jdk1.8.0
你使用的IDE:IntelliJ IDEA
你使用的IDE版本:2020.2.2
Forge版本: forge-1.16.1-32.0.108;forge-1.16.3-34.0.7
Minecraft版本: 1.16.1;1.16.3

错误情况简述
我想在1.16.3的forge中创建一个物品,进入游戏后,没有任何显示,杂项栏、give 命令也找不到。
但是同样的写法在1.16.1却生效了,这是因为具体写法发生了改变?还是forge1.16.3本身的问题?

相关代码

public class ItemTest extends Item{
    public ItemTest(){
        super(new Item.Properties().group(ItemGroup.MATERIALS));
    }
}

public abstract class ItemRegistry {
    public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, "test");
    public static RegistryObject<Item> itemELoyaltyGem = ITEMS.register("item_test", ItemTest::new);
}

@Mod("test")
public class Test{
    public Test() {
        ItemRegistry.ITEMS.register(
                FMLJavaModLoadingContext.get().getModEventBus()
        );
    }
}


FledgeXu


为什么ItemRegistryabstract的……
可能是1.16.3的问题,你去翻翻看Forge的Github看看有没有相关的issue吧。


chaAB


也许手抽了(

我看issue没看到相关的情况,所以我去翻了翻已经更新到.3的mod是怎么实现注册的。
都不是用 DeferredRegister 这种方式……基本都是用 RegistryEvent 来实现注册的。


FledgeXu


看起来没什么问题……你把abstract删了试试。


chaAB


鸠占鹊巢了一个其他mod的工程,同样的代码发现可以了。跟abstract无关,真是神秘……


system


该主题在最后一个回复创建后7天后自动关闭。不再允许新的回复。