Minecraft 1.12.2 ForgeMod开发笔记(2.1)
上一个笔记里面我们尝试了一般物品的写法,这则笔记则是对上一则的补充,针对于其他物品的写法
食物,工具,护甲和一般物品的写法差不多,因为这几个都是从Item继承过来的,只不过要创建单独的类来调用一下他的构造方法,因为这几个都不是什么正常物品
一般来说,我们在添加物品的时候只需要将Item,ItemFood等等写好的类实例化就可以了,在注册用的类里面直接实例化
比如我们要创建一个名为beta的食物,直接继承ItemFood而不是Item
setAlwaysEdible是让食物随时可以吃,即使饱腹
在测试用的客户端里,饱食度好像不会下降,即使你给了一个127级的饥饿效果……
实例化的时候,要把参数传进去
hungerHeal是回复的饱食度,saturation暂时不清楚,貌似是食物给予的饱腹效果,第三个iswolffood就是能不能喂狗
注册的时候直接加到第一个物品下面即可,像这样(注意逗号)
至于工具和剑,自行查询接口信息即可
工具在harbinger教程中并没有给出明确的写法,我们右键ItemTool,单击查找用法,发现在外部库中ItemAxe继承了这个类,给出了写法(节选)
仿照ItemAxe写出以下补充写法
上面则是创建了一个只对书橱作用的工具alpha,如果想创建已有的工具,直接继承ItemAxe(斧子)或者ItemPickaxe(锄头)以及ItemSpade(铲子)
值得注意的是,在Java中float变量通常后面加上F,9.0写作9.0F,attackDamageIn和attackSpeedIn代表攻击速度和伤害(懂点英语应该能看出来)
护甲和投掷物在Harbinger介绍的很详细,不再多说
附加资料:
不是很靠谱的查询网站:https://www.tabnine.com/code