我目前刚接触修改Minecraft,但我不是Java的初学者。我最近发现有兴趣从昨天开始并获得我的工作区设置。 (在IntelliJ中)。我现在一直在努力注册一个基本项目大约一两个小时,而且我的成绩不足。
尝试/提供项目时出现此错误:
[17:33:59] [Client thread/INFO]: [CHAT] There is no such item with name tm:tutorial_item
这意味着它没有注册。这是我所有课程中的所有代码。提前谢谢!
TutorialMod.java
package com.github.JamesWilsonProductiuons;
import com.github.JamesWilsonProductiuons.items.ModItems;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
@Mod(modid = ModInfo.MOD_ID, name = ModInfo.MOD_NAME, version = ModInfo.MOD_VERSION)
public class TutorialMod {
public void preInit(FMLPreInitializationEvent e){
}
public void init(FMLInitializationEvent e){
}
public void postInit(FMLPostInitializationEvent e){
}
}
ModInfo.java
package com.github.JamesWilsonProductiuons;
public class ModInfo {
public static final String MOD_ID = "tm";
public static final String MOD_NAME = "TutorialMod";
public static final String MOD_VERSION = "1.0";
}
BasicItem.java
package com.github.JamesWilsonProductiuons.items;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
public class BasicItem extends Item{
public BasicItem(String unlocalizedName){
super();
this.setUnlocalizedName(unlocalizedName);
this.setCreativeTab(CreativeTabs.MATERIALS);
}
}
ModItems.java
package com.github.JamesWilsonProductiuons.items;
import net.minecraft.item.Item;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class ModItems {
public static Item tutorialItem = new BasicItem("tutorial_item").setRegistryName("tutorial_item");
public static void CreateItems(){
GameRegistry.register(tutorialItem);
System.out.print("Registered Item");
}
}
CommonProxy.java
package com.github.JamesWilsonProductiuons.proxy;
import com.github.JamesWilsonProductiuons.items.ModItems;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
public class CommonProxy {
public void preInit(FMLPreInitializationEvent e){
ModItems.CreateItems();
}
}
ClientProxy.java
package com.github.JamesWilsonProductiuons.proxy;
public class ClientProxy extends CommonProxy {
}
答案 0 :(得分:1)
好吧,发现了我愚蠢的错误。我忘了添加
@Mod.EventHandler
onInit(),init()和postInit()函数的ontop。
希望这个答案有助于其他人!