我的世界:/data指令最详细教学 | 您所在的位置:网站首页 › 我的世界手机版复制指令方块怎么弄 › 我的世界:/data指令最详细教学 |
注:封面视频仅娱乐用没有什么实际意义 /data,作为java版独有的指令,拥有着非常强大的功能,允许玩家获取&修改几乎任何对象的nbt数据,然而此指令非常复杂且用法繁多,所以看完本篇你可能依然无法理解,不过你应该能学到一些和朋友装x的技巧 注意:以下所有修改nbt数据的方式对玩家均无效,获取nbt可以用于玩家 语法: data有四个子命令get,merge,modify,remove 这四个子命令又有完全相同的子命令block,entity,storage,分别是方块,实体,命令储存,本篇称为"nbt目标",语法分别为 /data 子命令 block x坐标 y坐标 z坐标 /data 子命令 entity 目标选择器 /data 子命令 storage 命令储存栏命名空间id 其中方块和实体好理解,获取指定坐标的方块nbt或者指定实体的nbt,命令储存可以通过/execute store result storage .... 命令定义,本质就是一个把nbt数据储存在这个storage位置里,命名空间id是你设定的,并且可以通过指令调取这个命名空间id储存的数据,但是如果没有定义一个storage是不能使用storage子命令的,因为没有目标存在 get子命令,获取指定目标nbt /data get nbt目标 路径(可选) 倍率(可选) 路径就是获取指定路径nbt,比如一个实体nbt为{Pos:[1.0d,4.0d,6.0d],Health:20.0f},不填写路径会获取全部nbt,如果填写一个路径,比如这里的Pos就会获取Pos标签后[ ]内数据,填写Health同理,如果填写Pos[0]就会获取Pos对应的[ ]中从左到右数第1个(不存在第0个所以是第1个)数据即"1.0d" 倍率为获取"目标数据x倍率"后数值,比如这里输入/data get entity 此实体 Pos[0] 40.5就会获取到1.0dx40.5也就是40.5d merge子命令,更改指定目标的nbt数据 /data merge nbt目标 {nbt数据} 还是上面那个实体,如果我们输入/data merge entity 此实体 {Health:30.0f,Age:1} 那么此时此实体的nbt会变为{Pos:[1.0d,4.0d,6.0d],Health:30.0f,Age:1},也就是原有的Pos不会改动,Health被新数据覆盖值由20.0f变为30.0f,新增Age:1 modfify子命令,更改指定目标的nbt数据为另一目标的nbt数据 /data modify 获取nbt目标 获取nbt路径 子命令 from 提供nbt目标 提供nbt路径 这里的子命令有5个 append nbt获取数据类型为数列或列表,nbt提供数据适用于此列表,用于将一个从nbt提供者获取到的元素增加到nbt获取者的指定列表/数列末尾 insert nbt获取为数列或列表,nbt提供数据适用于此列表,将nbt提供者指定元素插入nbt获取者指定列表/数列第个位置 merge 提供和获取都为复合标签,将nbt提供者的指定复合标签所有元素与nbt获取者的指定复合标签合并 prepend nbt获取为列表,nbt提供数据适用于此列表,将nbt提供者的指定数据增加到nbt获取者此列表的开头 set 将nbt获取者的指定数据设定为nbt提供者的指定数据 这个可能有点难以理解,我们还是举个例子,比如说现在有两个实体"路人甲"和"炮灰乙" "路人甲"有{Pos:[1.0d,0.0d,5.0d],Health:1.0f,Motion:[0.0d,0.0d,0.0d]} "炮灰乙"有{Pos:[0.0d,1.0d,4.0d],Health:2.0f} 此时我们输入/data modify entity 路人甲 Pos set from entity 炮灰乙 Pos 那么"路人甲"的Pos标签会和"炮灰乙"的Pos一样即[0.0d,1.0d,4.0d] 当然两个标签可以不同,但是数据类型必须符合上述子命令适用的类型否则无法更改,比如这里的Motion和Pos一样都是列表所以可以更改 比如我们输入/data modify entity 路人甲 Motion set from entity 炮灰乙 Pos 那么"路人甲"的Motion标签会和"炮灰乙"的Pos一样即[0.0d,1.0d,4.0d] remove子命令,移除指定nbt数据 /data remove nbt目标 路径 很好理解,直接删除指定nbt数据 |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |