开启辅助访问     
收藏本站

站内搜索

搜索

Minecraft(我的世界)苦力怕论坛

[BE教程] 附加包教程第十七期——物品:物品组件(1)

 发表于 2022-6-3 14:57:46|显示全部楼层|阅读模式 IP:江苏省
本帖最后由 782 于 2022-6-4 15:31 编辑


物品(十)
物品组件(1)

一、前言
上一期,我们学习了有关物品的事件函数;
今天,我们就来学习物品的组件。
提示:由于这些组件均为1.16.100实验性组件,必须打开“假日创造者功能”实验性玩法!
(没有作用或功能未知的均不列出)
备注:内容太多,分两期

二、正文
minecraft:damage
定义物品的伤害点数
示例:
  1. {
  2.     "minecraft:damage": 5
  3. }
复制代码


minecraft:armor
定义盔甲给予的护甲值等内容
参数:
  • “protection”:定义盔甲给予的护甲值,填写整数。
  • “texture_type”:(具体功能未知)定义适用于盔甲的纹理类型,填写字符串。
    可用值:
    none:无
    leather:皮革
    chain:锁链
    iron:铁
    diamond:钻石
    gold:金
    elytra:鞘翅
    turtle:海龟壳
    netherite:下界合金

示例:
  1. {
  2.     "minecraft:armor":{
  3.         "protection": 5,
  4.         "texture_type": "diamond"
  5.     }
  6. }
复制代码


minecraft:block_placer
让物品可以在某种方块上放置方块
参数:
  • “block”:指定要放置的方块,填写字符串。
  • “use_on”:指定方块可以放在什么方块上的一个数组或字符串。留空则允许所有方块。

示例:
  1. {
  2.     "minecraft:block_placer":{
  3.         "block": "seeds",
  4.         "use_on" : ["dirt", "grass"]
  5.     }
  6. }
复制代码


minecraft:cooldown
设置物品使用后的冷却时间
参数:
  • “category”:指定冷却的类型,填写字符串。可能是自定义字符串。
  • “duration”:定义冷却时间,单位为秒,填写浮点数(小数)。

示例:
  1. {
  2.     "minecraft:cooldown":{
  3.         "category" : "ender_pearl",
  4.         "duration" : 0.2
  5.     }
  6. }
复制代码


minecraft:digger
定义物品可以挖掘的方块及速度
参数:
  • “use_efficiency”:指定物品是否可以使用效率附魔加快挖掘速度,默认为false,填写布尔值。
  • “destroy_speeds”:定义挖掘方块的类型与速度等内容,数组内还包含:
    • “block”:指定挖掘的方块,填写字符串。亦可使用方块标签。
    • “speed”:定义挖掘速度,填写整数。
    • “on_dig”内的“event”:指定挖掘此方块后执行的事件,填写字符串。
  • “on_dig”内的“event”:指定挖掘任何方块后后执行的事件,填写字符串。

示例:
  1. {
  2.     "minecraft:digger": {
  3.         "use_efficiency": true,
  4.         "destroy_speeds": [
  5.             {
  6.                 "block": {
  7.                     "tags": "query.any_tag('stone', 'metal')"
  8.                 },
  9.                 "speed": 6,
  10.                 "on_dig": {
  11.                     "event": "on_dig"
  12.                 }
  13.             }
  14.         ]
  15.     }
  16. }
复制代码


minecraft:display_name
定义物品的显示名称
示例:
  1. {
  2.     "minecraft:display_name":{
  3.         "value": "secret_weapon"  //显示名称
  4.     }
  5. }
复制代码


minecraft:durability
定义物品的耐久度等信息
参数:
  • “damage_chance”:定义使用后耐久度减少的概率,填写整数或浮点数(小数),默认为100。
  • “max_durability”:定义物品的最大耐久值,填写整数。

示例:
  1. {
  2.     "minecraft:durability":{
  3.         "damage_chance": 0.015, //15%
  4.         "max_durability": 36
  5.     }
  6. }
复制代码


minecraft:dye_powder
为染料定义颜色
参数:
  • “color”:定义该染料是哪种颜色,填写字符串。
    可填值:
    “black”:黑色
    “red”:红色
    “green”:绿色
    “brown”:棕色
    “blue”:蓝色
    “purple”:紫色
    “cyan”:青色
    “silver”:银色
    “gray”:灰色
    “pink”:粉色
    “lime”:酸橙色
    “yellow”:黄色
    “lightblue”:亮蓝色
    “magenta”:红紫色
    “orange”:橙色
    “white”:白色

示例:
  1. {
  2.     "minecraft:dye_powder":{
  3.         "color" : "purple"
  4.     }
  5. }
复制代码


minecraft:entity_placer
让物品可以在某种方块上生成实体
参数:
  • “dispense_on”:指定该物品可以被发射器发射在其上的方块,是一个数组或字符串。留空则允许所有方块。
  • “entity”:要生成的实体,填写字符串。
  • “use_on”:指定方块可以放在什么方块上的一个数组或字符串。留空则允许所有方块。

示例:
  1. {
  2.     "minecraft:entity_placer":{
  3.         "dispense_on": "",
  4.         "entity" : "minecraft:spider",
  5.         "use_on" : "minecraft:web"
  6.     }
  7. }
复制代码


minecraft:food
定义可食用物品(食物)
参数:
  • “can_always_eat”:说明食物是否在不饥饿时食用,默认为false,填写布尔值。
  • “effects”:定义食物食用后给予的效果,内有参数:
    “name”指定了效果名称,填写字符串。
    “chance”指定获得该效果的概率,填写浮点数(小数)。
    填写的数就是把百分比换算成小数结果,
    例如,食用生鸡肉有30%的概率获得饥饿效果,就填写“0.3”表示30%。
    “duration”表示效果获得后持续的时间,填写整数。
    这里和上方截然相反,这里是秒,不是游戏刻。
    “amplifier”表示效果等级,填写整数。
  • “nutrition”:定义食物食用后所恢复的饥饿值,默认为0,填写整数。
  • “on_consume”:定义食物食用后执行的事件。
  • “saturation_modifier”:定义食物所恢复饱和度与恢复饥饿值公式的字符串,可用的值有:
    “poor”(差)、“low”(低)、“normal”(普通)、“high”(高)、“good”(好)、“max”(极好)、“supernatural”(超自然)
  • “using_converts_to”:食物被食用后,将会转换为什么东西,填写字符串。

示例:
  1. {
  2.     "minecraft:food":{
  3.        "can_always_eat": false,
  4.         "nutrition" : 3,
  5.         "effects" : [
  6.               {
  7.                 "name": "poison",
  8.                 "chance": 1.0,
  9.                 "duration": 5,
  10.                 "amplifier": 0
  11.               }
  12.         ],
  13.         "saturation_modifier": "normal",
  14.         "using_converts_to": "bowl"
  15.     }
  16. }
复制代码


minecraft:fuel
定义燃料物品
参数:
  • “duration”:定义燃料能烧炼的总时长,单位为秒,填写浮点数(小数),最小值0.05。

示例:
  1. {
  2.     "minecraft:fuel":{
  3.         "duration": 3.0
  4.     }
  5. }
复制代码


minecraft:knockback_resistance
定义盔甲物品的抗击退能力
参数:
  • “protection”:定义盔甲提供的抗击退能力,填写浮点数(小数),最大值为1.0

示例:
  1. {
  2.     "minecraft:knockback_resistance":{
  3.         "protection": 0.5
  4.     }
  5. }
复制代码


minecraft:icon
为物品定义图标
参数:
  • “legacy_id”:旧版物品纹理的数据值,填写整数,目前好像没什么用。
  • “texture”:指定在“资源包/textures/item_texture.json”中“texture_data”定义的纹理,填写字符串。

示例:
  1. {
  2.     "minecraft:icon":{
  3.         "legacy_id": 1,
  4.         "texture": "oak_slab"
  5.     }
  6. }
复制代码


minecraft:on_use
指定物品使用后执行什么事件
示例:
  1. {
  2.     "minecraft:on_use":{
  3.         "on_use": "minecraft:entity_transformed"  //要触发的事件
  4.     }
  5. }
复制代码


minecraft:on_use_on
指定物品在方块上使用后执行什么事件
示例:
  1. {
  2.     "minecraft:on_use_on":{
  3.         "on_use_on": "minecraft:entity_transformed"  //要触发的事件
  4.     }
  5. }
复制代码


minecraft:item_storage
定义一个可以收纳东西的物品,类似于收纳袋
参数:
  • “capacity”:该物品可收纳最多的物品,填写整数,最大值为64。

示例:
  1. {
  2.     "minecraft:item_storage": {
  3.         "capacity": 64
  4.     }
  5. }
复制代码



预告:下一期会接着讲物品组件
大家的打赏是对楼主最好的鼓励!
附加包教程系列
上一期  下一期

评分

参与人数 2铁粒 +30收起理由
 WZM*** + 10谢谢大佬
 lxh*** + 20给个答复嘛

查看全部评分

苦力怕论坛,感谢有您~
 发表于 2022-6-3 20:32:14 来自手机|显示全部楼层 IP:江西省
要我说一个我的世界模组制作器就可以搞定这些东西,还更简单。
2#2022-6-3 20:32:14回复收起回复
苦力怕论坛,感谢有您~
 楼主|  发表于 2022-6-3 20:36:03|显示全部楼层 IP:江苏省
梦落轻寻 发表于 2022-6-3 20:32
要我说一个我的世界模组制作器就可以搞定这些东西,还更简单。

Minecraft Addons Maker? 340C6B7B-06B9-4728-88E8-2C9B14634889.jpeg
这个我有,但功能太少,广告太多,限制太多
3#2022-6-3 20:36:03回复收起回复
苦力怕论坛,感谢有您~
 发表于 2022-6-3 21:04:20 来自手机|显示全部楼层 IP:江西省
782 发表于 2022-6-3 20:36
Minecraft Addons Maker?
这个我有,但功能太少,广告太多,限制太多

缺少的地方用你这个方法补上去不就得了吗?
4#2022-6-3 21:04:20回复收起回复
苦力怕论坛,感谢有您~
 发表于 2022-6-3 22:26:17 来自手机|显示全部楼层 IP:湖北省
梦落轻寻 发表于 2022-6-3 21:04
缺少的地方用你这个方法补上去不就得了吗?


批量生成简单的项目确实好用,复杂的还是手写方便。并且软件生成的代码一言难尽.........
5#2022-6-3 22:26:17回复收起回复
苦力怕论坛,感谢有您~
 发表于 2022-6-3 22:30:32 来自手机|显示全部楼层 IP:湖北省
梦落轻寻 发表于 2022-6-3 21:04
缺少的地方用你这个方法补上去不就得了吗?

大部分较新的特性也没有实现支持,例如地物中的自定义群系功能早已失效,而AddMaker却仍然没有将其剔除
6#2022-6-3 22:30:32回复收起回复
苦力怕论坛,感谢有您~
 楼主|  发表于 2022-6-4 07:26:21|显示全部楼层 IP:江苏省
送你的执念 发表于 2022-6-3 22:30
大部分较新的特性也没有实现支持,例如地物中的自定义群系功能早已失效,而AddMaker却仍然没有将其剔除 ...

还有那最烦人的广告
做稍微高级点的东西就要VIP
7#2022-6-4 07:26:21回复收起回复
苦力怕论坛,感谢有您~
 发表于 2022-12-20 09:32:41 来自手机|显示全部楼层 IP:广东省
782 发表于 2022-6-4 07:26
还有那最烦人的广告
做稍微高级点的东西就要VIP

大大,有什么定义可以让食物能使用多次吗,还有那个类似收纳袋的定义实际上是有问题的
8#2022-12-20 09:32:41收起回复
WZMint2023-9-8 15:12IP:贵州省
回复举报
多次使用没必要吧?一次多获得几个不就行了?
WZMint2023-9-8 15:13IP:贵州省
回复举报
如果你是想可以无限次吃的话很简单,用minecraft:food里面的using_converts_to就行了啊
gskshxjx回复WZMint2023-9-22 21:00IP:广东省
回复举报
老实说,搁多久了,那个物品多次我是用在药品上的。。。问题我也解决了,哥们真把我当成新手了😕,可以看点我新的addon,https://b23.tv/dluT7SC
WZMint回复gskshxjx2023-9-23 10:50IP:贵州省
回复举报
哈哈,尴尬,没注意看时间😂
WZMint回复gskshxjx2023-9-23 10:59IP:贵州省
回复举报
搞了半天我才是新手
苦力怕论坛,感谢有您~

本版积分规则

本站
关于我们
联系我们
坛史纲要
官方
哔哩哔哩
技术博客
下载
网易版
安卓版
JAVA
反馈
意见建议
教程中心
更多
捐助本站
QQ群
QQ群

QQ群

访问手机版

访问手机版

手机版|小黑屋|系统状态|klpbbs.com

粤公网安备 44200002445329号 | 由 木韩网络 提供支持 | GMT+8, 2024-12-22 22:50

声明:本站与Mojang以及微软公司没有从属关系

Powered by Discuz! X3.4 粤ICP备2023071842号-3