Template:EXSkillTable: Difference between revisions

Refactored no-loop rowspan calculation code
(Refactored no-loop code)
(Refactored no-loop rowspan calculation code)
Line 1:
<includeonly>{{#vardefine: max_level_with_cost_reduction | 0 }}{{#vardefine: max_level_cost | {{#ifexpr: {{ #len:{{{SkillBaseCost|}}} }} > 0 | {{{SkillBaseCost|0}}} | 0 }} }}{{#vardefine: rowspan_1 | 5 }}{{#vardefine: rowspan_2 | 0 }}{{#vardefine: rowspan_3 | 0 }}{{#vardefine: rowspan_4 | 0 }}{{#vardefine: rowspan_5 | 0 }}{{#forargs: SkillCostLv | key | value |
<includeonly>{{#vardefine: max_level_with_cost_reduction | 0 }}{{#vardefine: max_level_cost | {{#ifexpr: {{ #len:{{{SkillBaseCost|}}} }} > 0 | {{{SkillBaseCost|0}}} | 0 }} }}{{#if: {{{SkillCostLv1 |}}} | {{#vardefine: max_level_cost | {{{SkillCostLv1 |}}} }} }}{{#vardefine: max_level_with_cost_reduction | 1 }}{{#if: {{{SkillCostLv2 |}}} | {{#vardefine: max_level_cost | {{{SkillCostLv2 |}}} }} }}{{#vardefine: max_level_with_cost_reduction | 2 }}{{#if: {{{SkillCostLv3 |}}} | {{#vardefine: max_level_cost | {{{SkillCostLv3 |}}} }} }}{{#vardefine: max_level_with_cost_reduction | 3 }}{{#if: {{{SkillCostLv4 |}}} | {{#vardefine: max_level_cost | {{{SkillCostLv4 |}}} }} }}{{#vardefine: max_level_with_cost_reduction | 4 }}{{#if: {{{SkillCostLv5 |}}} | {{#vardefine: max_level_cost | {{{SkillCostLv5 |}}} }} }}{{#vardefine: max_level_with_cost_reduction | 5 }}{{#vardefine: rowspan_1 | 5 }}{{#vardefine: rowspan_2 | 0 }}{{#vardefine: rowspan_3 | 0 }}{{#vardefine: rowspan_4 | 0 }}{{#vardefine: rowspan_5 | 0 }}{{#if: {{{SkillCostLv2 |}}} | {{#vardefine: rowspan_2 | 4 }} {{#vardefine: rowspan_1 | 1 }} }}{{#if: {{{SkillCostLv3 |}}} | {{#vardefine: rowspan_3 | 3 }} {{#ifexpr: {{#var: rowspan_1 }} > 2 | {{#vardefine: rowspan_1 | 2 }} | }} {{#ifexpr: {{#var: rowspan_2 }} > 1 | {{#vardefine: rowspan_2 | 1 }} | }} }}{{#if: {{{SkillCostLv4 |}}} | {{#vardefine: rowspan_4 | 2 }} {{#ifexpr: {{#var: rowspan_1 }} > 3 | {{#vardefine: rowspan_1 | 3 }} | }} {{#ifexpr: {{#var: rowspan_2 }} > 2 | {{#vardefine: rowspan_2 | 2 }} | }} {{#ifexpr: {{#var: rowspan_3 }} > 1 | {{#vardefine: rowspan_3 | 1 }} | }} }}{{#if: {{{SkillCostLv5 |}}} | {{#vardefine: rowspan_5 | 1 }} {{#ifexpr: {{#var: rowspan_1 }} > 4 | {{#vardefine: rowspan_1 | 4 }} | }} {{#ifexpr: {{#var: rowspan_2 }} > 3 | {{#vardefine: rowspan_2 | 3 }} | }} {{#ifexpr: {{#var: rowspan_3 }} > 2 | {{#vardefine: rowspan_3 | 2 }} | }} {{#ifexpr: {{#var: rowspan_4 }} > 1 | {{#vardefine: rowspan_4 | 1 }} | }} }}{|class="mw-collapsible mw-collapsed wikitable skilltable"
{{#vardefine: max_level_cost | {{#var: value }} }}
{{#vardefine: max_level_with_cost_reduction | {{#var: key }} }}
{{#vardefine: rowspan_{{#var: key }} | {{#expr: 6-{{#var: key }} }} }}
{{#loop: i
| 1
| {{#expr: {{#var: key }}-1 }}
| {{#ifexpr: {{#var: rowspan_{{#var: i }} }} > {{#expr: {{#var: key }}-{{#var: i }} }} | {{#vardefine: rowspan_{{#var: i }}| {{#expr: {{#var: key }}-{{#var: i }} }} }} }}
}}
}}{|class="mw-collapsible mw-collapsed wikitable skilltable"
|- class="summary"
|style="width:10%"|'''EX Skill'''<br>Cost {{{SkillBaseCost|?}}}{{#ifexpr: {{#var: max_level_cost }} != {{#ifexpr: {{ #len:{{{SkillBaseCost|}}} }} > 0 | {{{SkillBaseCost|0}}} | 0 }} | <br><span style="color:red">(Level {{#var: max_level_with_cost_reduction }}+)<br>Cost {{#var: max_level_cost }}</span> | }}