Difference between revisions of "User:Becasita/SubPages/Templates/Card"
< User:Becasita | SubPages | Templates
(Unknown Attribute added. Link to unknown value for stars. Unknown value for Scale. Flags added. Lores and Pendulum Effects added (still a lot to do).) |
m (Missed one.) |
||
(39 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
Define array with all official languages: | Define array with all official languages: | ||
-->{{ #arraydefine: @languages | en, fr, de, it, pt, es, ja, zh, ko | , }}<!-- | -->{{ #arraydefine: @languages | en, fr, de, it, pt, es, ja, zh, ko | , }}<!-- | ||
− | |||
− | |||
------------------- | ------------------- | ||
# Define card name: | # Define card name: | ||
− | -->{{ #vardefine: $PAGENAME | {{Normalized pagename|{{PAGENAME}}}} }}<!-- | + | ## Main: |
− | -->{{ #vardefine: $name | + | -->{{ #vardefine: $PAGENAME | {{Normalized pagename|{{PAGENAME}}}} }}<!-- |
− | + | -->{{ #vardefine: $name-input | {{{name|}}} }}<!-- | |
− | + | -->{{ #vardefine: $name-display | {{ #var: $name-input | {{ #explode: {{ #var: $PAGENAME }} | ( | 0 }} }} }}<!-- | |
− | + | -->{{ #vardefine: $name-link | {{ #replace: {{ #var: $name-input | {{ #var: $PAGENAME }} }} | # }} }}<!-- | |
− | + | -->{{ #vardefine: $name-print-link | [[{{ #var: $PAGENAME }}|{{ #var: $name-display }}]] }}<!-- | |
+ | |||
+ | ## Alternative names: | ||
+ | -->{{ #arraydefine: @name-alternative | {{{alternative_names|}}} | /\s*[;\n\*]\s*/ }}<!-- | ||
+ | -->{{ #vardefine: $name-alternative-print | ||
+ | | {{ #arrayprint: @name-alternative | <br /> | @name-alt-part | @name-alt-part }} | ||
}}<!-- | }}<!-- | ||
− | |||
− | |||
− | |||
------------ | ------------ | ||
# Attribute: | # Attribute: | ||
− | -->{{ #vardefine: $attribute-input | {{ uc: {{{attribute|}}} }} }}<!-- | + | -->{{ #vardefine: $attribute-input | {{ uc: {{{attribute|{{{card_type|}}}}}} }} }}<!-- |
-->{{ #vardefine: $attribute | -->{{ #vardefine: $attribute | ||
| {{ #switch: {{ #var: $attribute-input }} | | {{ #switch: {{ #var: $attribute-input }} | ||
− | | SPELL = Spell Card | + | | SPELL = Spell Card<!-- Define flag: -->{{ #vardefine: $flag-isSpellTrap | Spell Card }} |
− | | TRAP = Trap Card | + | | TRAP = Trap Card<!-- Define flag: -->{{ #vardefine: $flag-isSpellTrap | Trap Card }} |
| #default = {{ #vardefine: $flag-notSpellTrap | 1 }}<!-- | | #default = {{ #vardefine: $flag-notSpellTrap | 1 }}<!-- | ||
-->{{ #if: {{ #pos: {{ #var: $attribute-input }} | ? }} | -->{{ #if: {{ #pos: {{ #var: $attribute-input }} | ? }} | ||
Line 49: | Line 49: | ||
}}<!-- | }}<!-- | ||
-->{{ #vardefine: $attribute-print | [[{{ #var: $attribute }}]] [[File:{{ #var: $attribute-icon }}.svg|28px|alt=]] }}<!-- | -->{{ #vardefine: $attribute-print | [[{{ #var: $attribute }}]] [[File:{{ #var: $attribute-icon }}.svg|28px|alt=]] }}<!-- | ||
+ | |||
+ | -------- | ||
+ | # Types: | ||
+ | -->{{ #vardefine: $types-input | {{ lc: {{{types|}}} }} }}<!-- | ||
+ | -->{{ #if: {{ #pos: {{ #var: $types-input }} | counter }}<!-- | ||
+ | OR -->{{ #pos: {{ #var: $types-input }} | faq }}<!-- | ||
+ | OR -->{{ #pos: {{ #var: $types-input }} | game }}<!-- | ||
+ | OR -->{{ #pos: {{ #var: $types-input }} | strategy }}<!-- | ||
+ | OR -->{{ #pos: {{ #var: $types-input }} | tip }}<!-- | ||
+ | OR -->{{ #ifeq: {{ #var: $name-display }} | Token | 1 }} | ||
+ | | {{:User:Becasita/SubPages/Templates/Card/NonMonsterTypes|{{ #var: $types-input }}}}<!-- Get vars. --> | ||
+ | | {{:User:Becasita/SubPages/Templates/Card/MonsterCategory|{{ #var: $types-input }}}}<!-- Get vars. --> | ||
+ | }}<!-- | ||
+ | -->{{ #vardefine: $types-print | {{ #var: $types-linked }} }}<!-- | ||
+ | -->{{ #vardefine: $types-print-full | {{ #var: $full-card-type }} }}<!-- | ||
+ | |||
+ | ## Flags: | ||
+ | -->{{ #if: {{ #var: $flag-notSpellTrap }}<!-- If not Spell/Trap --> | ||
+ | | {{ #vardefine: $flag-isCounter | {{ #var: $Counter }} }}<!-- Is Counter. | ||
+ | -->{{ #vardefine: $flag-isFAQ | {{ #var: $FAQ }} }}<!-- Is FAQ card. | ||
+ | -->{{ #vardefine: $flag-isNonGame | {{ #var: $NonGame }} }}<!-- Is non-game card. | ||
+ | -->{{ #vardefine: $flag-isStrategy | {{ #var: $Strategy }} }}<!-- Is Strategy Card. | ||
+ | -->{{ #vardefine: $flag-isTip | {{ #var: $Tip }} }}<!-- Is Tip Card. | ||
+ | -->{{ #vardefine: $flag-isToken | {{ #var: $Token }}<!-- OR -->{{ #var: $GenericToken }} }}<!-- Is Token. | ||
+ | -->{{ #if: {{ #var: $flag-isCounter }}{{ #var: $flag-isToken }} | ||
+ | | {{ #vardefine: $flag-isCounterToken | 1 }} | ||
+ | }}<!-- | ||
+ | -->{{ #vardefine: $flag-notPlayable | ||
+ | | {{ #var: $flag-isCounter | ||
+ | | {{ #var: $flag-isFAQ | ||
+ | | {{ #var: $flag-isNonGame | ||
+ | | {{ #var: $flag-isStrategy | ||
+ | | {{ #var: $flag-isTip | ||
+ | | {{ #var: $GenericToken }} | ||
+ | }} | ||
+ | }} | ||
+ | }} | ||
+ | }} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | -->{{ #if: {{ #var: $flag-notPlayable }}<!-- If not monster, --> | ||
+ | | <!-- Do nothing. --><!--@@@ No point in treating generic Tokens as monsters. --> | ||
+ | | {{ #vardefine: $flag-isMonster | 1 }}<!-- It's a monster. | ||
+ | -->{{ #vardefine: $flag-fromExtra | ||
+ | | {{ #switch: {{ #var: $Category }} | ||
+ | | <!-- Empty. --> | ||
+ | | Ritual = | ||
+ | | #default = 1 | ||
+ | }} | ||
+ | }}<!-- Belongs to the Extra Deck flag. | ||
+ | -->{{ #vardefine: $flag-isPendulum | {{ #var: $Pendulum }} }}<!-- Pendulum flag. | ||
+ | -->{{ #vardefine: $flag-isTuner | {{ #var: $Tuner }} }}<!-- Tuner flag. | ||
+ | -->{{ #vardefine: $flag-isEffect | {{ #var: $Effect }} }}<!-- Effect flag. --> | ||
+ | }} | ||
+ | }}<!-- | ||
----------- | ----------- | ||
# Property: | # Property: | ||
− | -->{{ #vardefine: $property-input | {{ ucfirst: {{ lc: {{{property|}}} }} }} }}<!-- | + | -->{{ #vardefine: $property-input | {{ ucfirst: {{ lc: {{{property|}}} }} }} }}<!-- |
-->{{:User:Becasita/SubPages/Templates/Card/STProperty|{{ #var: $property-input }}|{{ #var: $attribute-input }}}}<!-- Get vars. | -->{{:User:Becasita/SubPages/Templates/Card/STProperty|{{ #var: $property-input }}|{{ #var: $attribute-input }}}}<!-- Get vars. | ||
-->{{ #vardefine: $property-print | {{ #var: $Property-linked }} [[File:{{ #var: $Property }}.svg|18px|alt=]] }}<!-- | -->{{ #vardefine: $property-print | {{ #var: $Property-linked }} [[File:{{ #var: $Property }}.svg|18px|alt=]] }}<!-- | ||
-->{{ #vardefine: $property-print-full | {{ #var: $Property-full }} }}<!-- | -->{{ #vardefine: $property-print-full | {{ #var: $Property-full }} }}<!-- | ||
− | + | -->{{ #vardefine: $property-error | |
− | + | | {{ #if: {{ #var: $flag-notSpellTrap }} | |
− | + | | {{ #if: {{ #var: $property-input }} | |
− | + | | <div class="error">Error: {{ #var: $flag-notPlayable | Monster Card }}s do not have a «property»!</div> | |
− | -->{{ #vardefine: $ | + | }} |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 86: | Line 130: | ||
-------- | -------- | ||
# Color: | # Color: | ||
+ | -->{{ #arraydefine: @color-input | {{ #replace: {{ #replace: {{ lc: {{{color|}}} }} | card }} | - }} | , }}<!-- | ||
-->{{ #vardefine: $color | -->{{ #vardefine: $color | ||
| {{ #if: {{ #var: $flag-notSpellTrap }} | | {{ #if: {{ #var: $flag-notSpellTrap }} | ||
− | | {{ #if: {{ #var: $flag-isCounterToken }} | + | | {{ #if: {{ #var: $flag-isCounterToken }}<!-- OR -->{{ #var: $flag-notPlayable }} |
− | | token | + | | {{ #if: {{ #var: $flag-isCounterToken }} |
+ | | token | ||
+ | | {{ #if: {{ #var: $flag-isTip }} | ||
+ | | fusion <!-- Use purple for Tip Cards. --> | ||
+ | | ritual <!-- Use blue for Strategy Cards. --> | ||
+ | }} | ||
+ | }} | ||
| {{ #switch: {{ #var: $Category }}<!-- Not Token nor Counter. --> | | {{ #switch: {{ #var: $Category }}<!-- Not Token nor Counter. --> | ||
| Ritual | | Ritual | ||
Line 95: | Line 146: | ||
| Synchro | | Synchro | ||
| Xyz = {{ lc: {{ #var: $Category }} }} | | Xyz = {{ lc: {{ #var: $Category }} }} | ||
− | | #default = {{ #if: {{ #var: $ | + | | #default = {{ #if: {{ #var: $flag-isEffect }}<!-- It only reaches this point if it doesn't have a category. --> |
| effect | | effect | ||
| normal | | normal | ||
Line 108: | Line 159: | ||
}}<!-- | }}<!-- | ||
-->{{ #vardefine: $color-print | -->{{ #vardefine: $color-print | ||
− | | {{ #var: $color }}-card<!-- | + | | {{ #if: {{ #arrayprint: @color-input }} |
− | + | | {{ #arrayprint: @color-input || @color-input-part | @color-input-part-card <nowiki/> }} | |
− | + | | {{ #var: $color }}-card<!-- | |
+ | --> {{ #if: {{ #var: $flag-isPendulum }} | ||
+ | | pendulum-card | ||
+ | }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 116: | Line 170: | ||
--------------- | --------------- | ||
# Effect types: | # Effect types: | ||
− | -->{{: | + | -->{{ #vardefine: $pendulum-effect-types-input | {{{pendulum_effect_types|}}} }}<!-- |
− | -->{{ #vardefine: $pendulum-effect-types | {{ #arrayprint: @Out | , <nowiki /> | @part }} }}<!-- | + | -->{{ #vardefine: $effect-types-input | {{{effect_types|}}} }}<!-- |
− | -->{{:User:Becasita/SubPages/Templates/Card/EffectTypes|{{ | + | -->{{ #if: {{ #var: $flag-isPendulum }} |
− | --> | + | | {{ #vardefine: $pendulum-effect-types |
+ | | {{:User:Becasita/SubPages/Templates/Card/EffectTypes|{{ #var: $pendulum-effect-types-input }}|Pendulum}}<!-- | ||
+ | Get var: -->{{ #arrayprint: @Out | , <nowiki /> | @part }} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | -->{{ #vardefine: $effect-types | ||
+ | | {{:User:Becasita/SubPages/Templates/Card/EffectTypes|{{ #var: $effect-types-input }}}}<!-- | ||
+ | Get: -->{{ #arrayprint: @Out | , <nowiki /> | @part }} | ||
+ | }}<!-- | ||
-->{{ #vardefine: $effect-types-print | -->{{ #vardefine: $effect-types-print | ||
− | | {{ #if: {{ #var: $pendulum-effect-types }} | + | | {{ #if: {{ #var: $flag-isPendulum }} |
− | + | | {{ #if: {{ #var: $pendulum-effect-types }} | |
− | + | | {{ #if: {{ #var: $effect-types }} | |
+ | | | ||
; Pendulum Effect | ; Pendulum Effect | ||
: {{ #var: $pendulum-effect-types }} | : {{ #var: $pendulum-effect-types }} | ||
; Monster Effect | ; Monster Effect | ||
: {{ #var: $effect-types }} | : {{ #var: $effect-types }} | ||
− | + | | {{ #var: $pendulum-effect-types }} | |
+ | }} | ||
+ | | {{ #var: $effect-types }} | ||
}} | }} | ||
− | + | | {{ #if: {{ #var: $pendulum-effect-types-input }} | |
+ | | {{ #vardefineecho: $effect-types-error | ||
+ | | <div class="error">Error: {{ #var: $flag-isSpellTrap | {{ #var: $flag-notPlayable | Non-Pendulum Monster }} }}s do not have «pendulum_effect_types»!</div> | ||
+ | }} | ||
+ | }}<!-- | ||
+ | -->{{ #var: $effect-types }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 136: | Line 206: | ||
--------------- | --------------- | ||
# Level / Rank: | # Level / Rank: | ||
− | -->{{ #vardefine: $stars-input | {{{level| | + | -->{{ #vardefine: $stars-input | {{{stars|{{{level|{{{rank|}}}}}}}}} }}<!-- |
-->{{ #vardefine: $stars | {{ #expr: abs(0{{ #var: $stars-input }}) }} }}<!-- | -->{{ #vardefine: $stars | {{ #expr: abs(0{{ #var: $stars-input }}) }} }}<!-- | ||
-->{{ #vardefine: $level-rank | -->{{ #vardefine: $level-rank | ||
− | | {{ #if: {{ #pos: {{ #var: $types }} | xyz }}<!-- Check if it's a Level or a Rank. --> | + | | {{ #if: {{ #pos: {{ #var: $types-input }} | xyz }}<!-- Check if it's a Level or a Rank. --> |
| Rank | | Rank | ||
| Level | | Level | ||
Line 145: | Line 215: | ||
}}<!-- | }}<!-- | ||
-->{{ #vardefine: $cg-rank | -->{{ #vardefine: $cg-rank | ||
− | | {{ #ifeq: {{ #var: $level-rank}} | Rank<!-- Check if it's a CG or Rank star. --> | + | | {{ #ifeq: {{ #var: $level-rank}} | Rank <!-- Check if it's a CG or Rank star. --> |
| Rank | | Rank | ||
| CG | | CG | ||
Line 151: | Line 221: | ||
}}<!-- | }}<!-- | ||
-->{{ #vardefine: $stars-icon | -->{{ #vardefine: $stars-icon | ||
− | | {{ #if: {{ #pos: {{ #var: $stars }} | ? }} | + | | {{ #if: {{ #pos: {{ #var: $stars-input }} | ? }} |
− | | {{ #vardefine: $stars-unknown | | + | | {{ #ifexpr: {{ #len: {{ #var: $stars-input }} }} < 2 |
− | -->[[File:{{ #var: $cg-rank }} Star Unknown.svg|18px]] | + | | {{ #vardefine: $stars-unknown | ? }} |
+ | | {{ #vardefine: $stars-unknown | ??? }} | ||
+ | }}<!-- | ||
+ | -->[[File:{{ #var: $cg-rank }} Star Unknown.svg|18px]]<!-- | ||
+ | -->{{ #vardefine: $stars-?property | ? }} | ||
| {{ #iferror: {{ #expr: {{ #ifexpr: {{ #var: $stars }} > 12 | break }} }}<!-- No more than 12 stars. --> | | {{ #iferror: {{ #expr: {{ #ifexpr: {{ #var: $stars }} > 12 | break }} }}<!-- No more than 12 stars. --> | ||
− | | {{ #vardefine: $stars-error | < | + | | {{ #vardefine: $stars-error | <div class="error">Error: Invalid input for «stars»!</div> }} |
| {{Repeat|[[File:{{ #var: $cg-rank }} Star.svg|18px]]|{{ #var: $stars }}}} | | {{Repeat|[[File:{{ #var: $cg-rank }} Star.svg|18px]]|{{ #var: $stars }}}} | ||
}} | }} | ||
Line 163: | Line 237: | ||
| {{ #if: {{ #var: $stars-error }} | | {{ #if: {{ #var: $stars-error }} | ||
| {{ #var: $stars-error }} | | {{ #var: $stars-error }} | ||
− | | {{ #var: $stars-unknown | + | | [[{{ #var: $stars-unknown |
− | | | + | | {{ #var: $level-rank}} {{ #var: $stars }} Monster Cards{{!}}{{ #var: $stars }} |
− | + | }}]] {{ #var: $stars-icon }} | |
+ | }} | ||
+ | }}<!-- | ||
+ | -->{{ #vardefine: $stars-error-ST | ||
+ | | {{ #if: {{ #var: $stars-input }} | ||
+ | | {{ #if: {{ #var: $flag-isMonster }} | ||
+ | | <!-- Nothing. --> | ||
+ | | <div class="error">Error: {{ #var: $flag-isSpellTrap | {{ #var: $flag-notPlayable }} }}s do not have «stars»!</div> | ||
+ | }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 172: | Line 254: | ||
# Pendulum Scale: | # Pendulum Scale: | ||
-->{{ #vardefine: $scale-input | {{{pendulum_scale|}}}{{{scale|}}} }}<!-- Will think later which one to use | -->{{ #vardefine: $scale-input | {{{pendulum_scale|}}}{{{scale|}}} }}<!-- Will think later which one to use | ||
− | -->{{ #vardefine: $scale | + | -->{{ #if: {{ #var: $flag-isPendulum }} |
− | + | | {{:User:Becasita/SubPages/Templates/Card/Scale|{{ #var: $scale-input }}}}<!-- Get vars. | |
− | | {{ #var: $ | + | -->{{ #vardefine: $scale-linked | {{ #var: $Out-linked | [[???]] }} [[File:Pendulum Scale.png|18px]] }}<!-- |
+ | -->{{ #vardefine: $scale | {{ #var: $Out-linked | [[???]] }} }}<!-- To use without the Pendulum Scale row. | ||
+ | -->{{ #vardefine: $scale-?property | {{ #var: $scale-has? }} }}<!-- | ||
+ | -->{{ #vardefine: $scale-lore | ||
+ | | {{ #var: $Out-lore | ||
+ | | ???<!-- | ||
+ | -->{{ #vardefine: $scale-?property | ? }} | ||
+ | }} | ||
+ | }} | ||
+ | | {{ #if: {{ #var: $scale-input }} | ||
+ | | {{ #vardefine: $scale-error | ||
+ | | <div class="error">Error: {{ #var: $flag-isSpellTrap | {{ #var: $flag-notPlayable | Non-Pendulum Monster }} }}s do not have «pendulum_scale»!</div> | ||
+ | }} | ||
}} | }} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
}}<!-- | }}<!-- | ||
Line 191: | Line 279: | ||
| {{ #if: {{ #var: $atk-input }} | | {{ #if: {{ #var: $atk-input }} | ||
| {{:User:Becasita/SubPages/Templates/Card/ATKDEF|{{ #var: $atk-input }}|ATK}}<!-- | | {{:User:Becasita/SubPages/Templates/Card/ATKDEF|{{ #var: $atk-input }}|ATK}}<!-- | ||
− | Get var.-->{{ #var: $stat }} | + | Get var.-->{{ #var: $stat }}<!-- |
+ | -->{{ #vardefine: $atk-?property | {{ #var: $has? }} }}<!-- | ||
+ | -->{{ #vardefine: $atk-property | ||
+ | | {{ #iferror: {{ #var: $stat }} | ||
+ | | {{ #vardefine: $atk-error | 1 }} | ||
+ | | {{ #var: $input }} | ||
+ | }} | ||
+ | }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 200: | Line 295: | ||
| {{ #if: {{ #var: $def-input }} | | {{ #if: {{ #var: $def-input }} | ||
| {{:User:Becasita/SubPages/Templates/Card/ATKDEF|{{ #var: $def-input }}|DEF}}<!-- | | {{:User:Becasita/SubPages/Templates/Card/ATKDEF|{{ #var: $def-input }}|DEF}}<!-- | ||
− | Get var.-->{{ #var: $stat }} | + | Get var.-->{{ #var: $stat }}<!-- |
+ | -->{{ #vardefine: $def-?property | {{ #var: $has? }} }}<!-- | ||
+ | -->{{ #vardefine: $def-property | ||
+ | | {{ #iferror: {{ #var: $stat }} | ||
+ | | {{ #vardefine: $def-error | 1 }} | ||
+ | | {{ #var: $input }} | ||
+ | }} | ||
+ | }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 210: | Line 312: | ||
| {{ #if: {{ #var: $def-input }}<!-- If there is no $atk-input, but there is $def-input,--> | | {{ #if: {{ #var: $def-input }}<!-- If there is no $atk-input, but there is $def-input,--> | ||
| {{:User:Becasita/SubPages/Templates/Card/ATKDEF|???|ATK}}<!-- Use ???. | | {{:User:Becasita/SubPages/Templates/Card/ATKDEF|???|ATK}}<!-- Use ???. | ||
− | Get var.-->{{ #var: $stat }} | + | Get var.-->{{ #var: $stat }}<!-- |
+ | -->{{ #vardefine: $atk-?property | ? }}<!-- | ||
+ | -->{{ #vardefine: $atk-property | ??? }} | ||
}} | }} | ||
}} | }} | ||
Line 219: | Line 323: | ||
| {{ #if: {{ #var: $atk-input }}<!-- If there is no $atk-input, but there is $def-input,--> | | {{ #if: {{ #var: $atk-input }}<!-- If there is no $atk-input, but there is $def-input,--> | ||
| {{:User:Becasita/SubPages/Templates/Card/ATKDEF|???|DEF}}<!-- Use ???. | | {{:User:Becasita/SubPages/Templates/Card/ATKDEF|???|DEF}}<!-- Use ???. | ||
− | Get var.-->{{ #var: $stat }} | + | Get var.-->{{ #var: $stat }}<!-- |
+ | -->{{ #vardefine: $def-?property | ? }}<!-- | ||
+ | -->{{ #vardefine: $def-property | ??? }} | ||
}} | }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
− | -->{{ #vardefine: $atk-def-print | {{ #var: $atk-print }} / {{ #var: $def-print }} }}<!-- | + | -->{{ #vardefine: $atk-def-print | [[ATK]] / {{ #var: $atk-print }} [[DEF]] / {{ #var: $def-print }} }}<!-- |
+ | |||
+ | ---------- | ||
+ | # Summons: | ||
+ | ## Generic: | ||
+ | -->{{ #arraydefine: @summons | {{{summons|}}} | /\s*[;\n\*]\s*/ | unique }}<!-- | ||
+ | -->{{ #vardefine: $summons-print | ||
+ | | {{ #arrayprint: @summons | <br /> | @summons-part | ||
+ | | "[[@summons-part|{{ #explode: @summons-part | <nowiki /> ( }}]]" | ||
+ | }} | ||
+ | }}<!-- | ||
+ | ## Ritual | ||
+ | -->{{ #arraydefine: @ritual-summons | {{{ritual_summons|}}} | /\s*[;\n\*]\s*/ | unique }}<!-- | ||
+ | -->{{ #vardefine: $ritual-summons-print | ||
+ | | {{ #arrayprint: @ritual-summons | <br /> | @ritual-summons-part | ||
+ | | "[[@ritual-summons-part|{{ #explode: @ritual-summons-part | <nowiki /> ( }}]]" | ||
+ | }} | ||
+ | }}<!-- | ||
+ | |||
+ | -------------- | ||
+ | # Summoned by: | ||
+ | -->{{ #arraydefine: @summoned | {{{summoned_by|}}} | /\s*[;\n\*]\s*/ | unique }}<!-- | ||
+ | -->{{ #vardefine: $summoned-label | ||
+ | | {{ #ifeq: {{ #var: $Category }} | Ritual | ||
+ | | [[Ritual Spell Card]] required | ||
+ | | [[Summon]]ed by | ||
+ | }} | ||
+ | }}<!-- | ||
+ | -->{{ #vardefine: $summoned-print | ||
+ | | {{ #arrayprint: @summoned | <br /> | @summoned-part | ||
+ | | "[[@summoned-part|{{ #explode: @summoned-part | <nowiki /> ( }}]]" | ||
+ | }} | ||
+ | }}<!-- | ||
----------- | ----------- | ||
Line 232: | Line 370: | ||
| {{ #iferror: {{ #ifexpr: {{ #len: {{ #var: $passcode }} }} = 8 | | {{ #iferror: {{ #ifexpr: {{ #len: {{ #var: $passcode }} }} = 8 | ||
| [[{{ #var: $passcode }}]] | | [[{{ #var: $passcode }}]] | ||
− | | < | + | | <div class="error"></div> |
}}<!-- Check to see if it contains \D. | }}<!-- Check to see if it contains \D. | ||
-->{{ #ifexpr: {{ #var: $passcode }} }} | -->{{ #ifexpr: {{ #var: $passcode }} }} | ||
− | | < | + | | <div class="error">Error: Invalid input for «passcode»!</div> |
}} | }} | ||
}}<!-- | }}<!-- | ||
− | ----------- | + | ------------------ |
# Limitation text: | # Limitation text: | ||
-->{{ #vardefine: $limitation-text | {{{limitation_text|}}} }}<!-- | -->{{ #vardefine: $limitation-text | {{{limitation_text|}}} }}<!-- | ||
Line 252: | Line 390: | ||
## Redefine label: | ## Redefine label: | ||
-->{{ #if: {{ #var: $limitation-text-print }} | -->{{ #if: {{ #var: $limitation-text-print }} | ||
− | | {{ #vardefine: $limitation-text-label | [[Limitation | + | | {{ #vardefine: $limitation-text-label | [[Limitation text]] }}<!-- |
-->{{ #vardefine: $passcode-label | <!-- Override passcode label. --> }}<!-- | -->{{ #vardefine: $passcode-label | <!-- Override passcode label. --> }}<!-- | ||
-->{{ #vardefine: $passcode-print | <!-- Override passcode. --> }} | -->{{ #vardefine: $passcode-print | <!-- Override passcode. --> }} | ||
Line 260: | Line 398: | ||
# Sets: | # Sets: | ||
Define arrays by medium: | Define arrays by medium: | ||
− | -->{{ #arraydefine: @regions-TCG | en | + | -->{{ #arraydefine: @regions-TCG |
− | -->{{ #arraydefine: @regions-OCG | jp | + | | en;Worldwide English;en;English; |
+ | na;North American English;en;English; | ||
+ | eu;European English;en;English; | ||
+ | au;Australian English;en;English; | ||
+ | fr;French;fr;French;5 | ||
+ | fc;French-Canadian;fr;French;5 | ||
+ | de;German;de;German;5 | ||
+ | it;Italian;it;Italian;5 | ||
+ | pt;Portuguese;pt;Portuguese;5 | ||
+ | sp;Spanish;es;Spanish;5 | ||
+ | | /\n/ | ||
+ | }}<!-- | ||
+ | -->{{ #arraydefine: @regions-OCG | ||
+ | | jp;Japanese;ja;Japanese;5 | ||
+ | ja;Japanese-Asian;ja;Japanese;5 | ||
+ | ae;Asian-English;en;English; | ||
+ | tc;Chinese;zh;Chinese;5 | ||
+ | kr;Korean;ko;Korean;5 | ||
+ | | /\n/ | ||
+ | }}<!-- | ||
## Check for TCG: | ## Check for TCG: | ||
-->{{ #vardefine: $sets-TCG | -->{{ #vardefine: $sets-TCG | ||
| {{ #arrayprint: @regions-TCG || @region-single |<!-- | | {{ #arrayprint: @regions-TCG || @region-single |<!-- | ||
− | -->{{ # | + | -->{{ #vardefine: $region-single | {{ #explode: @region-single_sets | ; | 0 }} }}<!-- |
− | + | -->{{ #if: {{{ {{ #var: $region-single }}_sets|}}} | |
− | + | | {{:User:Becasita/SubPages/Templates/Card/Sets/Table | |
− | + | | rg = {{ #var: $region-single }} | |
− | + | | region = {{ #explode: @region-single | ; | 1 }} | |
− | + | | lg = {{ #explode: @region-single | ; | 2 }} | |
− | + | | language = {{ #explode: @region-single | ; | 3 }} | |
+ | | OCG_flag = <!-- Never. --> | ||
+ | | Eng_flag = {{ #explode: @region-single | ; | 4 }} | ||
+ | | 1 = {{{ {{ #var: $region-single }}_sets|}}} | ||
}}<!-- | }}<!-- | ||
− | -->{{ #vardefine: $release- | + | -->{{ #vardefine: $release-{{ #var: $region-single }} | 1 }}<!-- |
-->{{ #vardefine: $release-TCG | 1 }}<!-- Just to be easier to read. --> | -->{{ #vardefine: $release-TCG | 1 }}<!-- Just to be easier to read. --> | ||
}} | }} | ||
Line 283: | Line 443: | ||
-->{{ #vardefine: $sets-OCG | -->{{ #vardefine: $sets-OCG | ||
| {{ #arrayprint: @regions-OCG || @region-single |<!-- | | {{ #arrayprint: @regions-OCG || @region-single |<!-- | ||
− | -->{{ # | + | -->{{ #vardefine: $region-single | {{ #explode: @region-single_sets | ; | 0 }} }}<!-- |
− | + | -->{{ #if: {{{ {{ #var: $region-single }}_sets|}}} | |
− | + | | {{:User:Becasita/SubPages/Templates/Card/Sets/Table | |
− | + | | rg = {{ #var: $region-single }} | |
− | + | | region = {{ #explode: @region-single | ; | 1 }} | |
− | + | | lg = {{ #explode: @region-single | ; | 2 }} | |
− | + | | language = {{ #explode: @region-single | ; | 3 }} | |
+ | | OCG_flag = normal | ||
+ | | Eng_flag = {{ #explode: @region-single | ; | 4 }} | ||
+ | | 1 = {{{ {{ #var: $region-single }}_sets|}}} | ||
}}<!-- | }}<!-- | ||
− | -->{{ #vardefine: $release- | + | -->{{ #vardefine: $release-{{ #var: $region-single }} | 1 }}<!-- |
-->{{ #vardefine: $release-OCG | 1 }}<!-- Just to be easier to read. --> | -->{{ #vardefine: $release-OCG | 1 }}<!-- Just to be easier to read. --> | ||
}} | }} | ||
Line 299: | Line 462: | ||
-->{{ #vardefine: $sets-print | -->{{ #vardefine: $sets-print | ||
| {{ #if: {{ #var: $release-TCG }} | | {{ #if: {{ #var: $release-TCG }} | ||
− | | <div style="text-align:center">'''''[[Yu-Gi-Oh! Trading Card Game|TCG]]'''''</div>{{ #var: $sets-TCG }} | + | | <div style="text-align:center">'''''[[Yu-Gi-Oh! Trading Card Game|TCG]]'' sets:'''</div>{{ #var: $sets-TCG }} |
}}<!-- | }}<!-- | ||
-->{{ #if: {{ #var: $release-OCG }} | -->{{ #if: {{ #var: $release-OCG }} | ||
− | | <div style="text-align:center">'''''[[Yu-Gi-Oh! Official Card Game|OCG]]'''''</div>{{ #var: $sets-OCG }} | + | | <div style="text-align:center">'''''[[Yu-Gi-Oh! Official Card Game|OCG]]'' sets:'''</div>{{ #var: $sets-OCG }} |
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 311: | Line 474: | ||
| {{ #arrayprint: @languages || @language-single |<!-- | | {{ #arrayprint: @languages || @language-single |<!-- | ||
-->{{ #if: {{{@language-single_name|}}}{{{@language-single_pendulum_effect|}}}{{{@language-single_lore|}}} | -->{{ #if: {{{@language-single_name|}}}{{{@language-single_pendulum_effect|}}}{{{@language-single_lore|}}} | ||
− | | {{ | + | | {{:User:Becasita/SubPages/Templates/Card/NamesLores/Table |
− | | | + | | language = @language-single |
− | | | + | | name = {{{@language-single_name|}}} |
− | | | + | | translated = {{{@language-single_translated_name|}}} |
− | + | | romanized = {{{@language-single_romanized_name|}}} | |
− | + | | alternative = {{{@language-single_alternative_names|}}} | |
− | + | | pendulum = {{{@language-single_pendulum_effect|}}} | |
− | + | | lore = {{{@language-single_lore|}}} | |
− | |||
}} | }} | ||
}} | }} | ||
}}<!-- Close @language-single check. --> | }}<!-- Close @language-single check. --> | ||
+ | }}<!-- | ||
+ | |||
+ | -->{{ #vardefine: $names-lores-print | ||
+ | | <div style="text-align:center">'''Names and lores:'''</div>{{ #var: $names-lores }} | ||
}}<!-- | }}<!-- | ||
## English lore: | ## English lore: | ||
− | -->{{ #vardefine: $lore | + | -->{{ #vardefine: $lore-main-input | {{{lore|}}} }}<!-- |
-->{{ #vardefine: $lore-pendulum-main-input | {{{pendulum_effect|}}} }}<!-- | -->{{ #vardefine: $lore-pendulum-main-input | {{{pendulum_effect|}}} }}<!-- | ||
− | --{{ #vardefine: $lore- | + | -->{{ #vardefine: $materials | {{{materials|}}} }}<!-- |
− | | {{ #if: {{ var: $flag- | + | -->{{ #vardefine: $lore$materials-delimiter |
− | + | | {{ #if: {{ #var: $materials }} | |
+ | | {{ #if: {{ #var: $flag-fromExtra }} | ||
+ | | {{ #switch: {{ #var: $name-display }} | ||
+ | | Beatrice, Lady of the Eternal = <nowiki /> / <nowiki /><!-- "Beatrice" is just a weird case. --> | ||
+ | | #default = <br /> | ||
+ | }} | ||
+ | | {{ #vardefine: $materials | ||
+ | | <div class="error">Error: {{ #var: $flag-isSpellTrap | {{ #var: $types-print-full }} }}s do not have «materials»!</div> | ||
+ | }} | ||
+ | }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 336: | Line 511: | ||
-->{{ #vardefine: $lore-pendulum-main-print | -->{{ #vardefine: $lore-pendulum-main-print | ||
| {{ #if: {{ #var: $flag-isPendulum }} | | | {{ #if: {{ #var: $flag-isPendulum }} | | ||
− | <div class=" | + | <div class="lorebox lorebox--pendulum"> |
− | <div class="mobile-hide | + | <div id="card-scale" class="lorebox-pendulum_scale mobile-hide" aria-hidden="true">{{ #var: $scale }}</div> |
− | <div class=" | + | <div id="card-pendulum-lore" class="lorebox-lore lorebox-lore--pendulum">{{ #var: $lore-pendulum-main-input }}</div> |
− | <div class="mobile-hide | + | <div id="card-scale" class="lorebox-pendulum_scale mobile-hide" aria-hidden="true">{{ #var: $scale }}</div> |
− | </div> | + | </div><!--Else |
+ | -->| {{ #if: {{ #var: $lore-pendulum-main-input }} | ||
+ | | <div class="error">Error: {{ #var: $flag-isSpellTrap | {{ #var: $flag-notPlayable | Non-Pendulum Monster }} }}s do not have a «pendulum_effect»!</div> | ||
+ | }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
Line 347: | Line 525: | ||
<div class="lore"> | <div class="lore"> | ||
{{ #var: $lore-pendulum-main-print }} | {{ #var: $lore-pendulum-main-print }} | ||
− | <div class=" | + | <div class="lorebox lorebox--main"><!-- |
+ | -->{{ #if: {{ #var: $types-input }} | ||
+ | | {{ #if: {{ #var: $flag-isMonster }}<!-- Display only if it's a monster. --> | ||
+ | | <div id="card-types" class="card-table-types">'''[''' {{ #var: $types-print }} ''']'''</div> | ||
+ | | {{ #if: {{ #var: $flag-isSpellTrap }} | ||
+ | | {{ #vardefineecho: $types-print | ||
+ | | <div class="error">Error: {{ #var: $flag-isSpellTrap }}s do not have «types»!</div> | ||
+ | }} | ||
+ | }} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | --><div id="card-lore" class="lorebox lorebox-lore"><!-- | ||
+ | -->{{ #var: $materials }}<!-- | ||
+ | -->{{ #var: $lore$materials-delimiter }}<!-- | ||
+ | -->{{ #var: $lore-main-input }}<!-- | ||
+ | --></div><!-- | ||
+ | -->{{ #if: {{ #var: $atk-input }}<!-- OR -->{{ #var: $def-input }} | ||
+ | | {{ #if: {{ #var: $flag-isMonster }}<!-- Display only if it's a monster. --> | ||
+ | | <div id="card-atk-def" class="lorebox-stats">{{ #var: $atk-def-print }}</div> | ||
+ | | {{ #vardefineecho: $atk-def-error | ||
+ | | <div class="error">Error: {{ #var: $flag-isSpellTrap | {{ #var: $flag-notPlayable }} }}s do not have «ATK»/«DEF»!</div> | ||
+ | }} | ||
+ | }} | ||
+ | }}</div> | ||
</div> | </div> | ||
}}<!-- | }}<!-- | ||
+ | ------------- | ||
+ | # Database ID: | ||
+ | -->{{ #vardefine: $databaseID-input | {{{database_id|}}} }}<!-- | ||
+ | |||
+ | -->{{ #vardefine: $databaseID-row | ||
+ | | {{ #if: {{ #var: $databaseID-input }} | ||
+ | | {{ #if: {{ #var: $release-TCG }}<!-- OR -->{{ #var: $release-OCG }} | ||
+ | | <!-- Create "table" row. | ||
+ | --><div class="nowrap" style="display: table-cell; width: 17%; font-weight: bold; border: 1px #aaa solid; background:#f2f2f2; border-top: none;"> Database ID: </div> | ||
+ | <div class="nowrap" style="display: table-cell; border: 1px #aaa solid; border-top: none; border-left: none;"><!-- | ||
+ | -->{{:User:Becasita/SubPages/Templates/Card/DatabaseID|{{ #var: $databaseID-input }}| | ||
+ | | ja = {{ #var: $release-jp }} | ||
+ | | en = {{ #var: $release-en }}<!-- OR -->{{ #var: $release-na }}<!-- OR -->{{ #var: $release-eu }} | ||
+ | | fr = {{ #var: $release-fr }} | ||
+ | | de = {{ #var: $release-de }} | ||
+ | | it = {{ #var: $release-it }} | ||
+ | | es = {{ #var: $release-sp }} | ||
+ | }}<!-- | ||
+ | --></div> | ||
+ | }} | ||
+ | }} | ||
+ | }}<!-- | ||
-------- | -------- | ||
# Image: | # Image: | ||
− | -->{{ #vardefine: $image-input | {{{image|}}} }}<!-- | + | -->{{ #vardefine: $image-input | {{PAGENAME:{{{image|}}}}} }}<!-- |
-->{{ #vardefine: $image | -->{{ #vardefine: $image | ||
| {{ #if: {{ #var: $image-input }} | | {{ #if: {{ #var: $image-input }} | ||
| {{ #var: $image-input }} | | {{ #var: $image-input }} | ||
− | | {{ #if: {{ #var: $release-TCG }} | + | | {{ #if: {{ #var: $flag-isStrategy }} |
− | + | | StrategyCard-EN-Back.png | |
− | + | | {{ #if: {{ #var: $release-TCG }} | |
− | + | | Back-EN.png | |
− | + | | {{ #if: {{ #var: $release-jp }} | |
− | + | | Back-JP.png | |
+ | | {{ #if: {{ #var: $release-kr }} | ||
+ | | Back-KR.png | ||
+ | }} | ||
}} | }} | ||
}} | }} | ||
Line 413: | Line 639: | ||
-->{{ #vardefine: $status-print | -->{{ #vardefine: $status-print | ||
− | | {{:User:Becasita/SubPages/Templates/Card/FLStatus | + | | {{ #if: {{ #var: $flag-notPlayable }} |
− | + | | <!-- Do nothing. --> | |
− | + | | {{:User:Becasita/SubPages/Templates/Card/FLStatus | |
− | + | | OCG = {{ #var: $status-OCG-input | {{ #var: $status-fallback }} }} | |
+ | | ADV = {{ #var: $status-TCG-Adv-input | {{ #var: $status-fallback }} }} | ||
+ | | TRAD = {{ #var: $status-TCG-Trad-input | <!-- Nothing. --> }} | ||
+ | }} | ||
}} | }} | ||
}}<!-- | }}<!-- | ||
+ | --------------------------- | ||
+ | # Unofficial names & lores: | ||
+ | -->{{ #vardefine: $unofficial-names-input | {{{unofficial_name|}}} }}<!-- | ||
+ | -->{{ #vardefine: $unofficial-lores-input | {{{unofficial_lore|}}} }}<!-- | ||
+ | |||
+ | -->{{ #vardefine: $unofficial-names | ||
+ | | {{ #if: {{ #var: $unofficial-names-input }} | ||
+ | | {{:User:Becasita/SubPages/Templates/Card/Unofficial|{{ #var: $unofficial-names-input }}|name}} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | -->{{ #vardefine: $unofficial-lores | ||
+ | | {{ #if: {{ #var: $unofficial-lores-input }} | ||
+ | | {{:User:Becasita/SubPages/Templates/Card/Unofficial|{{ #var: $unofficial-lores-input }}|lore}} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | ############ | ||
+ | ## Design ## | ||
+ | ############ | ||
+ | |||
+ | ------ | ||
+ | # Top: | ||
+ | ## Warnings: | ||
+ | -->{{ #if: <includeonly>{{NAMESPACE}}</includeonly> | ||
+ | | {{Mbox | ||
+ | | type = delete | ||
+ | | text = Some warning and category. | ||
+ | }} | ||
+ | }}<!-- | ||
+ | -->{{IfSemantics | ||
+ | | <!-- Everything should be working fine. --> | ||
+ | | {{SMW banner}}<!-- | ||
+ | -->{{Mbox | ||
+ | | type = delete | ||
+ | | text = Some warning. | ||
+ | }} | ||
+ | }}<!-- | ||
+ | ## Unofficial notices: | ||
+ | -->{{ #var: $unofficial-names }}<!-- | ||
+ | -->{{ #var: $unofficial-lores }}<!-- | ||
+ | |||
+ | ------------- | ||
+ | # Main table: | ||
--> | --> | ||
− | |||
<div class="card-table {{ #var: $color-print }}"> | <div class="card-table {{ #var: $color-print }}"> | ||
− | <div class="heading | + | <div class="heading"><div>{{ #var: $name-display }}</div></div> |
− | <div class=" | + | <div class="card-table-columns"> |
− | + | <div class="imagecolumn">{{ #var: $image-print }}</div> | |
− | + | <div class="infocolumn"> | |
− | + | <table class="innertable"> | |
− | |||
− | |||
<!-- Rows: | <!-- Rows: | ||
+ | # Alternative names: | ||
+ | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
+ | | check = {{ #arrayprint: @name-alternative }} | ||
+ | | label = Alternative names | ||
+ | | data = {{ #var: $name-alternative-print }} | ||
+ | }}<!-- | ||
# Attribute: | # Attribute: | ||
-->{{:User:Becasita/SubPages/Templates/Card/Row | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
Line 437: | Line 711: | ||
| label = [[{{ #var: $attribute-label }}]] | | label = [[{{ #var: $attribute-label }}]] | ||
| data = {{ #var: $attribute-print }} | | data = {{ #var: $attribute-print }} | ||
+ | | id = card-attribute | ||
}}<!-- | }}<!-- | ||
# Property: | # Property: | ||
-->{{:User:Becasita/SubPages/Templates/Card/Row | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
− | | check = | + | | check = {{ #var: $property-input }} |
− | |||
− | |||
− | |||
| label = [[Property]] | | label = [[Property]] | ||
− | | data = {{ #var: $property-print }} | + | | data = {{ #var: $property-error | {{ #var: $property-print }} }} |
+ | | id = card-property | ||
}}<!-- | }}<!-- | ||
# Stars: | # Stars: | ||
Line 451: | Line 724: | ||
| check = {{ #var: $stars-input }} | | check = {{ #var: $stars-input }} | ||
| label = [[{{ #var: $level-rank }}]] | | label = [[{{ #var: $level-rank }}]] | ||
− | | data = {{ #var: $stars-print }} | + | | data = {{ #var: $stars-error-ST | {{ #var: $stars-print }} }} |
+ | | id = card-stars | ||
}}<!-- | }}<!-- | ||
# Scale: | # Scale: | ||
-->{{:User:Becasita/SubPages/Templates/Card/Row | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
− | | check = {{ #var: $scale }} | + | | check = {{ #var: $scale-error }} |
| label = [[Pendulum Scale]] | | label = [[Pendulum Scale]] | ||
− | | data = {{ #var: $scale-print }} | + | | data = {{ #var: $scale-error }} |
+ | }}<!-- | ||
+ | # Full card type | ||
+ | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
+ | | check = {{ #var: $types-property-print }} | ||
+ | | label = Full card type | ||
+ | | data = {{ #var: $types-property-print }} | ||
+ | | id = card-type-full | ||
}}<!-- | }}<!-- | ||
− | # | + | # Summons: |
-->{{:User:Becasita/SubPages/Templates/Card/Row | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
− | | check = {{ #var: $ | + | | check = {{ #var: $summons-print }} |
− | | label = [[ | + | | label = [[Summon]]s |
− | | data = {{ #var: $ | + | | data = {{ #var: $summons-print }} |
}}<!-- | }}<!-- | ||
− | # | + | # Ritual Summons: |
-->{{:User:Becasita/SubPages/Templates/Card/Row | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
− | | check = {{ #var: $ | + | | check = {{ #var: $ritual-summons-print }} |
− | | label = [[ | + | | label = [[Ritual Monster]] Summoned |
− | | data = {{ #var: $ | + | | data = {{ #var: $ritual-summons-print }} |
}}<!-- | }}<!-- | ||
− | # | + | # Summoned by: |
-->{{:User:Becasita/SubPages/Templates/Card/Row | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
− | | check = {{ #var: $ | + | | check = {{ #var: $summoned-print }} |
− | | label = | + | | label = {{ #var: $summoned-label }} |
− | | data = {{ #var: $ | + | | data = {{ #var: $summoned-print }} |
}}<!-- | }}<!-- | ||
# Effect types: | # Effect types: | ||
-->{{:User:Becasita/SubPages/Templates/Card/Row | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
− | | check = {{ #var: $effect-types }}<!-- OR -->{{ #var: $pendulum-effect-types }} | + | | check = {{ #var: $effect-types }}<!-- |
+ | OR -->{{ #var: $pendulum-effect-types-input }} | ||
| label = Effect types | | label = Effect types | ||
| data = {{ #var: $effect-types-print }} | | data = {{ #var: $effect-types-print }} | ||
Line 485: | Line 767: | ||
# Lore: | # Lore: | ||
-->{{:User:Becasita/SubPages/Templates/Card/Row | -->{{:User:Becasita/SubPages/Templates/Card/Row | ||
− | | check = {{ #var: $lore | + | | check = {{ #var: $types-print }}<!-- |
− | + | OR -->{{ #var: $materials }}<!-- | |
+ | OR -->{{ #var: $lore-main-input }}<!-- | ||
+ | OR -->{{ #var: $flag-isPendulum }}<!-- | ||
+ | OR -->{{ #var: $lore-pendulum-main-input }}<!-- | ||
+ | OR -->{{ #var: $atk-input }}<!-- | ||
+ | OR -->{{ #var: $def-input }} | ||
| data = {{ #var: $lore-main-print }} | | data = {{ #var: $lore-main-print }} | ||
}}<!-- | }}<!-- | ||
Line 495: | Line 782: | ||
| data = {{ #var: $passcode-print }}<!-- OR -->{{ #var: $limitation-text-print }} | | data = {{ #var: $passcode-print }}<!-- OR -->{{ #var: $limitation-text-print }} | ||
}} | }} | ||
− | </ | + | </table> |
+ | </div> | ||
</div> | </div> | ||
+ | <div class="below">{{ #var: $status-print }}</div> | ||
+ | </div> | ||
+ | <!-- | ||
+ | |||
+ | ---------------- | ||
+ | # Related links: | ||
+ | -->  | ||
+ | <div style="margin: 0 auto; text-align:center; display: table; vertical-align: top; width: 96%;"> | ||
+ | <div class="nowrap" style="display: table-cell; width: 17%; font-weight: bold; border: 1px #aaa solid; background:#f2f2f2;"> Related pages: </div> | ||
+ | <div class="hlist nowrap" style="display: table-cell; border: 1px #aaa solid; border-left: none;"> | ||
+ | * {{Related page link| Card Gallery | {{ #var: $name-link }} | label=Gallery }} | ||
+ | * {{Related page link| Card Rulings | {{ #var: $name-link }} | label=Rulings }} | ||
+ | * {{Related page link| Card Errata | {{ #var: $name-link }} | label=Errata }} | ||
+ | * {{Related page link| Card Tips | {{ #var: $name-link }} | label=Tips }} | ||
+ | * {{Related page link| Card Appearances | {{ #var: $name-link }} | label=Appearances}} | ||
+ | * {{Related page link| Card Trivia | {{ #var: $name-link }} | label=Trivia }} | ||
+ | * {{Related page link| Card Lores | {{ #var: $name-link }} | label=Lores }} | ||
+ | * {{Related page link| Card Artworks | {{ #var: $name-link }} | label=Artworks }} | ||
+ | * {{Related page link| Card Names | {{ #var: $name-link }} | label=Names }} | ||
+ | </div> | ||
+ | </div> | ||
+ | <div style="margin: 0 auto; text-align:center; display: table; vertical-align: top; width: 96%;"> | ||
+ | {{ #var: $databaseID-row }} | ||
</div><!-- | </div><!-- | ||
− | ------------------- | + | --------------------------- |
− | # | + | # Sets, names & lores table: |
− | -->{{ #if: {{ #var: $names-lores }}{{ #var: $sets-TCG }}{{ #var: $sets-OCG }} | | + | -->{{ #if: {{ #var: $names-lores }}{{ #var: $sets-TCG }}{{ #var: $sets-OCG }} |  |
− | <table | + | <div style="display: table; vertical-align: top; border-spacing: 3px; width: 100%"> |
− | < | + | {{ #if: {{ #var: $names-lores }} |
− | < | + | | <div style="display: table-cell; width: 50%"> {{ #var: $names-lores-print }} </div>}} |
− | + | {{ #if: {{ #var: $sets-TCG }}{{ #var: $sets-OCG }} | |
− | </ | + | | <div style="display: table-cell; width: 50%"> {{ #var: $sets-print }} </div>}} |
− | < | + | </div> |
− | < | + | }}<!-- |
− | < | + | |
− | </ | + | -------------------- |
− | </ | + | # Search categories: |
− | }} | + | -->{{ #vardefine: $arch | {{{archseries|}}} }}<!-- |
+ | -->{{ #vardefine: $arch-supports | {{{supports_archetypes|}}} }}<!-- | ||
+ | -->{{ #vardefine: $arch-anti-supports | {{{anti-supports_archetypes|}}} }}<!-- | ||
+ | -->{{ #vardefine: $arch-relates-to | {{{related_to_archseries|}}} }}<!-- | ||
+ | |||
+ | -->{{ #if: {{{supports|}}}{{{anti-supports|}}}<!-- | ||
+ | -->{{ #var: $arch }}{{ #var: $arch-supports }}{{ #var: $arch-anti-supports }}{{ #var: $arch-relates-to }}<!-- | ||
+ | -->{{{counter|}}}{{{action|}}}{{{stat_change|}}}{{{m/s/t|}}}<!-- | ||
+ | -->{{{summoning|}}}{{{attack|}}}{{{banished|}}}{{{life_points|}}}<!-- | ||
+ | -->{{{fm_for|}}}{{{sm_for|}}}{{{misc|}}} | ||
+ | |   | ||
+ | == Search categories == | ||
+ | {{Search categories | ||
+ | | monster = {{ #var: $flag-isMonster }} | ||
+ | | monster_type = {{ #var: $Category }} | ||
+ | | token = {{ #var: $flag-isToken }} | ||
+ | | supports = {{{supports<includeonly>|</includeonly>}}} | ||
+ | | anti-supports = {{{anti-supports<includeonly>|</includeonly>}}} | ||
+ | | archseries = {{ #var: $arch }} | ||
+ | | supports_archetypes = {{ #var: $arch-supports }} | ||
+ | | anti-supports_archetypes = {{ #var: $arch-anti-supports }} | ||
+ | | related_to_archseries = {{ #var: $arch-relates-to }} | ||
+ | | counter = {{{counter<includeonly>|</includeonly>}}} | ||
+ | | action = {{{action<includeonly>|</includeonly>}}} | ||
+ | | stat_change = {{{stat_change<includeonly>|</includeonly>}}} | ||
+ | | m/s/t = {{{m/s/t<includeonly>|</includeonly>}}} | ||
+ | | summoning = {{{summoning<includeonly>|</includeonly>}}} | ||
+ | | attack = {{{attack<includeonly>|</includeonly>}}} | ||
+ | | banished = {{{banished<includeonly>|</includeonly>}}} | ||
+ | | life_points = {{{life_points<includeonly>|</includeonly>}}} | ||
+ | | fm_for = {{{fm_for<includeonly>|</includeonly>}}} | ||
+ | | sm_for = {{{sm_for<includeonly>|</includeonly>}}} | ||
+ | | misc = {{{misc<includeonly>|</includeonly>}}} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | |||
+ | ############## | ||
+ | ## Navboxes ## | ||
+ | ############## | ||
+ | |||
+ | ------------------ | ||
+ | # Card navigation: | ||
+ | -->{{Card navigation}}<!-- | ||
+ | |||
+ | ------------- | ||
+ | # Archseries: | ||
+ | -->{{ #arraydefine: @arch | | ||
+ | * {{ #var: $arch }} | ||
+ | * {{ #var: $arch-supports }} | ||
+ | * {{ #var: $arch-anti-supports }} | ||
+ | * {{ #var: $arch-relates-to }}<!-- | ||
+ | * Separator -->| * <!-- | ||
+ | * Options -->| unique, sort=asc | ||
+ | }}<!-- | ||
+ | |||
+ | ## Print: | ||
+ | -->{{ #arrayprint: @arch || @arch-part |   | ||
+ | {{Archseries navbox|@arch-part}} | ||
+ | }}<!-- | ||
+ | |||
+ | ------------------ | ||
+ | # Counter & Token: | ||
+ | -->{{ #if: {{ #var: $flag-isCounter }} | ||
+ | | {{Counters}} | ||
+ | }}<!-- | ||
+ | -->{{ #if: {{ #var: $flag-isToken }} | ||
+ | | {{Tokens}} | ||
+ | }}<!-- | ||
+ | |||
+ | ############################# | ||
+ | ## Properties & Categories ## | ||
+ | ############################# | ||
+ | |||
+ | ---------- | ||
+ | # Sortkey: | ||
+ | -->{{ #vardefine: $sortkey | ||
+ | | {{:User:Becasita/SubPages/Templates/Card/Sortkey|{{ #var: $PAGENAME }}}}<!-- Get var: | ||
+ | -->{{ #var: $Sortkey }} | ||
+ | }}<!-- | ||
+ | -->{{DEFAULTSORT:{{ #var: $sortkey }}}}<!-- | ||
+ | |||
+ | --------------- | ||
+ | # General tags: | ||
+ | -->[[Class::Official game| ]]<!-- Exists in the game; whether just mentioned (Tokens) or released as an actual card | ||
+ | -->{{ #if: {{ #var: $flag-notPlayable }} | ||
+ | | [[Playability::Non-playable| ]]<!-- Counters, FAQ cards, Tip Cards, Strategy Cards and generic non-game cards. @@@ Check Illegal. | ||
+ | -->[[Category:Unusable cards]] | ||
+ | | [[Playability::Playable| ]]<!-- | ||
+ | --><includeonly>[[Category:Duel Monsters cards]]</includeonly><!-- @@@ Shouldn't Counter cards belong here? --> | ||
+ | }}<!-- | ||
+ | |||
+ | ---------------- | ||
+ | # General names: | ||
+ | -->[[English name::{{ #var: $name-display }}| ]]<!-- | ||
+ | -->[[English name (linked)::{{ #var: $name-print-link }}| ]]<!-- | ||
+ | -->{{ #arrayprint: @name-alternative || @name-alt-part | [[English alternative names::@name-alt-part| ]] }}<!-- | ||
+ | |||
+ | --------- | ||
+ | # Medium: | ||
+ | -->{{ #if: {{ #var: $release-TCG }}<!-- OR -->{{ #var: $release-OCG }} | ||
+ | | {{ #if: {{ #var: $release-TCG }} | ||
+ | | [[Medium::TCG| ]]<!-- | ||
+ | -->[[Category:TCG cards]]<!-- | ||
+ | -->{{ #if: {{ #var: $release-OCG }} | ||
+ | | [[Medium::OCG| ]]<!-- | ||
+ | -->[[Category:OCG cards]] | ||
+ | | [[Medium::TCG-only| ]] | ||
+ | }} | ||
+ | | [[Medium::OCG| ]]<!-- | ||
+ | -->[[Medium::OCG-only| ]]<!-- | ||
+ | -->[[Category:OCG cards]] | ||
+ | }} | ||
+ | | <includeonly>[[Category:((card)) without an OCG/TCG release]]</includeonly><!-- To track mentioned unreleased Tokens. --> | ||
+ | }}<!-- | ||
+ | |||
+ | ------------- | ||
+ | # Card image: | ||
+ | -->{{ #if: {{ #var: $image-input }} | ||
+ | | [[Card image::File:{{ #var: $image-input }}| ]]<!-- Card image page. @@@ Remove output if property is created (embedded image!) | ||
+ | -->[[Card image (text)::{{ #var: $image-input }}| ]]<!-- Card image name. --> | ||
+ | | <includeonly>[[Category:Cards that need an image]]</includeonly> | ||
+ | }}<!-- | ||
+ | |||
+ | ---------- | ||
+ | # Gallery: | ||
+ | -->{{ #if: {{ #ask: [[Card Gallery page for::{{ #var: $name-link }}]] }} | ||
+ | | <!-- There is a gallery for this card. --> | ||
+ | | <includeonly>[[Category:Cards that need a Card Gallery]]</includeonly> | ||
+ | }}<!-- | ||
+ | |||
+ | ----------------- | ||
+ | # Full card type: | ||
+ | -->[[Full card type::{{ #var: $types-property-print }}| ]]<!-- | ||
+ | |||
+ | -------------- | ||
+ | # Ritual Monster/Spell required: | ||
+ | ## Required Ritual Spell: | ||
+ | -->{{ #if: {{ #var: $summoned-print }} | ||
+ | | {{ #ifeq: {{ #var: $Category }} | Ritual | ||
+ | | {{ #arrayprint: @summoned | | @summoned-part | ||
+ | | [[Ritual Spell Card required::@summoned-part| ]] | ||
+ | }} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | ## Required Ritual Monster | ||
+ | -->{{ #if: {{ #var: $ritual-summons-print }} | ||
+ | | {{ #arrayprint: @ritual-summons | | @ritual-summons-part | ||
+ | | [[Ritual Monster required::@ritual-summons-part| ]] | ||
+ | }} | ||
+ | }}<!-- | ||
+ | |||
+ | ----------- | ||
+ | # Passcode: | ||
+ | -->{{ #if: {{ #var: $passcode-print }} | ||
+ | | {{ #if: {{ #var: $passcode }} | ||
+ | | {{ #iferror: {{ #var: $passcode-print }} | ||
+ | | [[Category:((card)) with invalid input for «passcode»]] | ||
+ | | [[Passcode::{{ #var: $passcode }}| ]] | ||
+ | }} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | |||
+ | ------------------ | ||
+ | # Limitation text: | ||
+ | -->{{ #if: {{ #var: $limitation-text-print }} | ||
+ | | [[Limitation text::{{ #var: $limitation-text-print }}| ]]<!-- | ||
+ | -->{{ #if: {{ #var: $passcode }} | ||
+ | | [[Category:((card)) with «passcode» and «limitation text»]] | ||
+ | }} | ||
+ | }}<!-- | ||
+ | |||
+ | -------------- | ||
+ | # Database ID: | ||
+ | -->{{ #if: {{ #var: $databaseID-input }} | ||
+ | | {{ #iferror: {{ #var: $databaseID-row }} | ||
+ | | [[Category:((card)) with invalid input for «database_id»]] | ||
+ | | [[Database ID::{{ #var: $databaseID-input }}| ]] | ||
+ | }} | ||
+ | | {{ #if: {{ #var: $release-en }}<!-- OR -->{{ #var: $release-na }}<!-- | ||
+ | OR -->{{ #var: $release-eu }}<!-- OR -->{{ #var: $release-au }}<!-- | ||
+ | OR -->{{ #var: $release-fr }}<!-- OR -->{{ #var: $release-fc }}<!-- | ||
+ | OR -->{{ #var: $release-de }}<!-- | ||
+ | OR -->{{ #var: $release-it }}<!-- | ||
+ | OR -->{{ #var: $release-sp }}<!-- | ||
+ | OR -->{{ #var: $release-jp }}<!-- OR -->{{ #var: $release-ja }} | ||
+ | | [[Category:Cards without a database ID]] | ||
+ | }} | ||
+ | }}<!-- | ||
+ | |||
+ | --------------------- | ||
+ | # Card-specific tags: | ||
+ | -->{{ #if: {{ #var: $flag-notSpellTrap }} | ||
+ | | {{ #if: {{ #var: $flag-notPlayable }} | ||
+ | | [[Card type::{{ #replace: {{ #var: $flag-notPlayable }} | Generic }}| ]] | ||
+ | | [[Card type::Monster Card| ]]<!-- It's a Monster Card. | ||
+ | ## Effect/Type categorization: | ||
+ | ### Type: | ||
+ | -->[[Type::{{ #var: $Type }}| ]]<!-- [[Type]]. | ||
+ | ### Monster card type: | ||
+ | -->{{ #if: {{ #var: $Category }} | ||
+ | | [[Monster card type::{{ #var: $Category }} Monster| ]]<!-- Fusion / Ritual / Synchro / Xyz --> | ||
+ | }}<!-- | ||
+ | -->{{ #if: {{ #var: $flag-isPendulum }} | ||
+ | | [[Monster card type::Pendulum Monster| ]]<!-- Pendulum Monster is a monster card type by "Dimensional Barrier". --> | ||
+ | }}<!-- | ||
+ | ### Ability: | ||
+ | -->{{ #if: {{ #var: $Ability }} | ||
+ | | [[Ability::{{ #var: $Ability }} monster| ]]<!-- Flip / Gemini / Spirit / Toon / Union @@@Fails for old Flip monsters --> | ||
+ | }}<!-- | ||
+ | ### Tuner: | ||
+ | -->{{ #if: {{ #var: $flag-isTuner }} | ||
+ | | [[Is Tuner::True| ]]<!-- Tuner is NOT an Ability --> | ||
+ | }}<!-- | ||
+ | ### Token: | ||
+ | -->{{ #if: {{ #var: $flag-isToken }} | ||
+ | | [[Is Token::True| ]]<!-- Boolean value for Token, to filter on the Concept (to avoid Tokens on ATK/DEF queries, etc.. --> | ||
+ | }}<!-- | ||
+ | ### Effect class: | ||
+ | -->{{ #if: {{ #var: $flag-isEffect }} | ||
+ | | [[Classification (Effect)::Effect Monster| ]] | ||
+ | | {{ #if: {{ #var: $Category }} | ||
+ | | [[Classification (Effect)::Non-Effect Monster| ]]<!-- Saving this status anyway. --> | ||
+ | | [[Classification (Effect)::Normal Monster| ]]<!-- If it reaches here, then it's a Normal Monster. --> | ||
+ | }} | ||
+ | }}<!-- | ||
+ | ## Stats: | ||
+ | ### Attribute: | ||
+ | -->[[Attribute::{{ #var: $attribute }}| ]]<!-- | ||
+ | ### Stars: | ||
+ | -->{{ #if: {{ #var: $stars-input }} | ||
+ | | {{ #if: {{ #var: $stars-error }} | ||
+ | | [[Category:((card)) with invalid input for «stars»]] | ||
+ | | [[{{ #var: $stars-?property }}Stars::{{ #var: $stars-unknown | {{ #var: $stars }} }}| ]]<!-- | ||
+ | -->[[{{ #var: $stars-?property }}{{ #var: $level-rank }}::{{ #var: $stars-unknown | {{ #var: $stars }} }}| ]]<!-- | ||
+ | String: -->[[Stars (string)::{{ #var: $stars-unknown | {{ #var: $stars }} }}| ]]<!-- | ||
+ | String: -->[[{{ #var: $level-rank }} (string)::{{ #var: $stars-unknown | {{ #var: $stars }} }}| ]] | ||
+ | }} | ||
+ | }}<!-- | ||
+ | ### Scale: | ||
+ | -->{{ #iferror: {{ #var: $scale }} | ||
+ | | [[Category:((card)) with invalid input for «pendulum_scale»]] | ||
+ | | [[{{ #var: $scale-?property }}Pendulum Scale::{{ #var: $scale-lore }}| ]]<!-- | ||
+ | String: -->[[Pendulum Scale (string)::{{ #var: $scale-lore }}| ]] | ||
+ | }}<!-- | ||
+ | ### ATK: | ||
+ | -->{{ #if: {{ #var: $atk-error }} | ||
+ | | [[Category:((card)) with invalid input for «atk»]] | ||
+ | | [[{{ #var: $atk-?property }}ATK::{{ #var: $atk-property }}| ]]<!-- | ||
+ | -->[[ATK (string)::{{ #var: $atk-property }}| ]] | ||
+ | }}<!-- | ||
+ | ### DEF: | ||
+ | -->{{ #if: {{ #var: $def-error }} | ||
+ | | [[Category:((card)) with invalid input for «def»]] | ||
+ | | [[{{ #var: $def-?property }}DEF::{{ #var: $def-property }}| ]]<!-- | ||
+ | -->[[DEF (string)::{{ #var: $def-property }}| ]] | ||
+ | }}<!-- | ||
+ | ## Lores and co.: | ||
+ | ### English Pendulum Effect: | ||
+ | -->{{ #if: {{ #var: $flag-isPendulum }} | ||
+ | | [[English Pendulum Effect::{{ #var: $lore-pendulum-main-input }}| ]] | ||
+ | }}<!-- | ||
+ | ### Materials: | ||
+ | -->{{ #if: {{ #var: $flag-fromExtra }} | ||
+ | | [[Materials::{{ #var: $materials }}| ]] | ||
+ | }}<!-- | ||
+ | ### English lore: | ||
+ | -->{{ #if: {{ #var: $flag-fromExtra }} | ||
+ | | [[English lore::{{ #var: $materials }}<!-- | ||
+ | -->{{ #var: $lore$materials-delimiter }}<!-- | ||
+ | -->{{ #var: $lore-main-input }}| ]] | ||
+ | | [[English lore::{{ #var: $lore-main-input }}| ]] | ||
+ | }} | ||
+ | }} | ||
+ | | [[Card Type::{{ #var: $flag-isSpellTrap }}| ]]<!-- | ||
+ | ## Property: | ||
+ | -->{{ #if: {{ #var: $property-input }} | ||
+ | | {{ #iferror: {{ #var: $property-print }} | ||
+ | | [[Category:((card)) with invalid input for «property»]] | ||
+ | | [[Property::{{ #var: $Property }}| ]] | ||
+ | }} | ||
+ | }} | ||
+ | }}<!-- | ||
+ | |||
+ | --------------- | ||
+ | # Track errors: | ||
+ | -->{{ #iferror: {{ #var: $effect-types-error }}<!-- | ||
+ | OR -->{{ #var: $types-print }}<!-- | ||
+ | OR -->{{ #var: $property-error }}<!-- | ||
+ | OR -->{{ #var: $stars-error-ST }}<!-- | ||
+ | OR -->{{ #var: $scale-error }}<!-- | ||
+ | OR -->{{ #var: $lore-pendulum-main-print }}<!-- | ||
+ | OR -->{{ #var: $materials }}<!-- | ||
+ | OR -->{{ #var: $atk-def-error }} | ||
+ | | [[Category:((card)) with parameters erroneously used]] | ||
+ | | <!-- Nothing. --> | ||
+ | }} |