iT邦幫忙

2024 iThome 鐵人賽

DAY 9
0

客製化物品

今天我們來作客製化的物品,這個物品跟客製化方塊一樣,都有自己的特殊效果。有些時候我們在玩Minecraft的時候都希望可以跑快一點,但是騎馬又太麻煩了,如果這個時候可以有提高跑步速度的東西會很方便,那就決定做一支手杖,當玩家使用副手拿著手杖的時候就可以提高跑步速度,而且我們可以先使用Item中已經有的方法來為我們的手杖增加一些好玩的功能,並且我們還要為這個手杖製作3D模型,讓你拿著手杖的時候看到真正的手杖而不是2D圖片,同時我們還可以加入一些物品介紹。

物品

首先我們在ModItem中加入新的物品

public static final Item StaffofNature = registerItem("staff_of_nature", new StaffofNature(new FabricItemSettings()));

這裡的StaffofNature就是我們的新物品自然之杖,我先像是一般物品一樣註冊。
然後記得要提供Model跟texture,就像一般物品一樣。
紋理
https://ithelp.ithome.com.tw/upload/images/20240907/20161797vKawWKvyzw.png
model

{
  "parent": "minecraft:item/generated",
  "textures": {
    "layer0": "como:item/staff_of_nature"
  }
}

接著我們還要在item資料夾中加入custom資料夾,並在裡面加入StaffofNature的 class

public class StaffofNature extends Item {

我們滑鼠對著Item按中鍵,可以跳到Item,看看裡面有甚麼有趣的function可以用
https://ithelp.ithome.com.tw/upload/images/20240908/20161797SuHpG8nQO2.png
這裡有一個方法可以在玩家對實體(所有生物)使用這個物品的時候被呼叫,我們可以複寫這個方法,讓玩家對生物使用物品的時候直接殺死他們

@Override
    public ActionResult useOnEntity(ItemStack stack, PlayerEntity user, LivingEntity entity, Hand hand) {
        entity.kill();
        return super.useOnEntity(stack, user, entity, hand);
    }

這裡會帶入四個參數,物品、玩家、實體跟玩家的手,我們使用entity.kill可以直接殺掉實體

展示
Yes

明天我們來看怎麼做出3D模型的


上一篇
Minecraft Fabric Mod 模組製作 DAY8
下一篇
Minecraft Fabric Mod 模組製作 DAY10
系列文
Minecraft JAVA Fabric 模組製作 : 成為真正的創世神30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言