新建一个包
com.zunipe.items
在包里新建一个名为ItemLoader的类,该类将会用于MOD中物品的注册。
草锭的实现
再新建一个名为ItemGrassIngot的类,我们让他继承Item类。
package com.zunipe.items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroup;
public class ItemGrassIngot extends Item
{
public ItemGrassIngot()
{
super(new Item.Properties().tab(ItemGroup.TAB_MISC));
}
}
Forge要求我们返回一个Properties,我们设置草锭的创造模式物品栏为杂项,
下一节我们将建立自己的创造模式物品栏,现在暂且寄放在那里。
然后我们注册这个物品,Forge给我们提供了非常简便的方法。我们在ItemLoader和主类中键入如下代码。
package com.zunipe.items;
import com.zunipe.Utils;
import net.minecraft.item.Item;
import net.minecraftforge.fml.RegistryObject;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraftforge.registries.ForgeRegistries;
public class ItemLoader
{
public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, Utils.MODID);
public static final RegistryObject<Item> grassIngot = ITEMS.register("grass_ingot", ItemGrassIngot::new);
}
package com.zunipe;
import com.zunipe.items.ItemLoader;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
@Mod(Utils.MODID)
public class MoreItem
{
public MoreItem()
{
ItemLoader.ITEMS.register(FMLJavaModLoadingContext.get().getModEventBus());
}
}
一切准备就绪后就可以启动游戏了,你会在杂项里看见你创造的物品。
建立物品的材质
你可能已经发现了你目前的物品还是一坨黑紫的东西,我们该怎么为物品创建一个材质呢?
我们可以在resources里创建如图的文件夹。
然后我们在models/item里新建一个grass_ingot.json文件。
{
"parent": "item/generated",
"textures": {
"layer0": "moreitem:item/grass_ingot"
}
}
这里也是照搬的原版的材质json,然后在textures/item里放入你的材质
grass_ingot.png
这里因为懒得画材质所以直接用了原版铁锭的材质。
让我们进入游戏,就会发现我们创造的草锭已经有了材质了。