模板:Exclusive

来自Terraria Wiki
跳到导航 跳到搜索
此模板使用了 Lua。
此模板使用了用 Lua 编程语言编写的 模块:Exclusive。要了解 Lua 的更多信息,参见 en:Terraria Wiki:Lua
This template is i18n-ready, which means it is easy to localize for different languages. Please see I18n & l10n for templates to learn more.
See Template:Exclusive/l10n for the localization of this template.
Template-info.svg 文档 以下文档来自Template:Exclusive/doc。(编辑 | 历史

This template displays a banner denoting exclusivity of the content following it (usually an entire article) to one or more versions of Terraria.

Background and concept

Historically, platform exclusivity has been handled statically on the Terraria Wiki. For instance, when the Crimson was first introduced, a {{pc only}} template was put onto its article, since it was exclusive to the Desktop version at that time. When the biome was added to the Console version as well, that template had to be replaced with a {{pc-console only}} template. Similarly, a {{pc icon}} template was used wherever the Crimson was mentioned, e.g. on the article about Hardmode, and had to be replaced when it became available on Console. While this might have been feasible with a small number of articles, the effort to keep the exclusivity information up-to-date grew as the game was updated and ported to other platforms. Therefore, a dynamic system has been put into place that updates all mentions of platform exclusivity automatically.

This dynamic system is based on the idea that the exclusivity information about each entity is stored on its corresponding wiki page. "Entity" is used as a very broad term here, and includes – this is crucial – patch numbers. Once every patch article stores information about the platforms that it was released on, this information can be referenced on the articles that deal with the patch's contents. For example, the Crimson was first released in 1.2, so it is always only available on the platforms on which 1.2 is available. At first, the exclusivity information on the 1.2 article would have read "desktop", and because of the reference, the exclusivity information on the Crimson article would have read "desktop" as well. When 1.2 was made available on Console, its exclusivity information would have been updated to "desktop/console". Thanks to the dynamic system, the exclusivity information about the Crimson would have been updated automatically, because it references 1.2 and 1.2's exclusivity information would have been modified. The line of references can be continued and nested: The Brain of Cthulhu, for instance, can reference the Crimson, the Creeper can reference the Brain of Cthulhu, etc. All of them ultimately refer to 1.2, which is the only page where the exclusivity information needs to be updated.

Usage

{{ exclusive | <entity name> | invert = y/yes/1 | not = <entity name> | section = y/yes/1 | nocat = y/yes/1 | nobanner = y/yes/1 | width = <banner width> | css/style = <custom CSS> | <version parameters> = y/yes/1/n/no/0 | version = <versions> }}

First unnamed parameter

Name of the entity (wiki page name) to reference the exclusivity information from. For example, if set to Moon Lord, then the banner will always display the versions that the Moon Lord is available on. This is often set to a patch number, since there is a clear introduction patch for most entities, but it is sometimes more sensible to set it to another page name, e.g. for items of a group.

Appending a section to the page name is supported, the exclusivity information for the page name will still be gathered (see examples below).

invert

Inverts the exclusivity, i.e. displays the opposite versions. For instance, the opposite of the Moon Lord's exclusivity, which is currently desktop/console/mobile, would be old-gen/3ds. This is useful to refer to versions that do not feature a certain entity, the Moon Lord in this case.

Important note: this disables the Japanese Console version sensor, i.e. a Japanese Console version will never be displayed if $invert is used. This is because exclusivity to this version is separate – all entities that are exclusive to the Japanese Console version are truly exclusive to that version only.

not

Name of a page whose exclusivity information is to be subtracted from the main exclusivity information from the first unnamed parameter. This is useful to refer to versions where the first entity is available, but the second is not. For instance, it could be used when mentioning a feature that was removed from the Slimy Saddle (which was introduced in 1.2.4) in 1.3.0.1. The Slimy Saddle's general exclusivity information is desktop/console/old-gen/mobile, but only old-gen remains when subtracting 1.3.0.1's exclusivity information (which is desktop/console/mobile) from it.

Note that this is evaluated after $invert, i.e. the exclusivity information of the main page is inverted first, and then the exclusivity information of the page from this parameter is subtracted from that.

section

Changes the message text from "This information" to "This section's information", automatically activates nocat=y.

nocat

By default, the template adds the appropriate version content categories if the page is in mainspace. This parameter suppresses that.

nobanner

Prevents displaying the message banner box, thus only categorizes the page. This is usually used on redirect pages.

width

Sets the CSS width of the message banner box.

css or style

Custom CSS for the message banner box.

Version parameters

Override versions from the first unnamed parameter (after $invert and $not are evaluated), or set versions manually if no first unnamed parameter is provided. This is necessary where no reference to another page name is possible, e.g. on articles about patches themselves. Values for all of the following parameters can be y, y, yes, 1, n, no, or 0. $version (see below) can be used alternatively.

电脑版 dsk
desktop
pc
主机版 cns
console
前代主机版 old
oldgen
old-gen
old-gen console
移动版 mbl
mobile
任天堂3DS版 3DS
3ds
日本主机版 jas
japan
japanese
j-console
japanese-console
version

Alternative method to manually override certain versions. The expected format is <platform>-<platform>-<platform>, e.g. desktop-console. Can also be set to all to set all versions. The manual parameters above take precedence over this parameter.

Notes

  • If a page name (first unnamed parameter) is specified and the resulting exclusivity information is all platforms (e.g. due to manual overriding), an {{all versions}} is automatically put on the page.
  • The exclusivity information is stored to the Exclusive Cargo table, which is used as a base for querying the information. This storage only happens on this main wiki (not on language wikis), only if the page is in mainspace, and only if neither $section nor $nocat are set to a positive value.

Examples

Manual versions

Code Result
{{exclusive|desktop=yes}}
电脑版
电脑版独有内容:此信息适用于电脑版泰拉瑞亚
{{exclusive|mobile=yes|3ds=yes}}
移动版任天堂3DS版
移动版/3DS版独有内容:此信息适用于移动版任天堂3DS版泰拉瑞亚
{{exclusive|japan=yes|mobile=yes|3ds=yes}}
日本主机版移动版任天堂3DS版
{{exclusive|desktop=yes|3ds=yes|console=yes}}
电脑版主机版任天堂3DS版
电脑版/主机版/3DS版独有内容:此信息适用于电脑版主机版、和任天堂3DS版泰拉瑞亚
{{exclusive|desktop=yes|3ds=yes|console=yes|section=yes}}
电脑版主机版任天堂3DS版
电脑版/主机版/3DS版独有内容:此章节的信息适用于电脑版主机版、和任天堂3DS版泰拉瑞亚

Versions based on another page

Code Result
{{exclusive|1.3.0.1}}
电脑版主机版移动版
电脑版/主机版/移动版独有内容:此信息适用于电脑版主机版、和移动版泰拉瑞亚
{{exclusive|1.3.0.1#Features and Mechanics}}
电脑版主机版移动版
电脑版/主机版/移动版独有内容:此信息适用于电脑版主机版、和移动版泰拉瑞亚
{{exclusive|1.3.0.1|invert=y}}
前代主机版任天堂3DS版
前代主机版/3DS版独有内容:此信息适用于前代主机版任天堂3DS版泰拉瑞亚
{{exclusive|1.2.4.1|not=1.3.0.1}}
前代主机版
前代主机版独有内容:此信息适用于前代主机版泰拉瑞亚
{{exclusive|1.3.0.1|3ds=y}}
电脑版主机版移动版任天堂3DS版
{{exclusive|1.3.0.1|3ds=y|dsk=n}}
主机版移动版任天堂3DS版
主机版/移动版/3DS版独有内容:此信息适用于主机版移动版、和任天堂3DS版泰拉瑞亚
{{exclusive|1.3.0.1|invert=y|dsk=y}}
电脑版前代主机版任天堂3DS版