[23w13a_or_b]愚人节版本NBT物品教程保真

看看最后的附魔NBT的具体分解和其拓展[doge]
首先,知识:
*大括号{}内只能填写成对的数据(即键值对),如{Invisible:1b,Marker:1b},可以联想每个学生都有一个地址
*中括号[]内存储的是几个数据值,如[0f,45f,-90f],可以联想自动编号,学号为1的就是第一个学生
一个Item可以拥有Enchantments,display等标签,具体体现如下
{Enchantments:【附魔标签】,display:【文字标签】}
该配方的合成方法是:(左右大括号在左上右下,其他按剩下九宫格顺序摆就行)
左大括号,N(命名为Enchantments),【附魔标签】,N(命名为CustomName),【文字标签】,右大括号。
其中【附魔标签】需要按照该标签下的规则填入。比如附魔标签的规则是这样的:
[【附魔项目】,【附魔项目】,...,【附魔项目】]
附魔项目的规则是这样的:
{id:【附魔属性ID(S)】,lvl:【附魔属性等级(I)】}
其中【附魔属性ID】是字符串,即S,将S命名为“minecraft:sharpness”即可做出表示锋利的附魔ID"minecraft:sharpness"。
【附魔属性等级】是整数类型,即I(大写的i),将两个B(Byte)的二进制相接得到的值即为I的值(这个要算比较麻烦)
合成方法为:
左大括号,N(id),S(minecraft:sharpness),N(lvl),I(多少看你想),右大括号。
对应指令:
{id:"minecraft:sharpness",lvl:32767}
将【附魔项目】填入【附魔标签】:
左中括号,【附魔项目】,右中括号。
对应指令:[{id:"minecraft:sharpness",lvl:32767}]
没错,就是加了层中括号
为什么要这么做呢?一样物品上总有可能附魔两种属性吧
当你想附魔两种属性时,你可以将另一个属性也填进来:
左中括号,【附魔项目】,【附魔项目】,右中括号。
以抢夺六为例,对应指令即[{id:"minecraft:sharpness",lvl:32767},{id:"minecraft:looting",lvl:6}]
最后,将这个附魔标签对应到Enchantments,让游戏知道这是附魔标签:
左大括号,N(Enchantments),【附魔标签】,右大括号。
即{Enchantments:[{id:"minecraft:sharpness",lvl:32767}]}
Tips:使用指令“/give @s stick{Enchantments:[{id:"minecraft:sharpness",lvl:32767}]}”就可以给自己一个这样的木棍!
与多种附魔属性类似的,物品上也可以附着多个标签,如display:{Name:'{"text":"你好","color":"green"}'}
不过这个标签中Name直接对应'{"text":"你好","color":"green"}',这整个东西便是一个字符串,需要直接命名给一个S,可能还涉及转义问题,有兴趣的同学们自己去研究哈(不是懒得说)(不是)
【文本标签】:
{Name:'{"text":"你好","color":"green"}'}
加上文本标签的总合成:
左大括号,N(Enchantments),【附魔标签】,N(display),【文本标签】,右大括号。
即{Enchantments:[{id:"minecraft:sharpness",lvl:32767}],display:{Name:'{"text":"你好","color":"green"}'}}