782 发表于 2022-5-14 19:39:38

附加包教程第十二期——物品:工具

本帖最后由 782 于 2022-5-29 16:20 编辑


物品(五)
工具
一、前言
在本期教程,我将教大家如何制作自己的工具。
本期教程假定读者已经基本了解第八期(物品:基础)和第十期(物品:武器基础)的内容。
提示:使用此附加包时,必须打开“假日创造者功能”实验性玩法!
static/image/hrline/line4.png
二、耐久度事件
我们的工具在使用后,应该减少1耐久度
所以在events中要有减少耐久度的事件。
就像这样:
"durability_update": {
    "damage": {
      "type": "durability",
      "amount": 1,
      "target": "self"
    }
}
每执行一次这个事件,耐久度都会减少1,这是非常简单的。
static/image/hrline/line8.png
三、minecraft:digger组件
这个组件存放在“components”内。
示例:
"minecraft:digger": {
    "use_efficiency": true,
    "destroy_speeds": [{
      "block": {
            "tags": "q.any_tag('wood')"
      },
      "speed": 8,
      "on_dig": {
            "event": "durability_update"
      }
    }]
}
详解:
“use_efficiency”指定物品是否可以使用效率附魔加快挖掘速度,默认为false,填写布尔值。
“destroy_speeds”定义了可挖掘的方块与速度。

[*]“block”指定可以挖掘什么方块。可以直接填写方块名称的字符串,也可以使用方块标签。
在“block”中,“tags”就是定义方块标签的组件,这个示例中指定了所有木质方块(带有“wood”标签的方块)。
用法:"q.any_tag('标签名称')"。
可用的标签有:

标签名称 意思                                                

wood 木质方块
pumpkin 所有类型的南瓜
plant 草、部分花与树苗
stone 所有石头及其下界变种、末地变种、自然变种和切石变种
metal 矿物块与炼药锅
diamond_pick_diggable 钻石镐可采集方块(包含所有矿石及其变种)
gold_pick_diggable (无)
iron_pick_diggable 铁镐可采集方块(包括所有矿石及其变种)
stone_pick_diggable (无)
wood_pick_diggable (无)
dirt 泥土、砂土和耕地
sand 沙子,红沙
gravel 沙砾
grass 草方块
snow 雪
rail 所有铁轨
water 水?
mob_spawner 刷怪笼
lush_plants_replaceable (无)
azalea_log_replaceable (无)
not_feature_replaceable 箱子、基岩、末地传送门框架、刷怪笼
text_sign 所有类型的告示牌
minecraft:crop 农作物
fertilize_area 两个高的花、凋零玫瑰除外的所有花,绯红菌岩,诡异菌岩,玻璃,苔藓块

[*]“speed”定义挖掘该方块的速度,填写整数。
数值越大,速度越快;数值越小,速度越慢。
[*]这里的“on_dig”定义挖掘后执行的事件,在其中的“event”填写字符串。
这个示例是减少耐久度,可以根据实际情况作修改。

static/image/hrline/line2.png
四、标签
添加特殊的标签可以给工具赋予特别的功能。
已知的标签有:
“minecraft:is_axe”给工具赋予给木头削皮的功能(和斧子一样)
“minecraft:is_hoe”给工具赋予耕地的功能(和锄头一样)
“minecraft:is_pickaxe”可以给工具赋予镐子的能力,但具体未知。
“minecraft:is_sword”可以给工具赋予剑的能力,但具体未知。
“minecraft:is_shovel”(可能不存在)可以给工具赋予铲子的能力,但具体未知。
使用方法:
在“components”中添加标签。
格式:"tag:标签名称"
示例:
"tag:minecraft:is_axe": {}
static/image/hrline/5.gif
五、拓展
在“minecraft:digger”组件中,“destroy_speeds”下方还可以再有一个“on_dig”
这个“on_dig”指定的事件在破坏任何方块后都会触发。
static/image/hrline/2.gif
预告:下一期会教大家制作自己的盔甲

大家的打赏是对楼主最好的鼓励!
附加包教程系列
上一期下一期

粗粗复方一 发表于 2022-5-16 11:39:17

出完盔甲出个马铠行吗

782 发表于 2022-5-16 18:00:14

本帖最后由 782 于 2022-5-16 19:23 编辑

粗粗复方一 发表于 2022-5-16 11:39
出完盔甲出个马铠行吗
我看看
如果不出意料的话
盔甲和马铠在同一期出
毕竟它们俩都属于盔甲的范畴
(可能有点难)
页: [1]
查看完整版本: 附加包教程第十二期——物品:工具