• 【MineCraft】-- Mod制作物品与方块


    基于上一文章继续,

    下面完成以下功能:制作一个方块和物品,物品有描述信息。

    快速指南 (第一次看请跳过这步)

    如何制作物品与方块

    1、/resources/assets/xxx/lang/...   添加物品或方块id

    例:

    1. item.demo01_item.name=demo01_item
    2. item.demo01_item.desc=this is a demo.
    1. item.demo01_item.name=演示物品
    2. item.demo01_item.desc=这是一个演示的物品,毫无作用

     

    2、com/xxx/xxx/item/ModItems或com/xxx/xxx/blocks/ModBlocks   添加代码

    例:

    方块

    	public static final Block GRID_BLOCK_1 = new BlockBase("demo01_block", Material.GRASS);
    

    物品

    	public static final Item DEMO_ITEM = new ItemBase("demo01_item");
    

     3、/resources/assets/xxx/textures/item(block)/xxx        添加贴图

    4、GenBlockJson.lua  快速配置

    运行bat

    例:

    1. GenItem("misc", "demo01_item");
    2. GenBlock("demo01_block");

    正式开始

     

    找到lang文件下的en_us.lang、zh_cn.lang文件,以下用en、zh代表这两个文件

    一、添加名字

    en文件items注释下面增加:

    item是物品的意思,item后面是物品id,desc是描述的意思。

    1. item.demo01_item.name=demo01
    2. item.demo01_item.desc=this is a demo.

    方块同样,在Blocks注释下面添加:

    但是与物品不同的是不能添加描述。

    tile.demo01_block.name=demo01_block

    zh文件items注释下增加:

    增加的时候先写英文,然后复制到中文zh文件下,把英文改为中文。

    1. item.demo01_item.name=演示物品
    2. item.demo01_item.desc=这是一个演示的物品,毫无作用

    方块:

    tile.demo01_block.name=演示方块

    二、代码

    找到ModItems类增加

    public static final Item 变量名 = new ItemBase("物品id");

    	public static final Item DEMO_ITEM = new ItemBase("demo01_item");

    找到ModBlocks类增加

    public static final Block 变量名 = new BlockBase("方块id",Material.质地之一);

    	public static final Block GRID_BLOCK_1 = new BlockBase("demo01_block", Material.GRASS);
    

    其中质地有个Material类专门存放,选择其中之一,质地即方块样式。

     三、贴图

    准备贴图,可以使用绘图工具(我使用的是GIMP),尽量尺寸为16×16、32×32。

    物品贴图:resources/textures/item/类别

    方块贴图:resources/textures/blocks

    准备贴图

    这里准备两张贴图

    把贴图名字命名为和物品、方块id一样,以防混乱。

     四、配置json

    物品需要一个json,方块需要三个json;

    一键生成json可以减少犯错概率

    提前下载lua

    后面的bat运行需要依赖这个。

    LuaForWindows_v5.1.4-46.exe

    一键生成json

    工程下找到GenBlockJson.lua

     将里面的modeName改成你的modeid

     

     添加:物品:GenItem(“类别”,“物品id”);方块:GenBlock(“方块id”);

    在后面运行bat成功后,以下内容可删可不删。

    1. GenItem("misc", "demo01_item");
    2. GenBlock("demo01_block");

     之后,运行,目录下的这个文件

     

     当出现以下界面,表示成功

    查看models是否出现你的json文件

     

     


    至此,则完成了一个物品和方块的制作。

  • 相关阅读:
    Locality-Driven Dynamic GPU Cache Bypassing
    元宇宙003 | 在虚拟现实中感受到的压力真实吗?
    挂耳式蓝牙耳机哪家的好用,盘点几款最牢固的挂耳式耳机清单
    Google App Campaigns的逻辑及其建议
    容器与容器编排系统
    Java 17新特性,是真的猛,惊呆了!
    汽车网络安全 -- ECU会遭受黑客怎样的攻击?
    没有设计经验的新手如何制作一本电子画册?
    SQL使用场景解决一对多查询、分页、复杂排名等问题之ROW_NUMBER、DENSE_RANK、RANK用法
    2022/08/08 day05:Jedis
  • 原文地址:https://blog.csdn.net/Tir_zhang/article/details/126272182