User:Samlovesmath/Template:Infobox hero: Difference between revisionsGive feedback
Samlovesmath (talk | contribs) starting overhaul; completed basic style/variable integration |
Samlovesmath (talk | contribs) included automated variables; fixed default images/text; half-created "default" profile |
||
| Line 2: | Line 2: | ||
<templatestyles src="Samlovesmath/Infobox_hero/styles.css" /> | <templatestyles src="Samlovesmath/Infobox_hero/styles.css" /> | ||
<templatestyles src="Samlovesmath/Infobox_hero/themes.css" /><!-- | <templatestyles src="Samlovesmath/Infobox_hero/themes.css" /><!-- | ||
-->{{#vardefine:provided_key|{{{key| | -->{{#vardefine:provided_key|{{{key|}}}}}<!-- | ||
If key provided is an accepted hero_[name] key, use it; | If key provided is an accepted hero_[name] key, use it; | ||
-->{{#ifeq: {{#invoke:Samlovesmath/Infobox_hero|is_hero_key|{{#var:provided_key}}}}|true|{{#vardefine:hero_key|{{#var:provided_key}}}}|<!-- | -->{{#ifeq: {{#invoke:Samlovesmath/Infobox_hero|is_hero_key|{{#var:provided_key}}}}|true|{{#vardefine:hero_key|{{#var:provided_key}}}}|<!-- | ||
Else, if key provided is actually the string *English* name, get the key from it to use it; | Else, if key provided is actually the string *English* name, get the key from it to use it; | ||
-->{{#ifeq:{{#invoke:Samlovesmath/Infobox_hero|en_is_hero_key|{{#var:provided_key}}}}|true| {{#vardefine:hero_key|{{#invoke:HeroData|get_hero_key|{{#var:provided_key}}}}}}|<!-- | -->{{#ifeq:{{#invoke:Samlovesmath/Infobox_hero|en_is_hero_key|{{#var:provided_key}}}}|true| {{#vardefine:hero_key|{{#invoke:HeroData|get_hero_key|{{#var:provided_key}}}}}}|<!-- | ||
Else, fall back on " | Else, fall back on "hero_targetdummy" | ||
-->{{#vardefine:hero_key| | -->{{#vardefine:hero_key|hero_targetdummy}}<!-- | ||
--> | --> | ||
}}}} | }}}} | ||
| Line 14: | Line 14: | ||
Get English string name from current key | Get English string name from current key | ||
-->{{#vardefine:hero_en|{{#invoke:Lang|get_string|hero_key|lang_code_override=en}} }}<!-- | -->{{#vardefine:hero_en|{{#invoke:Lang|get_string|{{#var:hero_key}}|lang_code_override=en}} }}<!-- | ||
-->{{#vardefine:hero_en_herodata|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|Name}} }}<!-- | |||
-->{{#vardefine:hero_lang|{{#invoke:Lang|get_string|{{#var:hero_key}}}} }}<!-- | |||
THEME VARIABLES: | THEME VARIABLES: | ||
| Line 22: | Line 24: | ||
DEPRECATED PARAM VARIABLES: (at least until its all moved over) | DEPRECATED PARAM VARIABLES: (at least until its all moved over) | ||
-->{{#ifeq:{{{no_name|}}}|true|{{#vardefine:show_logo|false}}|{{#vardefine:show_logo|{{{show_logo|}}}}}}}<!-- | -->{{#ifeq:{{{no_name|}}}|true|{{#vardefine:show_logo|false}}|{{#vardefine:show_logo|{{{show_logo|true}}}}}}}<!-- | ||
-->{{#ifeq:{{{no_summary|}}}|true|{{#vardefine: | -->{{#ifeq:{{{no_summary|}}}|true|{{#vardefine:show_hero_tags|false}}|{{#vardefine:show_hero_tags|{{{show_hero_tags|true}}}}}}}<!-- | ||
-->{{#ifeq:{{{no_icon|}}}|true|{{#vardefine: | -->{{#ifeq:{{{no_icon|}}}|true|{{#vardefine:show_icon|false}}|{{#vardefine:show_icon|{{{show_icon|true}}}}}}}<!-- | ||
-->{{#vardefine:quotemark|"}} <!-- for inserting into html | -->{{#vardefine:quotemark|"}}<!-- for inserting into html | ||
| Line 33: | Line 35: | ||
--- Box Background --- | --- Box Background --- | ||
--><div class="infobox-background">[[File:{{#var:theme-bg-image}}|{{#var:theme-bg-height}}|right|link=]]</div> | --><div class="infobox-background">[[File:{{#var:theme-bg-image}}|{{#var:theme-bg-height}}|right|link=]]</div><!-- | ||
--> | |||
{| class="infobox-content" | {| class="infobox-content" | ||
! colspan="2" class="infobox-title" style="font-size: {{{font-size|25px}}};" | | ! colspan="2" class="infobox-title" style="font-size: {{{font-size|25px}}};" |<!-- | ||
---- Title + Name Image + Hero Thumbnail ----> | |||
<div class="infobox-title-hero" style="display: flex; justify-content: space-between;"> | <div class="infobox-title-hero" style="display: flex; justify-content: space-between;"> | ||
<div class="infobox-title-hero-left"></div> | <div class="infobox-title-hero-left"></div> | ||
<div class="infobox-title-hero-middle">{{If lang|{{#ifeq: {{ | <div class="infobox-title-hero-middle">{{If lang|{{#ifeq:{{#var:show_logo}}|true|{{#ifexist:File:{{#var:hero_en}}_name.png|{{Template:Icon/White|[[File:{{#var:hero_en}}_name.png|{{#var:theme-logo-height}}|class=notpageimage]]}}|{{{name|{{#var:hero_lang}}}}}}}|{{{name|{{#var:hero_lang}}}}}}}}}</div> | ||
<div class="infobox-title-hero-right"><div> | <div class="infobox-title-hero-right"><div> | ||
<div class="infobox-title-hero-tornbox" style={{#var:quotemark}}background-color:{{#var:color2}};{{#var:quotemark}}></div> | {{#ifeq:{{#var:show_icon}}|true|{{#ifexist:File:{{{icon|{{#var:hero_en}}.png}}}|<div class="infobox-title-hero-tornbox" style={{#var:quotemark}}background-color:{{#var:color2}};{{#var:quotemark}}></div> | ||
<div class="infobox-title-hero-icon"> | <div class="infobox-title-hero-icon">[[File:{{{icon|{{#var:hero_en}}.png}}}|center|35px]]</div></div> | ||
</div> | </div>|}}}}<!-- | ||
---- Hero Image Card ----> | |||
|- | |- | ||
! colspan="2" class="infobox-image" style="margin:auto; border:none; --secondaryColor: {{#var:color2}};" |<div> | ! colspan="2" class="infobox-image" style="margin:auto; border:none; --secondaryColor: {{#var:color2}};" |<div>{{#ifexist: File:{{{card|{{#var:hero_en_herodata}} card.png}}}|[[File:{{{card|{{#var:hero_en_herodata}} card.png}}}|190px|alt={{{BASEPAGENAME}}}]]|[[File:Dummy card.png|190px|alt={{{BASEPAGENAME}}}]]}}</div><!-- | ||
---- Weapon Name ----> | |||
|- | |- | ||
!colspan="2" class="infobox-text-weapon infotext-bold" | <span class="infotext-title">{{#invoke:Lang|get_string|CitadelCategoryWeapon}}:</span><br><span class="infotext-bold infotext-bigger">''"{{{weapon_name|{{#invoke:HeroData|get_hero_var|{{#var: | !colspan="2" class="infobox-text-weapon infotext-bold" | {{#if: {{{weapon_name|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|NameKey|true}}}}}|<span class="infotext-title">{{#invoke:Lang|get_string|CitadelCategoryWeapon}}:</span><br><span class="infotext-bold infotext-bigger">''"{{{weapon_name|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|NameKey|true}}}}}"''</span>|}}<!-- | ||
---- "Base Statistics" ----> | |||
|- | |- | ||
!colspan="2" class="infobox-text-stat-subtitle" style="border-top: solid 3px {{#var:color2}};"| | !colspan="2" class="infobox-text-stat-subtitle" style="border-top: solid 3px {{#var:color2}};"| | ||
<span class="infotext-bold infotext-title infotext-big">{{#invoke:Lang|get_string|Citadel_HeroPage_BaseStats}}</span> | <span class="infotext-bold infotext-title infotext-big">{{#invoke:Lang|get_string|Citadel_HeroPage_BaseStats}}</span><!-- | ||
---- Weapon Dropdown ----> | |||
|- | |- | ||
! colspan="2" class="infobox-subsection infobox-dropdown infobox-dropdown-weapon" | | ! colspan="2" class="infobox-subsection infobox-dropdown infobox-dropdown-weapon" | | ||
{| class="mw-collapsible mw-collapsed infobox-subsection-child" | {| class="mw-collapsible mw-collapsed infobox-subsection-child" | ||
|+ class="infobox-dropdown-header" | [[Stats{{If_lang}}#Weapon|<span class="infotext-bold infobox-dropdown-title">{{#invoke:Lang|get_string|CitadelHeroStats_Weapon}}</span>]] | |+ class="infobox-dropdown-header" | [[Stats{{If_lang}}#Weapon|<span class="infotext-bold infobox-dropdown-title">{{#invoke:Lang|get_string|CitadelHeroStats_Weapon}}</span>]] | ||
|- | |-<!-- | ||
<!---- Damage per second ----> | ---- Damage per second ----> | ||
| [[Damage per second{{If_lang}}|<span>{{#invoke:Lang|get_string|DPS_label}}</span>]]: | | [[Damage per second{{If_lang}}|<span>{{#invoke:Lang|get_string|DPS_label}}</span>]]: | ||
| style="white-space: nowrap;" | {{Icon/Brown|[[File:Damage.png|20px|link=Damage per second{{If_lang}}]]|{{{dps|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;" | {{Icon/Brown|[[File:Damage.png|20px|link=Damage per second{{If_lang}}]]|{{{dps|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|DPS|3}}}}}}} | ||
|- | |-<!-- | ||
<!---- Bullet Damage ----> | ---- Bullet Damage ----> | ||
| [[Bullet Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletDamage}}</span>]]: | | [[Bullet Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletDamage}}</span>]]: | ||
| style="white-space: nowrap; padding-right: 5px;" | {{Icon/Brown|[[File:Bullet damage.png|20px|link=Bullet Damage{{If_lang}}]]|{{{bullet_damage|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap; padding-right: 5px;" | {{Icon/Brown|[[File:Bullet damage.png|20px|link=Bullet Damage{{If_lang}}]]|{{{bullet_damage|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|BulletDamage|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|BulletDamage}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|BulletDamage}}}} | ||
|- | |- | ||
<!---- Ammo ----> | <!---- Ammo ----> | ||
| [[Ammo{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_ClipSizeBonus}}</span>]]: | | [[Ammo{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_ClipSizeBonus}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Clip size icon.png|20px|link=Ammo{{If_lang}}]]|{{{ammo|{{#ifeq: {{{no_ammo|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Grey|[[File:Clip size icon.png|20px|link=Ammo{{If_lang}}]]|{{{ammo|{{#ifeq: {{{no_ammo|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|ClipSize|3}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|ClipSize}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|ClipSize}}}}}}}}} | ||
|- | |- | ||
<!---- Bullets per sec ----> | <!---- Bullets per sec ----> | ||
| [[Fire_Rate{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_RoundsPerSecond}}</span>]]: | | [[Fire_Rate{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_RoundsPerSecond}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Bullets per sec icon.png|20px|link=Fire Rate{{If_lang}}]]|{{{bullets_per_sec|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Grey|[[File:Bullets per sec icon.png|20px|link=Fire Rate{{If_lang}}]]|{{{bullets_per_sec|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|RoundsPerSecond|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|RoundsPerSecond}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|RoundsPerSecond}}}} | ||
|- | |- | ||
<!---- Reload Time ----> | <!---- Reload Time ----> | ||
| [[Reload Time{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_ReloadTime}}</span>]]: | | [[Reload Time{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_ReloadTime}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Grey|[[File:AttributeIconReloadTime.png|20px|link=Reload Time{{If_lang}}]]|{{{reload_time|{{#ifeq: {{{no_ammo|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Grey|[[File:AttributeIconReloadTime.png|20px|link=Reload Time{{If_lang}}]]|{{{reload_time|{{#ifeq: {{{no_ammo|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|ReloadTime|3}}s}}}}}}} | ||
|- | |- | ||
<!---- Bullet Velocity ----> | <!---- Bullet Velocity ----> | ||
| [[Bullet Velocity{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletSpeed}}</span>]]: | | [[Bullet Velocity{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletSpeed}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Grey|[[File:AttributeIconBulletSpeed.png|20px|link=Bullet Velocity{{If_lang}}]]|{{{bullet_velocity|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Grey|[[File:AttributeIconBulletSpeed.png|20px|link=Bullet Velocity{{If_lang}}]]|{{{bullet_velocity|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|BulletSpeed|3}}}}}m/s}} | ||
|- | |- | ||
<!---- Light Melee ----> | <!---- Light Melee ----> | ||
| [[Melee Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_LightMeleeDamage}}</span>]]: | | [[Melee Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_LightMeleeDamage}}</span>]]: | ||
| style="white-space: nowrap; padding-right: 5px;"| {{Icon/Brown|[[File:Melee damage.png|20px|link=Melee Damage{{If_lang}}]]|{{{light_melee|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap; padding-right: 5px;"| {{Icon/Brown|[[File:Melee damage.png|20px|link=Melee Damage{{If_lang}}]]|{{{light_melee|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|LightMeleeDamage|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|LightMeleeDamage}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|LightMeleeDamage}}}} | ||
|- | |- | ||
<!---- Heavy Melee ----> | <!---- Heavy Melee ----> | ||
| [[Melee Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HeavyMeleeDamage}}</span>]]: | | [[Melee Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HeavyMeleeDamage}}</span>]]: | ||
| style="white-space: nowrap; padding-right: 5px;"| {{Icon/Brown|[[File:Melee damage.png|20px|link=Melee Damage{{If_lang}}]]|{{{heavy_melee|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap; padding-right: 5px;"| {{Icon/Brown|[[File:Melee damage.png|20px|link=Melee Damage{{If_lang}}]]|{{{heavy_melee|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|HeavyMeleeDamage|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|HeavyMeleeDamage}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|HeavyMeleeDamage}}}} | ||
|- | |- | ||
<!---- Falloff Range ----> | <!---- Falloff Range ----> | ||
| [[Falloff Range{{If_lang}}|<span>{{#invoke:Lang|get_string|CitadelHeroStats_Weapon_Falloff}}</span>]]: | | [[Falloff Range{{If_lang}}|<span>{{#invoke:Lang|get_string|CitadelHeroStats_Weapon_Falloff}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Brown||{{{range|{{#ifeq: {{{no_falloff|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Brown||{{{range|{{#ifeq: {{{no_falloff|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|FalloffStartRange|2}}m <span style="color:#ecac19;">➔</span> {{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|FalloffEndRange|2}}m}}}}}}} | ||
|- | |- | ||
<!---- Maximum Range (Manual Input) ----> | <!---- Maximum Range (Manual Input) ----> | ||
{{#if: {{ | {{#if: {{{max_range|}}} | | ||
{{!}} [[Falloff_Range{{If_lang}}|<span>Max Range</span>]]: | {{!}} [[Falloff_Range{{If_lang}}|<span>Max Range</span>]]: | ||
{{!}} style="font-size: 16px;text-shadow: 1.5px 1.5px 0.8px rgba(0, 0, 0, 0.8);text-align:left"{{!}}{{Icon/Brown|| | {{!}} style="font-size: 16px;text-shadow: 1.5px 1.5px 0.8px rgba(0, 0, 0, 0.8);text-align:left"{{!}}{{Icon/Brown||{{{max_range|}}}}}}} | ||
|- | |- | ||
<!---- Crit Bonus Scale ----> | <!---- Crit Bonus Scale ----> | ||
{{#ifexpr: {{#invoke:HeroData|get_hero_var|{{#var: | {{#ifexpr: {{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|CritDamageBonusPercent|3}} != 0 | | ||
{{!}} [[Weapon Damage{{If_lang}}#Crit_Multiplier|<span>{{#invoke:Lang|get_string|StatDesc_CritDamageBonusScale}}</span>]]: | {{!}} [[Weapon Damage{{If_lang}}#Crit_Multiplier|<span>{{#invoke:Lang|get_string|StatDesc_CritDamageBonusScale}}</span>]]: | ||
{{!}} style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Crit reduction.png|20px|link=Weapon Damage#Crit_Multiplier]]|{{#invoke:HeroData|get_hero_var|{{#var: | {{!}} style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Crit reduction.png|20px|link=Weapon Damage#Crit_Multiplier]]|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|CritDamageBonusPercent|3}}%}}}} | ||
|} | |} | ||
| Line 121: | Line 123: | ||
<!---- Health ----> | <!---- Health ----> | ||
| style="padding-top: 8px;"| [[Health{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HealthAttribute}}</span>]]: | | style="padding-top: 8px;"| [[Health{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HealthAttribute}}</span>]]: | ||
| style="white-space: nowrap; padding-right: 5px; padding-top: 8px;"| {{Icon/Green|[[File:Health.png|20px|link=Health{{If_lang}}]]|{{{max_health|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap; padding-right: 5px; padding-top: 8px;"| {{Icon/Green|[[File:Health.png|20px|link=Health{{If_lang}}]]|{{{max_health|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|MaxHealth|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|MaxHealth}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|MaxHealth}}}} | ||
|- | |- | ||
<!---- Health Regen ----> | <!---- Health Regen ----> | ||
| [[Health Regen{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HealthRegen}}</span>]]: | | [[Health Regen{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HealthRegen}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Health regen.png|20px|link=Health Regen{{If_lang}}]]|{{{health_regen|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Grey|[[File:Health regen.png|20px|link=Health Regen{{If_lang}}]]|{{{health_regen|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|BaseHealthRegen|2}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|BaseHealthRegen}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|BaseHealthRegen}}}} | ||
|- | |- | ||
<!---- Crit Resistance ----> | <!---- Crit Resistance ----> | ||
{{#if: {{{crit_reduction|}}}{{#invoke:HeroData|hero_has_stat|{{#var: | {{#if: {{{crit_reduction|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key}}|CritDamageReceivedPercent}} | | ||
{{!}}[[Damage Resistance{{If_lang}}#Crit_Reduction|<span>{{#invoke:Lang|get_string|StatDesc_CritDamageReceivedScale}}</span>]]: | {{!}}[[Damage Resistance{{If_lang}}#Crit_Reduction|<span>{{#invoke:Lang|get_string|StatDesc_CritDamageReceivedScale}}</span>]]: | ||
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Crit reduction.png|20px|link=Damage Resistance{{If_lang}}#Crit_Reduction]]|{{{crit_reduction|{{#invoke:HeroData|get_hero_var|{{#var: | {{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Crit reduction.png|20px|link=Damage Resistance{{If_lang}}#Crit_Reduction]]|{{{crit_reduction|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|CritDamageReceivedPercent|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|CritDamageReceivedPercent}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|CritDamageReceivedPercent}}}}}} | ||
|- | |- | ||
<!---- Bullet Resistance ----> | <!---- Bullet Resistance ----> | ||
{{#if: {{{bullet_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var: | {{#if: {{{bullet_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key}}|BulletResist}} | | ||
{{!}}[[Damage Resistance{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletArmorDamageReduction}}</span>]]: | {{!}}[[Damage Resistance{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletArmorDamageReduction}}</span>]]: | ||
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Bullet Armor.png|20px|link=Bullet Resist{{If_lang}}]]|{{{bullet_resist|{{#invoke:HeroData|get_hero_var|{{#var: | {{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Bullet Armor.png|20px|link=Bullet Resist{{If_lang}}]]|{{{bullet_resist|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|BulletResist|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|BulletResist}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|BulletResist}}}}}} | ||
|- | |- | ||
<!---- Spirit Resistance ----> | <!---- Spirit Resistance ----> | ||
{{#if: {{{spirit_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var: | {{#if: {{{spirit_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key}}|TechResist}} | | ||
{{!}}[[Damage Resistance{{If_lang}}#Spirit_Resist|<span>{{#invoke:Lang|get_string|StatDesc_TechArmorDamageReduction}}</span>]]: | {{!}}[[Damage Resistance{{If_lang}}#Spirit_Resist|<span>{{#invoke:Lang|get_string|StatDesc_TechArmorDamageReduction}}</span>]]: | ||
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Spirit Armor.png|20px|link=Damage Resistance{{If_lang}}#Spirit_Resist]]|{{{spirit_resist|{{#invoke:HeroData|get_hero_var|{{#var: | {{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Spirit Armor.png|20px|link=Damage Resistance{{If_lang}}#Spirit_Resist]]|{{{spirit_resist|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|TechResist|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|TechResist}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|TechResist}}}}}} | ||
|- | |- | ||
<!---- Melee Resistance ----> | <!---- Melee Resistance ----> | ||
{{#if: {{{melee_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var: | {{#if: {{{melee_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key}}|MeleeResist}} | | ||
{{!}}[[Damage Resistance{{If_lang}}#Melee Resist|<span>{{#invoke:Lang|get_string|StatDesc_MeleeResist}}</span>]]: | {{!}}[[Damage Resistance{{If_lang}}#Melee Resist|<span>{{#invoke:Lang|get_string|StatDesc_MeleeResist}}</span>]]: | ||
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Melee damage.png|20px|link=Damage Resistance{{If_lang}}#Melee Resist]]|{{{melee_resist|{{#invoke:HeroData|get_hero_var|{{#var: | {{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Melee damage.png|20px|link=Damage Resistance{{If_lang}}#Melee Resist]]|{{{melee_resist|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|MeleeResist|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|MeleeResist}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|MeleeResist}}}}}} | ||
|- | |- | ||
<!---- Bullet Lifesteal ----> | <!---- Bullet Lifesteal ----> | ||
{{#if: {{{bullet_lifesteal|}}}{{#invoke:HeroData|hero_has_stat|{{#var: | {{#if: {{{bullet_lifesteal|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key}}|BulletLifesteal}} | | ||
{{!}}[[Lifesteal{{If_lang}}#Bullet Lifesteal|<span>{{#invoke:Lang|get_string|StatDesc_BulletLifesteal}}</span>]]: | {{!}}[[Lifesteal{{If_lang}}#Bullet Lifesteal|<span>{{#invoke:Lang|get_string|StatDesc_BulletLifesteal}}</span>]]: | ||
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:AttributeIconBulletLifesteal.png|20px|link=Lifesteal{{If_lang}}#Bullet Lifesteal]]|{{{bullet_lifesteal|{{#invoke:HeroData|get_hero_var|{{#var: | {{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:AttributeIconBulletLifesteal.png|20px|link=Lifesteal{{If_lang}}#Bullet Lifesteal]]|{{{bullet_lifesteal|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|BulletLifesteal|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|BulletLifesteal}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|BulletLifesteal}}}}}} | ||
|- | |- | ||
<!---- Spirit Lifesteal ----> | <!---- Spirit Lifesteal ----> | ||
{{#if: {{{spirit_lifesteal|}}}{{#invoke:HeroData|hero_has_stat|{{#var: | {{#if: {{{spirit_lifesteal|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key}}|SpiritLifesteal}} | | ||
{{!}}[[Lifesteal{{If_lang}}#Spirit Lifesteal|<span>{{#invoke:Lang|get_string|StatDesc_SpiritLifesteal}}</span>]]: | {{!}}[[Lifesteal{{If_lang}}#Spirit Lifesteal|<span>{{#invoke:Lang|get_string|StatDesc_SpiritLifesteal}}</span>]]: | ||
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:AttributeIconBulletLifesteal.png|20px|link=Lifesteal{{If_lang}}#Spirit Lifesteal]]|{{{spirit_lifesteal|{{#invoke:HeroData|get_hero_var|{{#var: | {{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:AttributeIconBulletLifesteal.png|20px|link=Lifesteal{{If_lang}}#Spirit Lifesteal]]|{{{spirit_lifesteal|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|SpiritLifesteal|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|SpiritLifesteal}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|SpiritLifesteal}}}}}} | ||
|- | |- | ||
<!---- Move Speed ----> | <!---- Move Speed ----> | ||
| [[Move Speed{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_RunSpeed}}</span>]]: | | [[Move Speed{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_RunSpeed}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Green|[[File:Move speed.png|20px|link=Move Speed]]|{{{move_speed|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Green|[[File:Move speed.png|20px|link=Move Speed]]|{{{move_speed|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|MaxMoveSpeed|2}}}}}m/s{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|MaxMoveSpeed}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|MaxMoveSpeed}}}} | ||
|- | |- | ||
<!---- Sprint Speed ----> | <!---- Sprint Speed ----> | ||
| [[Move Speed{{If_lang}}#Sprint|<span>{{#invoke:Lang|get_string|StatDesc_SprintSpeed}}</span>]]: | | [[Move Speed{{If_lang}}#Sprint|<span>{{#invoke:Lang|get_string|StatDesc_SprintSpeed}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Green|[[File:Move speed sprint.png|20px|link=Move Speed#Sprint]]|{{{sprint_speed|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Green|[[File:Move speed sprint.png|20px|link=Move Speed#Sprint]]|{{{sprint_speed|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|SprintSpeed|2}}}}}m/s{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|SprintSpeed}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|SprintSpeed}}}} | ||
|- | |- | ||
<!---- Dash Speed ----> | <!---- Dash Speed ----> | ||
| [[Stamina{{If_lang}}#Dash_Speed|<span>{{#invoke:Lang|get_string|DashSpeed_label}}</span>]]: | | [[Stamina{{If_lang}}#Dash_Speed|<span>{{#invoke:Lang|get_string|DashSpeed_label}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Green|[[File:Springy_boots_icon.png|20px|link=Stamina#Dash_Speed]]|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Green|[[File:Springy_boots_icon.png|20px|link=Stamina#Dash_Speed]]|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|GroundDashSpeed|3}}s{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|GroundDashSpeed}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|GroundDashSpeed}}}} | ||
|- | |- | ||
<!---- Stamina ----> | <!---- Stamina ----> | ||
| [[Stamina{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_Stamina}}</span>]]: | | [[Stamina{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_Stamina}}</span>]]: | ||
| style="white-space: nowrap;"| {{Icon/Green|[[File:Springy_boots_icon.png|20px|link=Stamina]]|{{{stamina|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"| {{Icon/Green|[[File:Springy_boots_icon.png|20px|link=Stamina]]|{{{stamina|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|Stamina|2}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|Stamina}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|Stamina}}}} | ||
|- | |- | ||
<!---- Stamina Cooldown ----> | <!---- Stamina Cooldown ----> | ||
| [[Stamina{{If_lang}}#Cooldown|<span>{{#invoke:Lang|get_string|StatDesc_StaminaCooldown}}</span>]]: | | [[Stamina{{If_lang}}#Cooldown|<span>{{#invoke:Lang|get_string|StatDesc_StaminaCooldown}}</span>]]: | ||
| style="white-space: nowrap;"|{{Icon/Grey|[[File:AttributeIconTechDuration.png|20px|link=Stamina#Cooldown]]|{{{stamina_cooldown|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap;"|{{Icon/Grey|[[File:AttributeIconTechDuration.png|20px|link=Stamina#Cooldown]]|{{{stamina_cooldown|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|StaminaCooldown|2}}}}}s{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|StaminaCooldown}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|StaminaCooldown}}}} | ||
|} | |} | ||
| Line 185: | Line 187: | ||
|- | |- | ||
| style="padding-top: 8px;"| [[Spirit Power{{If_lang}}|<span>{{#invoke:Lang|get_string|SpiritPower_label}}</span>]]: | | style="padding-top: 8px;"| [[Spirit Power{{If_lang}}|<span>{{#invoke:Lang|get_string|SpiritPower_label}}</span>]]: | ||
| style="white-space: nowrap; padding-right: 4px; padding-top: 8px;"| {{Icon/Purple|[[File:Spirit_icon_noborder.png|20px|link=Spirit Power{{If_lang}}]]|{{{spirit_power|{{#invoke:HeroData|get_hero_var|{{#var: | | style="white-space: nowrap; padding-right: 4px; padding-top: 8px;"| {{Icon/Purple|[[File:Spirit_icon_noborder.png|20px|link=Spirit Power{{If_lang}}]]|{{{spirit_power|{{#invoke:HeroData|get_hero_var|{{#var:hero_key}}|TechPower|2}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Level|TechPower}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key}}|Spirit|TechPower}}}} | ||
|} | |}<!-- | ||
---- "Information" ----> | |||
|- | |- | ||
!colspan="2" class="infobox-text-stat-subtitle"| | ! colspan="2" class="infobox-text-stat-subtitle" {{#if:{{{release_date|}}}{{{voice_actor|}}}{{{pronouns|}}}{{{codenames|}}}||style{{=}}"display:none;"}}| | ||
<span class="infotext-bold infotext-title infotext-big">{{#invoke:Dictionary|translate|Information}}</span> | <span class="infotext-bold infotext-title infotext-big">{{#invoke:Dictionary|translate|Information}}</span> | ||
|- | |- | ||
! colspan="2" class="infobox-subsection" | | ! colspan="2" class="infobox-subsection" {{#if:{{{release_date|}}}{{{voice_actor|}}}{{{pronouns|}}}{{{codenames|}}}||style{{=}}"display:none;"}} | | ||
{| class="infobox-subsection-child" | {| class="infobox-subsection-child" | ||
|- | |-<!-- | ||
<!---- Pronouns (Manual Input) ----> | -- Pronouns (Manual Input) ----> | ||
{{#if: {{ | {{#if:{{{pronouns|}}}| | ||
{{!}}Pronouns: | {{!}}Pronouns: | ||
{{!}}{{ | {{!}}{{{pronouns|}}} | ||
}} | }} | ||
|- | |- | ||
<!---- Voice Actor (Manual Input) ----> | <!---- Voice Actor (Manual Input) ----> | ||
{{#if: {{ | {{#if:{{{voice_actor|}}}| | ||
{{!}}{{#invoke:Dictionary|translate|VoiceActor}}: | {{!}}{{#invoke:Dictionary|translate|VoiceActor}}: | ||
{{!}}{{ | {{!}}{{{voice_actor|}}} | ||
}} | }} | ||
|- | |- | ||
<!---- Release Date (Manual Input) ----> | <!---- Release Date (Manual Input) ----> | ||
{{#if: {{ | {{#if:{{{release_date|}}}| | ||
{{!}}[[Heroes by release{{If_lang}}|<span>{{#invoke:Dictionary|translate|ReleaseDate}}</span>]]: | {{!}}[[Heroes by release{{If_lang}}|<span>{{#invoke:Dictionary|translate|ReleaseDate}}</span>]]: | ||
{{!}}{{ | {{!}}{{{release_date|}}} | ||
}} | }} | ||
|- | |- | ||
<!---- Codenames (Manual Input) ----> | <!---- Codenames (Manual Input) ----> | ||
{{#if: {{ | {{#if:{{{codenames|}}}| | ||
{{!}}{{#invoke:Dictionary|translate|Codenames}}: | {{!}}{{#invoke:Dictionary|translate|Codenames}}: | ||
{{!}}{{ | {{!}}{{{codenames|}}} | ||
}} | }} | ||
|} | |} | ||
| Line 233: | Line 235: | ||
{{#ifeq: {{{no_summary|}}}|true | {{#ifeq: {{{no_summary|}}}|true | ||
||{{Quotation|| | ||{{Quotation|| | ||
<div class | <div class{{=}}{{#var:quotemark}}infobox-herotags {{#var:hero_key}}{{#var:quotemark}}> | ||
<div><div class{{=}}"infobox-herotag-back"></div><div class{{=}}"infobox-herotag-text">{{#invoke:HeroData|get_hero_tag|{{#var:hero_en}}|1}}</div></div> | <div><div class{{=}}"infobox-herotag-back"></div><div class{{=}}"infobox-herotag-text">{{#invoke:HeroData|get_hero_tag|{{#var:hero_en}}|1}}</div></div> | ||
<div><div class{{=}}"infobox-herotag-back"></div><div class{{=}}"infobox-herotag-text">{{#invoke:HeroData|get_hero_tag|{{#var:hero_en}}|2}}</div></div> | <div><div class{{=}}"infobox-herotag-back"></div><div class{{=}}"infobox-herotag-text">{{#invoke:HeroData|get_hero_tag|{{#var:hero_en}}|2}}</div></div> | ||