【攻略创作】指定物品死亡不掉落?冒险放置破坏?物品锁定?用物品组件试试!

“不会吧,不会吧,都2021年了,还有人不知道手机版nbt和电脑版差别多大吗?”---静远123


首先,物品组件是手机版独有特性,类似但不是java的nbt标签
/give @p 物品 数量 特殊值 物品组件

目前手机版有4种物品组件,分别是can_place_on(可以在冒险模式下把此方块放置在...)、can_destroy(可以在冒险模式下用此物品破坏……)、item_lock(锁定物品)、keep_on_death(使此物品死亡后保留)。

【冒险放置破坏】
如你所见,can_place_oncan_destroy可以使玩家在冒险模式放置和破坏方块

can_place_on具体语句为:
 /give @s 物品 数量 特殊值 {"minecraft:can_place_on":{"blocks":["方块命名空间id"]}}

方块命名空间id可以通过以下方法查询:
输入/setblock ~~~
打一个空格以后,你就可以看到一些方块以及后面对应的英文,这些英文就是方块对应的名称,物品组件中就需要输入这个

如果没有在这里找到,可以直接在wiki上找或者输入一个字母随便试一试

图片来自中文minecraft wiki

例如:我要一个可以在冒险模式下放置在钻石块上且无特殊值的泥土,那么根据wiki,泥土的方块命名空间id是dirt,钻石块的是diamond_block
所以输入: /give @s dirt 1 0 {"minecraft:can_place_on":{"blocks":["diamond_block"]}}

注:方块命名空间id必须是方块,如果是物品会报错

在冒险模式下破坏的格式与上文的放置相似,只需要把place_on换成destroy即可

如果你想要同时允许放置或破坏多种方块,那么在[]
后面加上,再加["方块命名空间id"]即可

例如:我需要一个能破坏泥土沙子钻石镐
根据wiki可知,
沙子的方块命名空间id是sand
钻石镐
是diamond_pickaxe
所以输入:/give @p diamond_pickaxe 1 0 {"minecraft:can_place_on":{"blocks":["dirt"],[sand]}}

值得注意的是,这个物品组件仅仅是为放置和破坏提供可能性,你要一个可以放在钻石块上的钻石是没有什么意义的,因为钻石是物品,不能放置,同样的,也不要想用这个方法来破基岩。 这些效果仅仅在冒险模式下有效,生存和创造模式与一般物品没什么差别。

如果你输入的方块命名空间id物品(不可放置物品),那么游戏会报错

【物品锁定】1.16.2+可用

运用item_lock可以锁定物品,锁定物品又分为2种模式:lock_in_slot(无法移动)和lock_in_inventory(无法移除)

在物品组件处输入:
无法移除:{"minecraft:item_lock":{"mode":"lock_in_inventory"}}
无法移动:{"minecraft:item_lock":{"mode":"lock_in_slot"}}

无法移除模式使物品不能被放进存储方块,丢弃,用于合成,移除(创造模式物品栏)
同时物品左上角会出现金色标签


无法移动除了具有无法移除物品的全部特性,还不能被装备或放下装备移动格子合并或拆分
同时物品左上角会出现红色标签

那么如何移除这些物品呢?


答:/clear 清空自己背包全部物品
/replaceitem entity @s slot.weapon.mainhand 0 air 清空自己手上的物品
除了用魔法来打败魔法,失败也可以掉落这些物品。
那么如何预防玩家死亡来清除这些物品呢?

【单物品死亡不掉落】1.16.2+

这个倒是没有模式之分,只需要复制即可
把这个复制到物品组件的位置,物品就可以实现死亡不掉落
{"minecraft:keep_on_death":{}}

【多个物品组件】
如果你需要同时使用多个物品组件,那么可以在上一个物品组件的{...{}*},在*的位置加上,再加下一个物品组件的文字内容(去除开头结尾的{})
你听着可能一脸懵逼,所以不废话直接上举例


/give @p writable_book 1 0 {"minecraft:item_lock":{"mode":"lock_in_inventory"},"minecraft:keep_on_death":{}}
加粗部分是第二个物品组件,writeable_book是书与笔

【关于高级附魔】

手机版目前不支持做大于5级的高级附魔,想要可以考虑买高级附魔台模组。


你在各种视频平台里看见的up,他们输入指令拿高级附魔物品,是因为他们玩的是java,网易手机版是基岩版


像这位说的是java版NBT标签改高级附魔,像这种情况,对方玩的是java还好,手机版会报错。
各种地图里的高级附魔,一般也是来自模组或者电脑存档转手机存档。
物品组件不能改出高级附魔!至少1.17及以下不行!

【补充】
有人会觉得:哎呀这个物品组件怎么这么复杂啊啊啊啊啊!
实际上看起来复杂是因为它属于原始json文本,这种属于程序员的表达方式我们自然不太懂。
但是这是mc,你懂了也没用,没官方更新你用不了。
所以,和我一样,复制粘贴就行了
我最开始学习这个也是直接复制wiki的举例,然后改参数,然后就慢慢记住了。

【复制粘贴用模板】
冒险放置:
/give @p 物品 1 0 {"minecraft:can_place_on":{"blocks":["方块命名空间id"]}}
冒险破坏:
/give @p 物品 1 0 {"minecraft:can_destroy":{"blocks":["方块命名空间id"]}}
无法移除:
/give @p 物品 1 0 {"minecraft:item_lock":{"mode":"lock_in_inventory"}}
无法移动:
/give @p 物品 1 0 {"minecraft:item_lock":{"mode":"lock_in_slot"}}
死亡不掉落:
/give @p 物品 1 0 {"minecraft:keep_on_death":{}}

文本作者:祖国即是信仰

转自静远123,如有侵权请联系删除

3195次浏览