本帖最后由 mc3124076548 于 2021-10-30 03:02 编辑 
比如说/data get entity lzh_2 SelectedItem得到的结果是一个复合标签
 
 
也没有什么其他办法,可以让复合标签转成字符串类型?
之前我在https://www.mcbbs.net/thread-1270946-1-1.html里通过命令方块的LastOutput来获取了指令的结果,
结果是字符串类型直接转进Item.tag.display.Name
比如说/data get entity lzh_2 SelectedItem得到的结果是一个复合标签
 
也没有什么其他办法,可以让复合标签转成字符串类型?
之前我在https://www.mcbbs.net/thread-1270946-1-1.html里通过命令方块的LastOutput来获取了指令的结果,
结果是字符串类型直接转进Item.tag.display.Name
听不懂能不能来个通俗点的
⊙v⊙ 发表于 2021-10-30 04:42
听不懂能不能来个通俗点的
mc3124076548 发表于 2021-10-29 23:56
SelectedItem的nbt不是复值变量吗,能不能想办法转成字符串"{id:"command_block",Count:1}" ...
可以用牌子nbt得到这种的
/setblock ~ ~1 ~ oak_sign{Text1:'{"nbt":"SelectedItem","entity":"@p"}'} replace
'{"text":{Count:1b,id:\\"minecraft:command_block\\"}"}'
⊙v⊙ 发表于 2021-10-30 15:35
可以用牌子nbt得到这种的
/setblock ~ ~1 ~ oak_sign{Text1:'{"nbt":"SelectedItem","entity":"@p"}'} re ...
⊙v⊙ 发表于 2021-10-30 17:54
可以接着用data modify拉到别的地方显示
问一句,整这玩意是干啥
data modify拉到其他地方显示,问题就在于全部nbt是复值,其他能显示的肯定要想办法转成字符串啊。。。。就像图中的这样
 
⊙v⊙ 发表于 2021-10-30 15:35
可以用牌子nbt得到这种的
/setblock ~ ~1 ~ oak_sign{Text1:'{"nbt":"SelectedItem","entity":"@p"}'} re ...
不依赖方块的方法有吗,依赖方块1tick内完成不了全部运算
⊙v⊙ 发表于 2021-10-30 13:01
可以用牌子nbt得到这种的
/setblock ~ ~1 ~ oak_sign{Text1:'{"nbt":"SelectedItem","entity":"@p"}'} re ...
这个方法也并没有什么进步啊,还是要用方块作为媒介
感觉楼主的方法应该就是最好的了,除非以后出新的指令
无敌三脚猫 发表于 2021-11-4 00:55
这个方法也并没有什么进步啊,还是要用方块作为媒介
感觉楼主的方法应该就是最好的了,除非以后出新的指 ...
主要是拿去做什么,如果只是为了方便查看的话我觉得够了。为了一段字要耗性能来拆,如果长的,不值得
⊙v⊙ 发表于 2021-11-5 11:05
主要是拿去做什么,如果只是为了方便查看的话我觉得够了。为了一段字要耗性能来拆,如果长的,不值得 ...
只是为了查看的话,data get直接显示在聊天栏就行了
拿去做什么呢?唔,楼主他是把物品的nbt转化成了一块鸡肉的名字,而我只是想要个技术储备罢了,还没想到做什么,就像我是刚刚看了一个https://www.mcbbs.net/thread-1274358-1-1.html我觉得值得记下来,尽管我暂时用不到
诶,我想到我之前答过一个https://www.mcbbs.net/thread-1259042-1-1.html
其实答得不好,要是当时我会楼主这个方法,就能把物品完整的nbt信息显示上去了,不用show_text,直接用show_item,就像某些聊天插件干的那样