Difference between revisions of "Template:Skill range"

From Tokyo Afterschool Summoners
Jump to navigation Jump to search
Line 25: Line 25:
| 2 2 1 0 = in a 2-square diamond radius center
| 2 2 1 0 = in a 2-square diamond radius center
| 1 1 1 0 = in a 3x3 area center
| 1 1 1 0 = in a 3x3 area center
| 0 0 0 0 = center
| 0 0 0 0 = adjust
<!--add new cases here-->
<!--add new cases here-->
| #default = <!--math stuff--><!--filled areas-->{{#ifexpr:{{#var:range s}} > 0|in a {{#expr:1 + 2 * {{#var:range h}}}}x{{#expr:1 + 2 * {{#var:range v}}}} area center
| #default = <!--math stuff--><!--filled areas-->{{#ifexpr:{{#var:range s}} > 0|in a {{#expr:1 + 2 * {{#var:range h}}}}x{{#expr:1 + 2 * {{#var:range v}}}} area center
Line 64: Line 64:
}}}}}}
}}}}}}
-->{{#vardefine:center|
-->{{#vardefine:center|
{{#ifeq:{{#var:range o}}|0||
{{#ifeq:{{#var:range o}}|0|| centered {{#vardefineecho:adjust|{{#ifexpr:{{#var:range o}} > 0
{{#ifexpr:{{#var:range o}} > 0
|<!--front-->{{#ifeq:{{#var:range o}}|1|in front of target|{{#var:range o}} squares in front of target}}
|<!--front-->{{#ifeq:{{#var:range o}}|1|centered in front of target|centered {{#var:range o}} squares in front of target}}
|<!--back-->{{#ifeq:{{#var:range o}}|-1|behind target|{{#expr: -{{#var:range o}}}} squares behind target}}}}
|<!--back-->{{#ifeq:{{#var:range o}}|-1|centered behind target|centered {{#expr: -{{#var:range o}}}} squares behind target}}}}
}}}}}}{{
}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|,&#32;,|}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|,&#32;,|}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|,&#32;,|}}}}<!--{{
#vardefine:range|{{#replace:{{#var:range}}|,&#32;,|}}}}<!--{{
#vardefine:range|{{#replace:{{#var:range}}|,.|}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|,.|}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|.|}}}}-->{{
#vardefine:range|{{#replace:{{#var:range}}|.|}}}}-->{{
#vardefine:range|{{#replace:{{#var:range}}|adjust|{{#var:adjust}}}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|center|{{#var:center}}}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|center|{{#var:center}}}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|target|{{#var:target definition|<abbr title='Either the caster or the unit hit'>target</abbr>}}}}}}{{
#vardefine:range|{{#replace:{{#var:range}}|target|{{#var:target definition|<abbr title='Either the caster or the unit hit'>target</abbr>}}}}}}{{

Revision as of 09:15, 11 August 2020

Description

Parses a string in the format of [distance] [horizontal] [vertical] [diagonal] into something human readable.

Examples

{{Skill range|0 0 0 0 0}}
{{Skill range|1 0 0 2 0}}

2 squares diagonally away from target centered in front of target

{{Skill range|-2 0 0 1 0}}

1 squares diagonally away from target centered 2 squares behind target

{{Skill range|1 0 1 0 0}}

in a Thrust range

{{Skill range|-2 1 0 0 0}}

in a 3-square horizontal line centered 2 squares behind target

{{Skill range|0 1 1 0 0}}

directly adjacent to target

{{Skill range|0 2 2 0 0}}

in a 2-square cross radius

{{Skill range|0 1 1 1 0}}

1 square around target

{{Skill range|5 6 7 8 0}}

6 squares horizontally, 7 squares vertically, 8 squares diagonally away from target centered 5 squares in front of target