淘先锋技术网

首页 1 2 3 4 5 6 7

注:由于作者对于mod开发也是初出茅庐(甚至Java都还没学会),所以本教程可能有些地方有问题,还请大佬多多包容awa

棕锁粥之,Minecraft中的物品都是通过net.minecraft.item.Item类编写的(除了工具武器和其他一些特殊的物品之外),接下来我就通过一段代码给大家讲解创建一个物品的方法

文件:src\main\java\你的包名\你的模组名.java(如果你没改过文件名就是ExampleMod.java)

package com.mcmod.demo;

import net.fabricmc.api.ModInitializer;

class DemoMod implements ModInitalizer { //假如你的模组名是Javanb那么DemoMod就该替换成JavanbMod
    public static final Item DEMO_ITEM = new Item(new Item.Settings());//创建一个名为DEMO_ITEM的物品
    public static final Logger LOGGER = LoggerFactory.getLogger("demo");
	@Override
	public void onInitialize() {
		Registry.register(Registries.ITEM, new Identifier("demo","demo_item"), DEMO_ITEM);//注册该物品
        LOGGER.info("Demo Mod Load Successful!");
    };
}

除此之外我们还需要一个贴图:src\main\resource\assets\模组ID\texture\item\demo_item.png

和一个贴图设置:src\main\resource\assets\模组ID\models\item\demo_item.json

贴图设置这么写:

{
  "parent": "demo:item/generated",
  "textures": {
    "layer0": "demo:item/demo_item"
  }
}

我们需要把 原版jar文件 用压缩软件打开,将

原版jar.jar\assets\minecraft\models\item\generated.json

 复制到 src\main\resource\assets\模组ID\models\item 下

接着编辑语言文件

zh_cn.json

{
    "demo:item.demo_item": "测试物品"
}

en_us.json

{
    "demo:item.demo_item": "Demo Item"
}

接着我们运行Gradle程序 Demo\Tasks\build\build 等出现Successful标识后在build\libs下找到模组名-版本.jar 把这个文件放在游戏mods文件夹里,启动游戏,输入指令:/give @s demo:demo_item,我们就获得了我们定义的物品,如果材质是紫色黑色棋盘格,去游戏文件夹\logs\latest.txt中看哪里的文件缺失了,补上就行了