今天我們來作客製化的物品,這個物品跟客製化方塊一樣,都有自己的特殊效果。有些時候我們在玩Minecraft的時候都希望可以跑快一點,但是騎馬又太麻煩了,如果這個時候可以有提高跑步速度的東西會很方便,那就決定做一支手杖,當玩家使用副手拿著手杖的時候就可以提高跑步速度,而且我們可以先使用Item中已經有的方法來為我們的手杖增加一些好玩的功能,並且我們還要為這個手杖製作3D模型,讓你拿著手杖的時候看到真正的手杖而不是2D圖片,同時我們還可以加入一些物品介紹。
首先我們在ModItem中加入新的物品
public static final Item StaffofNature = registerItem("staff_of_nature", new StaffofNature(new FabricItemSettings()));
這裡的StaffofNature就是我們的新物品自然之杖,我先像是一般物品一樣註冊。
然後記得要提供Model跟texture,就像一般物品一樣。
紋理
model
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "como:item/staff_of_nature"
}
}
接著我們還要在item資料夾中加入custom資料夾,並在裡面加入StaffofNature的 class
public class StaffofNature extends Item {
我們滑鼠對著Item按中鍵,可以跳到Item,看看裡面有甚麼有趣的function可以用
這裡有一個方法可以在玩家對實體(所有生物)使用這個物品的時候被呼叫,我們可以複寫這個方法,讓玩家對生物使用物品的時候直接殺死他們
@Override
public ActionResult useOnEntity(ItemStack stack, PlayerEntity user, LivingEntity entity, Hand hand) {
entity.kill();
return super.useOnEntity(stack, user, entity, hand);
}
這裡會帶入四個參數,物品、玩家、實體跟玩家的手,我們使用entity.kill可以直接殺掉實體
明天我們來看怎麼做出3D模型的