欢迎光临散文网 会员登陆 & 注册

rawtext详细教学(translate部分及其他)

2023-08-13 18:36 作者:亻尔手目亻尔女马口尼  | 我要投稿

看完这期和上期视频,我虽然不懂,但大受震撼,所以写了篇笔记概括了视频内容qwq

{"rawtext":[         ]}

[ ]可填text,selector,scores,translate

语法:

{"rawtext":[{"<类型>":"<内容>"} ( ,{"<类型2>":"内容2"}........) ]} 

-------------------

text:输出指定文本

-------------------

{"rawtext":[{"text":"<内容>"}]}

<内容>填什么输出什么

如果<内容>填"qwq",  那么输出"qwq"

如果<内容>填"awa",  那么输出"awa"

---------------------------

selector:输出实体(玩家)名

---------------------------

{"rawtext":[{"selector":"<目标选择器>"}]}

<目标选择器>填什么输出哪个实体的名字(不受数量限制)

假设目前主世界有

2名玩家:Tom,John

3个(非玩家)实体:僵尸,村民,铁傀儡

如果<目标选择器>填@a,                  那么输出:Tom,John

如果<目标选择器>填@e,                  那么输出:Tom,John,僵尸,村民,铁傀儡

如果<目标选择器>填@e[type=!player],       那么输出:僵尸,村民,铁傀儡

----------------

score:输出分数

----------------

{"rawtext":[{"score":{"name":"<目标>","objective":"<目标计分板>"}}]}

根据<目标>和<目标计分板>输出<目标>在<目标计分板>的分数

假设目前有一个计分板<scores>

有项目:<Tom>1分(玩家),<僵尸>2分(实体),<qwq>3分(项目)

如果<目标>填<Tom>(<目标计分板>填<scores>),  那么输出1

如果<目标>填@a(<目标计分板>填<scores>),     那么输出1

如果<目标>填@e(<目标计分板>填<scores>),     那么报错

因为<目标>只能填一个实体(项目)

-------------------------------

translate:输出灵活多变の文本 

-------------------------------

①{"rawtext":[{"translate":"<内容>"}]}

<内容>填什么输出什么

<内容>填预翻译文本就根据玩家语言来输出玩家语言的文本

类似于text

如果<内容>填"qwq",  那么输出"qwq"

如果<内容>填"awa",  那么输出"awa"

如果<内容>填"multiplayer.player.left",那么输出

中文语言:  离开了游戏

英文语言:  left the game

这里的"multiplayer.player.left"是mojang的预翻译文本,输出后会根据玩家语言来发生变化

②{"rawtext":[{"translate":"%%<数量>","with":<内容>}]}

根据<数量>来输出<内容>中(内容数量不受限制)第<数量>个文本

同样类似于text

如果<数量>填2,<内容>填"qwq,awa"(必须带有双引号,外面要套一层 [ ] (中括号)),那么输出awa

*<数量>最大是9*

<内容>可以是json文本(套娃)

如果<数量>填2,<内容>填{"rawtext":[{"text":"qwq"},{"text:awa"}]},那么输出awa

translate还有一个特性:跳过不存在的实体

所以我们可以用selector来控制显示哪些文本

如: {"rawtext":[{"translate":"%%2","with":{"rawtext":[{"selector":"@e[tag=凑数的]"},{"text":"qwq"},{"text":"awa"}]}}]}

当 有"凑数的"标签的实体(玩家) 存在时输出qwq,反之输出awa

虽然<数量>的上限是9,但是我们可以通过套娃的方式来增长

如: {"rawtext":[{"translate":"%%9","with":{"rawtext"[{"text":"1"},{"text":"2"},{"text":"3"},{"text":"4"},{"text":"5"},{"text":"6"},{"text":"7"},{"text":"8"},{"translate":"%%2","with":"9","10"}]}}]}

原理:translate实际上是根据<数量>来输出第<数量>个<内容>该输出的内容(仅限套娃的语句),这种操作搭配selector使用更佳

第一次写笔记,有点紧张,有什么错误请各位大佬指出qwq

rawtext详细教学(translate部分及其他)的评论 (共 条)

分享到微博请遵守国家法律