Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Template:Cosmetic: Difference between revisions

Template page
mNo edit summary
scavenging/blueprint info now automated + updated templatedata
 
(62 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<includeonly>
{{#seo:|description={{#invoke:CosmeticInfo|getDescription|name={{{name}}}|plain=true}}}}
<infobox>
<infobox>
  <title source="title">
<title source="name">
    <default>{{PAGENAME}}</default>
<default>{{PAGENAME}}</default>
  </title>
</title>
  <data source="image"><format>{{AFix|{{{image}}}|270px}}</format></data>
<data source="name">
  <group>
<format>{{#ifexist: File:{{{name}}}.png|{{AFix|{{{name}}}.png|270px}}|{{AFix|{{{image}}}|270px}}}}</format>
    <header><center>Details</center></header>
</data>
    <data source="type">
<group>
      <format>{{#switch: {{lc:{{{type}}}}}<!--
<header><center>Details</center></header>
  -->| hat = [[File:Hat.png|x18px|center|link=]] [[Category:Hats]]<!--
<data source="name">
  -->| accessory = [[File:Accessory.png|x18px|center|link=]] [[Category:Accessories]]<!--
<format>{{#switch: {{lc:{{#invoke:CosmeticInfo|getCategory|name={{{name}}}}}}}<!--
  -->| aura = [[File:Aura.png|x18px|center|link=]] [[Category:Auras]]<!--
-->| hat = [[File:Hat.png|x18px|center|link=]] [[Category:Hats]]<!--
  -->| trail = [[File:Trail.png|x18px|center|link=]] [[Category:Trails]]<!--
-->| accessory = [[File:Accessory.png|x18px|center|link=]] [[Category:Accessories]]<!--
  -->| cloak = [[File:Cloak.png|x18px|center|link=]] [[Category:Cloaks]]<!--
-->| aura = [[File:Aura.png|x18px|center|link=]] [[Category:Auras]]<!--
      -->| rod = [[File:Rod.png|x18px|center|link=]] [[Category:Rods]]}}</format>
-->| trail = [[File:Trail.png|x18px|center|link=]] [[Category:Trails]]<!--
    </data>
-->| cloak = [[File:Cloak.png|x18px|center|link=]] [[Category:Cloaks]]<!--
    <data source="rarity">
-->| rod = [[File:Rod.png|x18px|center|link=]] [[Category:Rods]]}}</format>
      <format>{{#switch: {{lc:{{{rarity}}}}}<!--
</data>
  -->| common = [[File:Common.png|x18px|center|link=]]<!--
<data source="name">
  -->| uncommon = [[File:Uncommon.png|x18px|center|link=]]<!--
<format>{{#switch: {{#invoke:CosmeticInfo|getRarity|name={{{name}}}}}<!--
  -->| rare = [[File:Rare.png|x18px|center|link=]]<!--
-->| Common = [[File:Common.png|x18px|center|link=]]<!--
  -->| epic = [[File:Epic.png|x18px|center|link=]]<!--
-->| Uncommon = [[File:Uncommon.png|x18px|center|link=]]<!--
  -->| legendary = [[File:Legendary.png|x18px|center|frameless|link=]]<!--
-->| Rare = [[File:Rare.png|x18px|center|link=]]<!--
  -->| mythic = [[File:Mythic.png|x18px|center|link=]]}}[[Category:{{ucfirst:{{{rarity}}}}} Cosmetics]]</format>
-->| Epic = [[File:Epic.png|x18px|center|link=]]<!--
    </data>
-->| Legendary = [[File:Legendary.png|x18px|center|frameless|link=]]<!--
    <data source="rarity2">
-->| Mythic = [[File:Mythic.png|x18px|center|link=]]}}[[Category:{{#invoke:CosmeticInfo|getRarity|name={{{name}}}}} Cosmetics]]</format>
      <format>{{#switch: {{lc:{{{rarity2}}}}}<!--
</data>
  -->| seasonal = [[File:Seasonal.png|x18px|center|link=]]<!--
<data source="name">
  -->| limited = [[File:Limited.png|x18px|center|link=]]}}[[Category:{{ucfirst:{{{rarity2}}}}} Cosmetics]]</format>
<format>{{#switch: {{#invoke:CosmeticInfo|getType|name={{{name}}}}}<!--
    </data>
-->| #default = [[File:{{#invoke:CosmeticInfo|getType|name={{{name}}}}}.png|x18px|center|link=]]<!--
    <data source="chroma_applicable">
-->| Standard = }}[[Category:{{#invoke:CosmeticInfo|getType|name={{{name}}}}} Cosmetics]]</format>
      <format><center>[[File:Icon-Color.png|20px]] Chroma Applicable</center>[[Category:Chroma Applicable Cosmetics]]</format>
</data>
    </data>
<data source="name">
  </group>
<format>{{#ifeq:{{#invoke:CosmeticInfo|isColorable|name={{{name}}}}}|true|<center>[[File:Icon-Color.png|20px]] Colorable</center>[[Category:Colorable Cosmetics]]}}</format>
  <data source="added">
</data>
    <format><center>Added in [[{{{added}}}]]<br />({{PatchDate|{{{added}}}}})</center></format>
<data source="name">
  </data>
<format>{{#switch:{{#invoke:CosmeticInfo|getType|name={{{name}}}}}<!--
  <data source="added_date">
-->| Collector | Limited = [[File:Tradeable.png|x18px|center|link=Tradeable Cosmetics]] [[Category:Tradeable Cosmetics]]}}</format>
    <format><center>Added on {{{added_date}}}</center></format>
</data>
  </data>
</group>
  <group>
<data source="added_in">
    <header><center>Collection</center></header>
<format><center>Added in [[{{{added_in}}}]]<br />({{PatchDate|{{{added_in}}}}})</center></format>
    <data source="collection">
</data>
      <format><center>{{#switch: {{lc:{{{collection}}}}}<!--
<data source="added_date">
  -->| oceanic | natural | mechanical | magical | royal | hidden | special | bonus =<!--
<format><center>Added on {{{added_date}}}</center></format>
  -->[[File:{{ucfirst:{{{collection}}}}} Collection.png|32px|center|link={{ucfirst:{{{collection}}}}} Collection]]<!--
</data>
  --> [[{{ucfirst:{{{collection}}}}} Collection]] [[Category:{{ucfirst:{{{collection}}}}} Collection Cosmetics]]<!--
<group>
  -->| mythic gate = [[File:Icon-Mastery-Gate.png|32px|center|link=Mythic Gate Collection]] [[Mythic Gate Collection]]<!--
<header><center>Collection</center></header>
  --> [[Category:Mythic Gate Collection Cosmetics]]<!--
<data source="name">
  -->| secret styles = [[File:Secret Styles Collection.png|32px|center|link=Secret Styles Collection]] [[Secret Styles Collection]]<!--
<format><center><big>{{Collection|{{#invoke:CosmeticInfo|getCollection|name={{{name}}}}}|abbr=y|size=32px}}</big> [[Category:{{#invoke:CosmeticInfo|getCollection|name={{{name}}}}} Collection Cosmetics]]</center></format>
  --> [[Category:Secret Styles Collection Cosmetics]]<!--
</data>
  -->| pose one = [[File:Icon-Pose.png|32px|center|link=Pose One Collection]] [[Pose One Collection]]<!--
</group>
  --> [[Category:Pose One Collection Cosmetics]]<!--
<group>
  -->| pose two = [[File:Pose Two Collection.png|32px|center|link=Pose Two Collection]] [[Pose Two Collection]]<!--
<header><center>Unlock Hint</center></header>
  --> [[Category:Pose Two Collection Cosmetics]]<!--
<data source="name">
  -->| splinters = [[File:Icon-Splinters-Workshop.png|32px|center|link=Splinters Collection]] [[Splinters Collection]]<!--
<format><center>{{#invoke:CosmeticInfo|getObtainmentHint|name={{{name}}}}}</center></format>
  --> [[Category:Splinters Collection Cosmetics]]<!--
</data>
  -->| tgttos = [[File:Icon TGTTOS.png|32px|center|link=TGTTOS Collection]] [[TGTTOS Collection]]<!--
</group>
  --> [[Category:TGTTOS Collection Cosmetics]]<!--
<group layout="horizontal">
  -->| hitw = [[File:Icon HITW .png|32px|center|link=HITW Collection]] [[HITW Collection]]<!--
<header><center>Value</center></header>
  --> [[Category:HITW Collection Cosmetics]]<!--
<data source="name">
  -->| battle box | bb = [[File:Icon BB.png|32px|center|link=Battle Box Collection]] [[Battle Box Collection]]<!--
<label>[[File:Style Trophy.png|32px]]</label>
  --> [[Category:Battle Box Collection Cosmetics]]<!--
<format>{{#if:{{{style_trophies|}}}|{{{style_trophies}}}|{{#ifeq:{{#invoke:CosmeticInfo|isBonusTrophies|name={{{name}}}}}|false|{{#invoke:CosmeticInfo|getTrophiesAwarded|name={{{name}}}}} {{#ifeq:{{#invoke:CosmeticInfo|isColorable|name={{{name}}}}}|true|([[File:Icon-Color.png|20px]]+10)}}}}}}</format>
  -->| sky battle | skb | sb = [[File:Icon SB.png|32px|center|link=Sky Battle Collection]] [[Sky Battle Collection]]<!--
</data>
  --> [[Category:Sky Battle Collection Cosmetics]]<!--
<data source="name">
  -->| parkour warrior | pkw = [[File:Icon PKW.png|32px|center|link=Parkour Warrior Collection]] [[Parkour Warrior Collection]]<!--
<label>[[File:Bonus Trophy.png|32px]]</label>
  --> [[Category:Parkour Warrior Collection Cosmetics]]<!--
<format>{{#if:{{{bonus_trophies|}}}|{{{bonus_trophies}}}|{{#ifeq:{{#invoke:CosmeticInfo|isBonusTrophies|name={{{name}}}}}|true|{{#invoke:CosmeticInfo|getTrophiesAwarded|name={{{name}}}}} {{#ifeq:{{#invoke:CosmeticInfo|isColorable|name={{{name}}}}}|true|([[File:Icon-Color.png|20px]]+10)}}}}}}</format>
  -->| dynaball | dyb = [[File:Icon DYB.png|32px|center|link=Dynaball Collection]] [[Dynaball Collection]]<!--
</data>
  --> [[Category:Dynaball Collection Cosmetics]]<!--
<data source="name">
  -->| mystical aquatic | season 1 | season one = [[File:Mystical Aquatic Token.png|32px|center|link=Mystical Aquatic Collection]]<!--
<label>[[File:Royal Reputation.png|32px]]</label>
  --> [[Mystical Aquatic Collection]] [[Category:Mystical Aquatic Collection Cosmetics]]<!--
<format>{{#ifexpr:{{#invoke:CosmeticInfo|getReputationAmount|name={{{name}}}}}>0|{{#invoke:CosmeticInfo|getReputationAmount|name={{{name}}}}}}}</format>
  -->| neon galaxy | season 2 | season two = [[File:Neon Galaxy Token.png|32px|center|link=Neon Galaxy Collection]] [[Neon Galaxy Collection]]<!--
</data>
  --> [[Category:Neon Galaxy Collection Cosmetics]]<!--
</group>
  -->| candy factory | season 3 | season three = [[File:Candy Factory Token.png|32px|center|link=Candy Factory Collection]]<!--
<group layout="horizontal">
  --> [[Candy Factory Collection]] [[Category:Candy Factory Collection Cosmetics]]<!--
<header><center>Scavenging</center></header>
  -->| ancient jungle | season 4 | season four = [[File:Ancient Jungle Token.png|32px|center|link=Ancient Jungle Collection]]<!--
<data source="name">
  --> [[Ancient Jungle Collection]] [[Category:Ancient Jungle Collection Cosmetics]]<!--
<label>Cosmetic Token</label>
  -->| squidtek = [[File:Squidtek Ambassador Badge.png|32px|center|link=Squidtek Collection]] [[Squidtek Collection]]<!--
<format>{{#ifexpr:{{#invoke:CosmeticInfo|getReputationAmount|name={{{name}}}}}>0|{{CosmeticScavengeRewards|name={{{name}}}}}}}</format>
  --> [[Category:Squidtek Collection Cosmetics]]<!--
</data>
  -->| spooky = [[File:Spooky Huntmaster Badge.png|32px|center|link=Spooky Collection]] [[Spooky Collection]]<!--
<data source="name">
  --> [[Category:Spooky Collection Cosmetics]]<!--
<label>Blueprint</label>
  -->| aura | trail = [[File:Icon-{{ucfirst:{{{collection}}}}}.png|32px|center|link={{ucfirst:{{{collection}}}}} Collection]]<!--
<format>{{#ifexpr:{{#invoke:CosmeticInfo|getReputationAmount|name={{{name}}}}}>0|{{CosmeticScavengeRewards|name={{{name}}}|Blueprint}}}}</format>
  --> [[{{ucfirst:{{{collection}}}}} Collection]] [[Category:{{ucfirst:{{{collection}}}}} Collection Cosmetics]]}}</center></format>
</data>
    </data>
</group>
  </group>
<group>
  <group>
<header><center>Global Number Owned{{#invoke:CosmeticInfo|lastUpdatedIcon}}</center></header>
    <header><center>Obtaining</center></header>
<data source="name">
    <data source="obtaining">
<format>{{#if:{{#invoke:CosmeticInfo|getGlobalNumberOwned|name={{{name}}}}}|<center>{{#invoke:CosmeticInfo|getGlobalNumberOwned|name={{{name}}}}}</center>}}</format>
    <format><center>{{{obtaining}}}</center></format>
</data>
    </data>
</group>
  </group>
</infobox>
  <group layout="horizontal">
{{#iferror:{{#invoke:CosmeticInfo|getDescription|name={{{name}}}}}||<blockquote>{{#invoke:CosmeticInfo|getDescription|name={{{name}}}}}</blockquote>}}
    <header><center>Value</center></header>
{{#invoke:CosmeticInfo/Paragraph|make|name={{{name}}}|added_date={{{added_date|}}}|added_in={{{added_in|}}}|unlock_method={{{unlock_method|}}}|style_perk={{{style_perk|}}}|crafting_materials={{{crafting_materials|}}}}}</includeonly><noinclude><templatedata>
    <data source="trophies">
    <label>[[File:Style Trophy.png|32px]]</label>
      <format>{{{trophies}}} {{#ifeq: {{{chroma_applicable|}}}|yes|([[File:Icon-Color.png|20px]]+10)|}}</format>
    </data>
    <data source="bonus_trophies">
    <label>[[File:Icon-Champion Score Bonus.png|32px]]</label>
      <format>{{{bonus_trophies}}} {{#ifeq: {{{chroma_applicable|}}}|yes|([[File:Icon-Color.png|20px]]+10)|}}</format>
    </data>
    <data source="reputation">
    <label>[[File:Royal Reputation.png|32px]]</label>
    <format>{{#switch: {{lc:{{{rarity}}}}}<!--
  -->| common = 1<!--
  -->| uncommon = 2<!--
  -->| rare = 3<!--
  -->| epic = 5<!--
  -->| legendary = 7<!--
  -->| mythic = 10}}</format>
    </data>
  </group>
  <group layout="horizontal">
    <header><center>Scavenging</center></header>
    <data source="scavenge_cosmetic">
    <label>Cosmetic Token</label>
    <format>{{#switch: {{lc:{{{rarity}}}}}<!--
  -->| common = 200 [[File:Silver.png|20px]]<!--
  -->| uncommon = 750 [[File:Silver.png|20px]]<!--
  -->| rare = 2,000 [[File:Silver.png|20px]]<!--
  -->| epic = 3,750 [[File:Silver.png|20px]]<!--
  -->| legendary = 6,250 [[File:Silver.png|20px]]<!--
  -->| mythic = 18,000 [[File:Silver.png|20px]]}}</format>
    </data>
    <data source="scavenge_blueprint">
    <label>Blueprint</label>
    <format>{{#switch: {{lc:{{{rarity}}}}}<!--
  -->| common = 50 [[File:Silver.png|20px]]<!--
  -->| uncommon = 150 [[File:Silver.png|20px]]<!--
  -->| rare = 300 [[File:Silver.png|20px]]<!--
  -->| epic = 850 [[File:Silver.png|20px]]<!--
  -->| legendary = 1,200 [[File:Silver.png|20px]]<!--
      -->| mythic = 3,500 [[File:Silver.png|20px]]}}</format>
    </data>
  </group>
  <group>
    <header><center>Global Number Owned{{#invoke:CosmeticOwnership|lastUpdatedIcon}}</center></header>
    <data source="image">
    <format><center>{{#invoke:CosmeticOwnership|getOwnershipNumber|name={{PAGENAME}}}}</center></format>
    </data>
  </group>
</infobox><blockquote>{{#invoke:CosmeticDescription|getDescription|name={{PAGENAME}}}}</blockquote>
<noinclude>
<templatedata>
{
{
"params": {
"params": {
"type": {
"name": {
"type": "string",
"type": "string",
"description": "The cosmetic type",
"description": "The name of the cosmetic",
"suggestedvalues": [
"example": "Frog Friend",
"hat",
"required": true
"accessory",
"aura",
"trail",
"cloak",
                "rod"
],
"suggested": true
},
},
"rarity": {
"image": {
"description": "The rarity of the cosmetic",
"description": "The (animated) image of the cosmetic, if the file is not found at File:{{{name}}}.png",
"suggestedvalues": [
"type": "wiki-file-name"
"common",
"uncommon",
"rare",
"epic",
"legendary",
"mythic"
],
"suggested": true,
"type": "string"
},
},
"rarity2": {
"added_in": {
"description": "The (special) rarity of the cosmetic",
"description": "The patch version the cosmetic was added",
"type": "string",
"type": "string",
"suggestedvalues": [
"example": "0.8.0",
"seasonal",
"required": true
"limited"
]
},
"image": {
"description": "Image or GIF of the cosmetic",
"type": "wiki-file-name",
"suggested": true
},
},
"added": {
"added_date": {
"description": "Patch (& date) the cosmetic was added",
"description": "If not added in a patch, the date on which the cosmetic was added",
"type": "string",
"type": "string",
"suggested": true
"example": "June 12th, 2024"
},
"collection": {
"description": "The collection the cosmetic is part of.",
"suggestedvalues": [
"oceanic",
"natural",
"mechanical",
"magical",
"mythic gate",
"royal",
"secret styles",
"pose one",
"pose two",
"splinters",
"hidden",
"tgttos",
"hitw",
"battle box",
"sky battle",
"parkour warrior",
"dynaball",
"mystical aquatic",
"neon galaxy",
"candy factory",
"ancient jungle",
"squidtek",
"spooky",
"special",
"bonus",
"aura",
"trail"
],
"suggested": true,
"type": "string"
},
"obtaining": {
"description": "A short description of how this cosmetic is obtained",
"suggested": true,
"type": "string"
},
},
"title": {
"unlock_method": {
"description": "Give the infobox a custom title (defaults to page name)",
"description": "If non-standard unlock method, sentences to be used to explain it",
"required": true,
"type": "string"
"type": "string"
},
},
"chroma_applicable": {
"crafting_materials": {
"description": "Is cosmetic chroma applicable",
"description": "If cosmetic has blueprint with a non-standard recipe, the required crafting materials with a break tag between each material.",
"type": "boolean",
"suggested": true
},
"trophies": {
"description": "The amount of trophies received for having this cosmetic",
"type": "string",
"suggested": true
},
"bonus_trophies": {
"description": "The amount of bonus trophies received for having this cosmetic",
"type": "string"
"type": "string"
},
"reputation": {
"description": "The amount of reputation earned for scavenging this cosmetic",
"type": "number",
"suggested": true
},
"scavenge_cosmetic": {
"description": "Is item scavengeable",
"type": "boolean",
"suggested": true
},
"scavenge_blueprint": {
"description": "Is blueprint scavengeable",
"type": "boolean",
"suggested": true
}
}
},
},
"description": "Creates a cosmetic infobox",
"description": "Creates an infobox and various standard sentences for Cosmetics pages.",
"paramOrder": [
"paramOrder": [
"title",
"name",
"image",
"image",
"type",
"added_in",
"rarity",
"added_date",
"rarity2",
"unlock_method",
"chroma_applicable",
"crafting_materials"
"added",
"collection",
"obtaining",
"trophies",
"bonus_trophies",
"reputation",
"scavenge_cosmetic",
"scavenge_blueprint"
]
]
}
}
</templatedata>
</templatedata>
</noinclude>
</noinclude>

Latest revision as of 15:28, 30 August 2025

Creates an infobox and various standard sentences for Cosmetics pages.

Template parameters[Edit template data]

ParameterDescriptionTypeStatus
namename

The name of the cosmetic

Example
Frog Friend
Stringrequired
imageimage

The (animated) image of the cosmetic, if the file is not found at File:{{{name}}}.png

Fileoptional
added_inadded_in

The patch version the cosmetic was added

Example
0.8.0
Stringrequired
added_dateadded_date

If not added in a patch, the date on which the cosmetic was added

Example
June 12th, 2024
Stringoptional
unlock_methodunlock_method

If non-standard unlock method, sentences to be used to explain it

Stringrequired
crafting_materialscrafting_materials

If cosmetic has blueprint with a non-standard recipe, the required crafting materials with a break tag between each material.

Stringoptional