第一中文网

第六十章 基岩版的jn文本(破200收藏纪念) (第3/4页)

天才一秒记住【第一中文网】地址:www.dyzww.cc

th.attack.onFire“}]}

最终它会输出:

%1$s 被烧死了

这是怎么回事?因为我们没有指定死亡的东西是什么。如果我们要指定,就得用到translate的配套组件:with

with的值是由多个文本组成的列表。至于为什么是个列表,是因为有些时候会有多个特殊的部分,这时候就需要使用列表来分别指定每个部分是什么。

我们待会再研究具有多个特殊部分的情况。先来试试使用with指定死亡的东西是『张三』:

{“rawtext“:[{“translate“:“death.attack.onFire“,“with“:[“张三“]}]}

这将会输出:张三被烧死了

现在我们再来看看有多个特殊部分的情况:

{“rawtext“:[{“translate“:“death.attack.arrow.item“}]}

这将会输出:%1$s 被%2$s 用%3$s 射杀

这句话虽然很短,但有三个特殊的部分。如何正确指定这三个特殊部分呢?按照从左到右的顺序指定:

{“rawtext“:[{“translate“:“death.attack.arrow.item“,“with“:[“枯藤“,“老树“,“昏鸦“]}]}

这会输出:枯藤被老树用昏鸦射杀

一般情况下,特殊部分会按照从左到右的顺序一一对应列表内的元素。在上面的例子中,%1$s最靠左,“枯藤”也在列表的最左边,因此%1$s就被“枯藤”替换了。剩下的%2$s和%3$s同理。

这就是translate组件一般的用法。除了这个用法外,translate还能被当做text组件一样用,且比text组件多出了一个没啥用的功能:自定义特殊部分

特殊部分有两种自定义的格式:

%%s

%%#(#为列表内元素从左到右排列的序号)

先来说说%%s。%%s的用法和上面的%1$s、%2$s之类的一模一样,都是从左到右一一对应。比如:

{“rawtext“:[{“translate“:“你好%%s!这里有一些关于%%s的说明。“,“with“:[“新手“,“空岛战争“]}]}

这会输出:你好新手!这里有一些关于空岛战争的说明。

%%#的功能和%%s比较不一样。%%#的#实际上是列表内各个元素从左到右的排列数字。比如%%1在上面的列表中就代表着『新手』。也就是说,如果这样子填写:

{“rawtext“:[{“translate“:“你好%%1!这里有一些关于%%1的说明。“,“with“:[“新手“,“空岛战争“]}]}

最终会输出:你好新手!这里有一些关于新手的说明。

上面的例子中,%%s和%%#都是独立使用。如果两者一起使用会发生什么呢?

来看看下面这个例子:

{“rawtext“:[{“translate“:“欢迎来到%%s,%%1!您今日的%%s还未领取!“,“with“:[“Easecation“,“每日签到奖励“,“一个普通的路人“]}]}

猜一猜,最终这会输出什么?

你是不是以为,最终这会输出:欢迎来到Easecation,Easecation!您今日的每日签到奖励还未领取!

如果你这样想,就错了。实际上输出的

本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!

如遇章节错误,请点击报错(无需登陆)

新书推荐

都市超品仙医 活在两个世界 大秦:这个太子总想着造反 与其说瞎话不如 穿越万界:神功自动满级 诛神乾坤 多子多福,仙女都被他抢了怎么办