Minecraft Forge 1.9+ MDK - 注册一个无法使用的基本无纹理项目

时间:2017-02-08 15:39:37

标签: java intellij-idea minecraft minecraft-forge registering

我目前刚接触修改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 {

}

1 个答案:

答案 0 :(得分:1)

好吧,发现了我愚蠢的错误。我忘了添加

@Mod.EventHandler

onInit(),init()和postInit()函数的ontop。

希望这个答案有助于其他人!