Difference between revisions of "Template:Skill description"

From Tokyo Afterschool Summoners
Jump to navigation Jump to search
(Attempt at improving categorization)
Line 1: Line 1:
<includeonly><onlyinclude><!--specifying targets-->{{#vardefine:target|{{Skill targets|self={{{target_self|0}}}|team={{{target_my_team|0}}}|enemy={{{target_enemy|0}}}}} {{Skill range|{{{distance|0}}} {{{range_h|0}}} {{{range_v|0}}} {{{range_d|0}}} {{{is_square|0}}}}}
<includeonly><onlyinclude>{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|}}
}}{{#vardefine:desc|<!--apply status-->{{#ifeq:{{{add_status_id|0}}}|0||
}}<!--specifying targets-->{{#vardefine:target|{{Skill targets|self={{{target_self|0}}}|team={{{target_my_team|0}}}|enemy={{{target_enemy|0}}}}} {{Skill range|{{{distance|0}}} {{{range_h|0}}} {{{range_v|0}}} {{{range_d|0}}} {{{is_square|0}}}}}
Apply {{Status|id={{{add_status_id|}}}}} to {{#var:target}}{{#ifeq:{{#var:skill page|false}}|true|[[Category:Skill that uses {{Status name|id={{{add_status_id|}}}}}]]}}
}}{{#vardefine:desc|<!--apply status-->{{#ifeq:{{{add_status_id|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Apply {{Status name|id={{{add_status_id}}}}};{{#var:effect tags}}}}
}}<!--remove status-->{{#ifeq:{{{remove_status_id|0}}}|0||
}}Apply {{Status|id={{{add_status_id|}}}}} to {{#var:target}}{{#ifeq:{{#var:skill page|false}}|true|[[Category:Skill that uses {{Status name|id={{{add_status_id|}}}}}]]}}
{{#if:{{#var:short description|}}|{{Status|id={{{remove_status_id|}}}}}|Remove {{Status|id={{{remove_status_id|}}}}} from {{#var:target}}}}{{#vardefine:short description|true}}
}}<!--remove status-->{{#ifeq:{{{remove_status_id|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Remove {{Status name|id={{{remove_status_id}}}}};{{#var:effect tags}}}}
}}{{#if:{{#var:short description|}}|{{Status|id={{{remove_status_id|}}}}}|Remove {{Status|id={{{remove_status_id|}}}}} from {{#var:target}}}}{{#vardefine:short description|true}}
}}<!--skill advantage-->{{#ifeq:{{{anti_skill_id|0}}}|0||
}}<!--skill advantage-->{{#ifeq:{{{anti_skill_id|0}}}|0||
{{#if:{{#var:short description|}}|{{Skill name|id={{{anti_skill_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)|Deals additional damage against enemies with {{Skill name|id={{{anti_skill_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)}}{{#vardefine:short description|true}}
{{#if:{{#var:short description|}}|{{Skill name|id={{{anti_skill_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)|Deals additional damage against enemies with {{Skill name|id={{{anti_skill_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)}}{{#vardefine:short description|true}}
}}<!--status advantage-->{{#ifeq:{{{anti_status_id|0}}}|0||
}}<!--status advantage-->{{#ifeq:{{{anti_status_id|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Status advantage {{Status name|id={{{anti_status_id}}}}};{{#var:effect tags}}}}
{{#if:{{#var:short description|}}|{{Status|id={{{anti_status_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)|Deals additional damage against enemies with {{Status|id={{{anti_status_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)}}{{#vardefine:short description|true}}
}}{{#if:{{#var:short description|}}|{{Status|id={{{anti_status_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)|Deals additional damage against enemies with {{Status|id={{{anti_status_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)}}{{#vardefine:short description|true}}
}}<!--weapon resistance-->{{#ifeq:{{{reduce_weapon_id|0}}}|0||
}}<!--weapon resistance-->{{#ifeq:{{{reduce_weapon_id|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Weapon resist {{Weapon type|{{{reduce_weapon_id}}}}};{{#var:effect tags}}}}
Reduces damage against enemies with {{Weapon|{{{reduce_weapon_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)
}}Reduces damage against enemies with {{Weapon|{{{reduce_weapon_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)
}}<!--status resistance (unused?)-->{{#ifeq:{{{reduce_status_id|0}}}|0||
}}<!--status resistance (unused?)-->{{#ifeq:{{{reduce_status_id|0}}}|0||
Reduces damage against enemies with {{Status|id={{{reduce_status_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)
Reduces damage against enemies with {{Status|id={{{reduce_status_id}}}}} (x{{Skill effect potency|base={{{mult|0}}}|max={{{mult_max|0}}}}}%)
}}<!--change hp-->{{#ifeq:{{{add_hp|0}}}|0||
}}<!--change hp-->{{#ifeq:{{{add_hp|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|{{#ifexpr:{{{add_hp}}} > 0|Increase|Decrease}} HP;{{#var:effect tags}}}}
{{#ifexpr:{{{add_hp}}} > 0|+}}{{Skill effect potency|base={{{add_hp}}}|max={{{max_add_hp|0}}}}} HP to {{#var:target}}
}}{{#ifexpr:{{{add_hp}}} > 0|+}}{{Skill effect potency|base={{{add_hp}}}|max={{{max_add_hp|0}}}}} HP to {{#var:target}}
}}<!--change cp-->{{#ifeq:{{{add_cp|0}}}|0||
}}<!--change cp-->{{#ifeq:{{{add_cp|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|{{#ifexpr:{{{add_cp}}} > 0|Increase|Decrease}} CP;{{#var:effect tags}}}}
{{#ifexpr:{{{add_cp}}} > 0|+}}{{Skill effect potency|base={{{add_cp}}}|max={{{max_add_cp|0}}}}} CP to {{#var:target}}
}}{{#ifexpr:{{{add_cp}}} > 0|+}}{{Skill effect potency|base={{{add_cp}}}|max={{{max_add_cp|0}}}}} CP to {{#var:target}}
}}<!--change hate-->{{#ifeq:{{{add_hate|0}}}|0||
}}<!--change hate-->{{#ifeq:{{{add_hate|0}}}|0||
{{#ifexpr:{{{add_hate}}} > 0|+}}{{Skill effect potency|base={{{add_hate}}}|max={{{max_add_hate|0}}}}} Hate to {{#var:target}}
{{#ifexpr:{{{add_hate}}} > 0|+}}{{Skill effect potency|base={{{add_hate}}}|max={{{max_add_hate|0}}}}} Hate to {{#var:target}}
}}<!--extra movement-->{{#ifexpr:{{{add_sp_v|0}}} = 0 and {{{add_sp_h|0}}} = 0 ||
}}<!--extra movement-->{{#ifexpr:{{{add_sp_v|0}}} = 0 and {{{add_sp_h|0}}} = 0 ||
{{#ifeq:{{{add_sp_v|0}}}|0|
{{#ifeq:{{{add_sp_v|0}}}|0|
Increases horizontal movement by {{{add_sp_h}}}|{{#ifeq:{{{add_sp_h|0}}}|0|
Increases horizontal movement by {{{add_sp_h}}}{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Add horizontal move;{{#var:effect tags}}}}
Increases vertical movement by {{{add_sp_v}}}|
}}|{{#ifeq:{{{add_sp_h|0}}}|0|
Increases omnidirectional movement by {{{add_sp_h}}}x{{{add_sp_v}}}}}}}
Increases vertical movement by {{{add_sp_v}}}{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Add vertical move;{{#var:effect tags}}}}
}}<!--pushback/pullback-->{{#ifeq:{{{knockback|0}}}|0||
}}|
{{#ifexpr:{{{knockback}}} > 0|Push away|Attract}} {{#var:target}} for {{#expr:abs({{{knockback}}})}} square{{#ifexpr:abs({{{knockback}}}) = 1||s}}
Increases omnidirectional movement by {{{add_sp_h}}}x{{{add_sp_v}}}{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Add horizontal move;Add vertical move;{{#var:effect tags}}}}
}}<!--push left/right-->{{#ifeq:{{{knockback_horizontal|0}}}|0||
}}}}}}
Move {{#var:target}} {{#expr:abs({{{knockback_horizontal}}})}} square{{#ifexpr:abs({{{knockback_horizontal}}}) = 1||s}} to the {{#ifexpr:{{{knockback_horizontal}}} > 0|right|left}}
}}<!--pushback/pullback-->{{#ifeq:{{{knockback|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|{{#ifexpr:{{{knockback}}} > 0|Push|Pull}};{{#var:effect tags}}}}
}}{{#ifexpr:{{{knockback}}} > 0|Push away|Attract}} {{#var:target}} for {{#expr:abs({{{knockback}}})}} square{{#ifexpr:abs({{{knockback}}}) = 1||s}}
}}<!--push left/right-->{{#ifeq:{{{knockback_horizontal|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|{{#ifexpr:{{{knockback_horizontal}}} > 0|Push right|Push left}};{{#var:effect tags}}}}
}}Move {{#var:target}} {{#expr:abs({{{knockback_horizontal}}})}} square{{#ifexpr:abs({{{knockback_horizontal}}}) = 1||s}} to the {{#ifexpr:{{{knockback_horizontal}}} > 0|right|left}}
}}<!--random push-->{{#ifeq:{{{knockback_random|0}}}|0||
}}<!--random push-->{{#ifeq:{{{knockback_random|0}}}|0||
Move {{#var:target}} randomly for {{{knockback_random}}} square{{#ifexpr:{{{knockback_random}}} = 1||s}}
Move {{#var:target}} randomly for {{{knockback_random}}} square{{#ifexpr:{{{knockback_random}}} = 1||s}}
}}<!--push resistance-->{{#ifexpr:{{{regist_move_horizontal|0}}} = 0 and {{{regist_knockback|0}}} = 0 and {{{regist_forcepull|0}}} = 0||
}}<!--push resistance-->{{#ifexpr:{{{regist_move_horizontal|0}}} = 0 and {{{regist_knockback|0}}} = 0 and {{{regist_forcepull|0}}} = 0||
{{#ifexpr:{{{regist_move_horizontal|0}}} >= 99 and {{{regist_knockback|0}}} >= 99 and {{{regist_forcepull|0}}} >= 99|
{{#ifexpr:{{{regist_move_horizontal|0}}} >= 99 and {{{regist_knockback|0}}} >= 99 and {{{regist_forcepull|0}}} >= 99|
Resists all forced movement|{{#ifeq:{{{regist_move_horizontal|0}}}|0||{{#ifexpr:{{{regist_move_horizontal}}} >= 99|
Resists all forced movement{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Resist all push;{{#var:effect tags}}}}
Resists forced horizontal movement|
}}|{{#ifeq:{{{regist_move_horizontal|0}}}|0||{{#ifexpr:{{{regist_move_horizontal}}} >= 99|
Resists forced horizontal movement{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Resist horizontal push;{{#var:effect tags}}}}
}}|
Resists horizontal movement of {{{regist_move_horizontal}}} square(s)}}}}{{#ifeq:{{{regist_knockback|0}}}|0||{{#ifexpr:{{{regist_knockback}}} >= 99|
Resists horizontal movement of {{{regist_move_horizontal}}} square(s)}}}}{{#ifeq:{{{regist_knockback|0}}}|0||{{#ifexpr:{{{regist_knockback}}} >= 99|
Resists forced backward movement|
Resists forced backward movement{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Resist backward push;{{#var:effect tags}}}}
}}|
Resists backward movement of {{{regist_knockback}}} square(s)}}}}{{#ifeq:{{{regist_forcepull|0}}}|0||{{#ifexpr:{{{regist_forcepull}}} >= 99|
Resists backward movement of {{{regist_knockback}}} square(s)}}}}{{#ifeq:{{{regist_forcepull|0}}}|0||{{#ifexpr:{{{regist_forcepull}}} >= 99|
Resists forced forward movement|
Resists forced forward movement{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Resist forward push;{{#var:effect tags}}}}
}}|
Resists forward movement of {{{regist_forcepull}}} square(s)}}}}
Resists forward movement of {{{regist_forcepull}}} square(s)}}}}
}}}}<!--change unit XP-->{{#ifeq:{{{add_exp|0}}}|0||
}}}}<!--change unit XP-->{{#ifeq:{{{add_exp|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Add unit XP;{{#var:effect tags}}}}
Additional XP (+{{Skill effect potency|base={{{add_exp}}}|max={{{max_add_exp|0}}}}}%) to {{#var:target}}
}}Additional XP (+{{Skill effect potency|base={{{add_exp}}}|max={{{max_add_exp|0}}}}}%) to {{#var:target}}
}}<!--collect unit XP-->{{#ifeq:{{{collect_exp|0}}}|0||
}}<!--collect unit XP-->{{#ifeq:{{{collect_exp|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Collect unit XP;{{#var:effect tags}}}}
Collect {{{collect_exp}}}% of earned unit XP to {{#var:target}}
}}Collect {{{collect_exp}}}% of earned unit XP to {{#var:target}}
}}<!--change rank XP-->{{#ifeq:{{{add_rank_exp|0}}}|0||
}}<!--change rank XP-->{{#ifeq:{{{add_rank_exp|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Add rank XP;{{#var:effect tags}}}}
Additional Rank XP (+{{Skill effect potency|base={{{add_rank_exp}}}|max={{{max_add_rank_exp|0}}}}}%) to {{#var:target}}
}}Additional Rank XP (+{{Skill effect potency|base={{{add_rank_exp}}}|max={{{max_add_rank_exp|0}}}}}%) to {{#var:target}}
}}<!--change coin payout-->{{#ifeq:{{{add_money|0}}}|0||
}}<!--change coin payout-->{{#ifeq:{{{add_money|0}}}|0||{{#if:{{#var:skill page|}}|{{#vardefine:effect tags|Add Coin;{{#var:effect tags}}}}
Additional {{Item|コイン}} (+{{Skill effect potency|base={{{add_money}}}|max={{{max_add_money|0}}}}}%) to {{#var:target}}
}}Additional {{Item|コイン}} (+{{Skill effect potency|base={{{add_money}}}|max={{{max_add_money|0}}}}}%) to {{#var:target}}
}}<!--new entries here-->
}}<!--new entries here-->
}}<!--nothing-->{{#if:{{#var:desc|}}||{{#vardefine:desc|No effect}}}}<!--turn intervals-->{{#ifexpr:{{{timing|0}}} != 8 and {{{timing|0}}} != 9|{{#vardefine:desc|{{#if:{{#vardefineecho:turn interval|{{Skill turn interval|interval={{{turn_interval|0}}}|surplus={{{turn_interval_surplus|0}}}|total turn={{{turn_interval_is_total_turn|0}}}}}}}|({{#var:turn interval|}})&#32;}}{{#var:desc}}}}
}}<!--nothing-->{{#if:{{#var:desc|}}||{{#vardefine:desc|No effect}}}}<!--turn intervals-->{{#ifexpr:{{{timing|0}}} != 8 and {{{timing|0}}} != 9|{{#vardefine:desc|{{#if:{{#vardefineecho:turn interval|{{Skill turn interval|interval={{{turn_interval|0}}}|surplus={{{turn_interval_surplus|0}}}|total turn={{{turn_interval_is_total_turn|0}}}}}}}|({{#var:turn interval|}})&#32;}}{{#var:desc}}}}
}}<!--always explicitly state trigger timings-->{{#ifeq:{{{timing|0}}}|9|{{#vardefine:desc|[{{Skill trigger timing|9}}] {{#var:desc}}}}
}}<!--always explicitly state trigger timings-->{{#ifeq:{{{timing|0}}}|9|{{#vardefine:desc|[{{Skill trigger timing|9}}] {{#var:desc}}}}
}}{{#var:desc}}<!--TODO:
}}{{#ifeq:{{#var:skill page|false}}|true|<!--creating subobject-->{{#subobject:effect{{#var:skillnumber}}
| Has skill ID = {{{skill_id|0}}}
| Has skill type = {{#if:{{#var:ar skill page|}}|AR Skill|{{#if:{{#var:charge skill page|}}|Charge Skill|Base Skill}}}}
| Has effect tags = {{#var:effect tags}}|+sep=;
| Has effect min potency = {{{mult|0}}}
| Has effect max potency = {{#ifeq:{{{mult_max|0}}}|0|{{#expr:2 * {{{mult|0}}}}}|{{{mult_max}}}}}
| Has effect targets = {{#ifeq:{{{target_self|0}}}|0||self;}}{{#ifeq:{{{target_my_team|0}}}|0||allies;}}{{#ifeq:{{{target_enemy|0}}}|0||enemies}}|+sep=;
}}|}}{{#var:desc}}<!--TODO:
- state when effect is disabled on supports
- state when effect is disabled on supports
- uhhhh
- uhhhh

Revision as of 16:28, 27 August 2020

This template generates a skill description based on the ingame variables.

Some of the examples (variables with a value of 0 are omitted for easier reading):

{{Skill description
|timing=19
|target_my_team=1
|range_h=99
|range_v=99
|range_d=99
|is_square=1
|mult=100
|mult_max=100
|add_status_id=49
|turn_interval=1
|turn_interval_is_total_turn=1
}}

Apply ArdorATK Up by 1.2x ~ 2.4x, +5CP/turn for 2 turns (Buff) to allies Expression error: Unexpected > operator.

{{Skill description
|timing=18
|target_self=1
|rate_2_use=50
|mult=100
|mult_max=100
|add_status_id=49
|turn_interval=1
|turn_interval_surplus=1
|turn_interval_is_total_turn=1
}}

(Total turns 2, 3, 4...) Apply ArdorATK Up by 1.2x ~ 2.4x, +5CP/turn for 2 turns (Buff) to self

{{Skill description
|timing=1
|target_self=1
|rate_2_use=100
|mult=100
|mult_max=100
|regist_knockback=99
|turn_interval=1
|turn_interval_is_total_turn=1
}}

Resists forced backward movement

{{Skill description
|timing=17
|target_self=1
|rate_2_use=100
|mult=100
|mult_max=100
|add_money=5
|max_add_money=5
|turn_interval=1
|turn_interval_is_total_turn=1
}}

Additional Coin (+5%) to self

{{Skill description
|timing=7
|target_enemy=1
|rate_2_use=50
|mult=100
|mult_max=100
|knockback=-1
|turn_interval=1
|turn_interval_is_total_turn=1
}}

Attract hit units Expression error: Unexpected > operator. for 1 square