t1546542
本帖最后由 t1546542 于 2020-2-28 23:31 编辑

版本:1.12.2
  1. /testforblock ~ ~-1 ~ chain_command_block 1 {LastOutput:"{"extra":[{"color":"red","translate":"commands.generic.usage","with":[{"translate":"commands.gamemode.usage"}]}],"text":"[23:59:58] "}"}
复制代码
每个英文的意思
比如
LastOutput:"{}" 意思:
@SPGoding @Jokey_钥匙 @Chelove_C60




xmdhs

https://minecraft-zh.gamepedia.c ... 3.E6.A0.BC.E5.BC.8F

后面就是正常的 json 了,来这里看
https://minecraft-zh.gamepedia.c ... N.E6.96.87.E6.9C.AC

牛奶泡悠悠
前面的命令部分不再赘述。
数据标签中 LastOutput 指的是上一次命令方块执行的输出,里面是一个原始JSON文本
此处如果没猜错的话是用来检测系统时间的。
您可以尝试在一个命令方块中输入命令“abcdefg”,尝试运行,并通过 blockdata 命令获取方块的数据标签,这能帮助您快速理解。
*利用 blockdata 命令获取方块的数据标签:blockdata <x> <y> <z> {}

t1546542
本帖最后由 t1546542 于 2020-2-29 00:57 编辑

extra干嘛的
translate干嘛的 commands.generic.usage是什么
为什么后面还要用with重复一遍translate
(为什么LastOutput:"{}"里面的引号不用转义)


⊙u⊙
你这是在看获取系统时间吗?...
先丢个问题来源
https://mc.ganxiaozhe.com/mc/mlxt/201812080.html


检测方块的输出
LastOutput显示输出内容
内容由text文本和translate翻译文本拼接而成


相关翻译文本(以1.8内的zh_CN.lang为例)
commands.generic.usage=用法:%s
commands.gamemode.usage=/gamemode <模式> [玩家]


%s为占位符,还有其他的比如
%d
%f
%#$s
%#$d
%#$f
%.#f
%.#d

时间和电量关系...我丢个大佬写的例子
原文链接在这https://www.minecraftforum.net/forums/minecraft-java-edition/redstone-discussion-and/351959-1-12-json-text-component-for-tellraw-title-books
  1. custom.key = Insert %s and %s, followed by %s.

  2. /tellraw @a {"translate":"custom.key","with":["STRING1", "STRING2"]}

  3. Output = Insert STRING1 and STRING2, followed by .
  4. #第一个%s会获取命令中的首个内容STRING1,而第二个%s则获取第二个STRING2。第三个%s也是,但由于with里面没有定义第三个故还回空。
复制代码




翻译时会把%s替换为with里面的第一个内容,既是
用法:/gamemode <模式> [玩家]

然后在补上时间和文本颜色最终结果放回命令方块里的最后输出栏



至于extra,在成书里面应该是最常见的,就不多说了


第一页 上一页 下一页 最后一页