Welcome to the DFO World Wiki. With many major updates since the release of DFO, many items are missing. Visit Item Database Project to learn more.
Please remember to click "show preview" before saving the page.
Thanks for the updated logo snafuPop!

Difference between revisions of "Template:Equipment effect retrieval"

From DFO World Wiki
Jump to: navigation, search
m
m
 
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<includeonly>{{#ifexist:{{{1|}}}|
+
<includeonly>{{#if:
<!-- base stats -->
+
{{#if:{{{var prefix|}}}|{{#vardefine:prefix|{{{var prefix}}}}}|{{#vardefine:prefix|}}}}
{{#arraymap:{{lc:{{Stat enumeration|base=only}}}}|,|@@@|
+
{{#if:{{{var suffix|}}}|{{#vardefine:suffix|{{{var suffix}}}}}|{{#vardefine:suffix|}}}}
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} @@@ {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has @@@|link=none}}}}
 
|}}
 
  
<!-- bonus stats -->
+
<!-- Split into two queries, since the maximum number of printout statements
{{#arraymap:{{lc:{{Stat enumeration|base=exclude}}}}|,|@@@|
+
    is 100. Looks terribly long, but this is much, much faster than doing it
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} @@@ {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has @@@ bonus|link=none}}}}
+
    in a loop using #show.
|}}
+
    If you change any printout statement here, make sure to also change
 +
    "Template:Equipment effect retrieval result format" accordingly.
 +
    Userparam is used to differentiate the two queries in the result format
 +
    template.
 +
    The stat order of the printout statements is the same as the order in
 +
    "Template:Stat enumeration".
 +
-->
  
<!-- inflict element -->
+
{{#ask:[[{{{1}}}]]
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} inflicts elemental damage {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Inflicts elemental damage|link=none}}}}
+
|?Has adventurer fame
 +
|?Has weapon physical attack
 +
|?Has weapon magical attack
 +
|?Has independent attack
 +
|?Has equipment physical defense
 +
|?Has equipment magical defense
 +
|?Has strength
 +
|?Has intelligence
 +
|?Has vitality
 +
|?Has spirit
 +
|?Has exorcism
 +
|?Has hp maximum bonus
 +
|?Has mp maximum bonus
 +
|?Has hp recovery bonus
 +
|?Has mp recovery bonus
 +
|?Has damage value
 +
|?Has buff power
 +
|?Has attack speed bonus
 +
|?Has movement speed bonus
 +
|?Has casting speed bonus
 +
|?Has all elemental resistances bonus
 +
|?Has fire resist bonus
 +
|?Has water resist bonus
 +
|?Has light resist bonus
 +
|?Has shadow resist bonus
 +
|?Has all elemental damage bonus
 +
|?Has fire damage bonus
 +
|?Has water damage bonus
 +
|?Has light damage bonus
 +
|?Has shadow damage bonus
 +
|?Has evasion rate bonus
 +
|?Has inventory weight limit bonus
 +
|?Has hit recovery bonus
 +
|?Has immobility bonus
 +
|?Has jump strength bonus
 +
|?Has physical critical chance bonus
 +
|?Has magical critical chance bonus
 +
|?Has hit rate bonus
 +
|?Has town movement speed bonus
 +
|?Has poison damage bonus
 +
|?Has poison level bonus
 +
|?Has poison tolerance bonus
 +
|?Has poison duration bonus
 +
|?Has burn damage bonus
 +
|?Has burn level bonus
 +
|?Has burn tolerance bonus
 +
|?Has burn duration bonus
 +
|?Has bleeding damage bonus
 +
|?Has bleeding level bonus
 +
|?Has bleeding tolerance bonus
 +
|?Has bleeding duration bonus
 +
|?Has electrocution damage bonus
 +
|?Has electrocution level bonus
 +
|?Has electrocution tolerance bonus
 +
|?Has electrocution duration bonus
 +
|?Has blind level bonus
 +
|?Has blind tolerance bonus
 +
|?Has blind duration bonus
 +
|?Has frozen level bonus
 +
|?Has frozen tolerance bonus
 +
|?Has frozen duration bonus
 +
|?Has slow down level bonus
 +
|?Has slow down tolerance bonus
 +
|?Has slow down duration bonus
 +
|?Has immobility level bonus
 +
|?Has immobility tolerance bonus
 +
|?Has immobility duration bonus
 +
|?Has stone curse damage bonus
 +
|?Has stone curse level bonus
 +
|?Has stone curse tolerance bonus
 +
|?Has stone curse duration bonus
 +
|?Has stun level bonus
 +
|?Has stun tolerance bonus
 +
|?Has stun duration bonus
 +
|?Has sleep level bonus
 +
|?Has sleep tolerance bonus
 +
|?Has sleep duration bonus
 +
|?Has confuse level bonus
 +
|?Has confuse tolerance bonus
 +
|?Has confuse duration bonus
 +
|?Has curse level bonus
 +
|?Has curse tolerance bonus
 +
|?Has curse duration bonus
 +
|?Has all abnormal status resist bonus
 +
| link = none
 +
| format = template
 +
| template = Equipment effect retrieval result format
 +
| userparam = 1
 +
| default ={{Equipment effect retrieval result format|userparam = 1}}
 +
}}<!--
  
<!-- skill level bonus -->
+
-->{{#ask:[[{{{1}}}]]
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus class {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has skill level bonus|+index=1|link=none}}}}
+
|?Inflicts elemental damage
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus name {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has skill level bonus|+index=2|link=none}}}}
+
|?Has skill level bonus|+index=1
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus value {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has skill level bonus|+index=3|link=none}}}}
+
|?Has skill level bonus|+index=2
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|
+
|?Has skill level bonus|+index=3
{{#vardefine:arrayindex|0}}
+
|?Has skill range level bonus|+index=1
 
+
|?Has skill range level bonus|+index=2
<!--
+
|?Has skill range level bonus|+index=3
 
+
|?Has skill range level bonus|+index=4
  for every skill, create a var called CLASSskillbonus and add the skills to that var
+
|?Has effect description
 
+
|?Has flavor text
-->{{#arraymap:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus class {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|@@@|{{#if:{{#var:@@@skillbonus}}||{{#vardefine:@@@skillbonus|@@@:}} }}
+
| link = none
<!--add skill name to string -->
+
| format = template
{{#vardefine:@@@skillbonus|{{#var:@@@skillbonus}}<br>
+
| template = Equipment effect retrieval result format
{{#ifexist: {{#switch:{{#sub:@@@|-3}}
+
| userparam = 2
  | (M) = {{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus name {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}} (Male)
+
| default ={{Equipment effect retrieval result format|userparam = 2}}
  | (F) = {{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus name {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}} (Female)
 
  }}
 
| {{#switch:{{#sub:@@@|-3}}
 
  | (M) = [[{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus name {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}} (Male)|{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus name {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}}]]
 
  | (F) = [[{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus name {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}} (Female)|{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus name {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}}]]
 
  }}
 
| [[{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus name {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}}]]}} Skill Lvl +{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus value {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}}
 
}} <!-- end vardefine adding skill names -->
 
{{#vardefine:arrayindex|{{#expr:{{#var:arrayindex}}+1}} }}
 
|}}<!-- end arraymap changing var CLASSskillbonus --><!--
 
 
 
  for every skill, check if CLASSskillbonus var exists; if yes print it and empty the var, otherwise do nothing
 
 
 
-->{{#arraymap:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill level bonus class {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|@@@|{{#if:{{#var:@@@skillbonus}}|{{#var:@@@skillbonus}}{{#vardefine:@@@skillbonus|}}|<!-- do nothing -->}}
 
|}}
 
 
 
}}
 
 
 
<!-- skill range level bonus -->
 
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus class {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has skill range level bonus|+index=1|link=none}}}}
 
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus minimum level {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has skill range level bonus|+index=2|link=none}}}}
 
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus maximum level {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has skill range level bonus|+index=3|link=none}}}}
 
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus value {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has skill range level bonus|+index=4|link=none}}}}
 
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|
 
{{#vardefine:arrayindex|0}}{{#arraymap:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus class {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|@@@|{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus class {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}} Level {{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus minimum level {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}}{{#ifexpr:{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus minimum level {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}} = {{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus maximum level {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}}||-{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus maximum level {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}}}} All Skill Lv +{{#explode:{{#var:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} skill range level bonus value {{#if:{{{var suffix|}}}|{{{var suffix}}}}}}}|,|{{#var:arrayindex}}}} (Special Skills excluded){{#vardefine:arrayindex|{{#expr:{{#var:arrayindex}}+1}}}}|<br>}}
 
 
}}
 
}}
  
<!-- aura effect -->
+
|}}</includeonly><noinclude>
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} aura effect {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has aura effect|link=none}}}}
 
 
 
<!-- effect description -->
 
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} effect description {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has effect description|link=none}}}}
 
 
 
<!-- flavor text -->
 
{{#vardefine:{{#if:{{{var prefix|}}}|{{{var prefix}}}}} flavor text {{#if:{{{var suffix|}}}|{{{var suffix}}}}}|{{#show:{{{1}}}|?Has flavor text|link=none}}}}
 
}}</includeonly><noinclude>
 
 
== Description ==
 
== Description ==
  
 
This template retrieves all stat properties and effects of a piece of equipment and saves the values in variables. There is no visible output.
 
This template retrieves all stat properties and effects of a piece of equipment and saves the values in variables. There is no visible output.
 +
 +
Use this template sparingly as query times add up quickly.
  
 
The default variable names match the name of the stats, e.g. <code>#var:weapon physical attack</code> or <code>#var:fire damage</code>. For the properties [[Property:Has skill level bonus|Has skill level bonus]] and [[Property:Has skill range level bonus|Has skill range level bonus]], the variables contain formatted text, but the variables for the properties that make up the record such as [[Property:Has skill level bonus class|Has skill level bonus class]] contain the raw data.
 
The default variable names match the name of the stats, e.g. <code>#var:weapon physical attack</code> or <code>#var:fire damage</code>. For the properties [[Property:Has skill level bonus|Has skill level bonus]] and [[Property:Has skill range level bonus|Has skill range level bonus]], the variables contain formatted text, but the variables for the properties that make up the record such as [[Property:Has skill level bonus class|Has skill level bonus class]] contain the raw data.
 +
 +
Uses [[Template:Equipment effect retrieval result format]].
  
 
== Usage ==
 
== Usage ==

Latest revision as of 13:33, 25 September 2023

Description

This template retrieves all stat properties and effects of a piece of equipment and saves the values in variables. There is no visible output.

Use this template sparingly as query times add up quickly.

The default variable names match the name of the stats, e.g. #var:weapon physical attack or #var:fire damage. For the properties Has skill level bonus and Has skill range level bonus, the variables contain formatted text, but the variables for the properties that make up the record such as Has skill level bonus class contain the raw data.

Uses Template:Equipment effect retrieval result format.

Usage

{{Equipment effect retrieval
|<item page> = 
| var prefix = 
| var suffix = 
}}

Parameters

All parameters are optional unless stated otherwise.

item page 
Required. Item page. The wiki page of the item.
var prefix 
The prefix for the variable names. Always followed by a whitespace.
var suffix 
The suffix for the variable names. Always preceded by a whitespace.

Examples

{{Equipment effect retrieval|Corrupt Imposter Death Scythe}}
{{#var:intelligence}}


{{Equipment effect retrieval|Garroter Sickle|var prefix = scythe|var suffix = suf}}
{{#var:scythe inflicts elemental damage suf}}


{{Equipment effect retrieval|Frozen Resonance Sickle}}
{{#var:skill level bonus}}