Module:AbilityHints/doc: Difference between revisions

Vergir (talk | contribs)
add doc
 
Vergir (talk | contribs)
m update doc
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Overview ==
== Overview ==


Renders the interaction-hint rail on ability cards (via [[Module:AbilitySection]]): a small strip of item icons showing how an ability interacts with items — dispellable, duration-reduced, blocked, etc. Each icon links to its item and has a hover tooltip.
Renders a small strip of item icons showing how an ability interacts with items and used by [[Module:AbilitySection]].  
Each icon displays a configured image and has a hover tooltip.


Membership is decided by <code>is_member</code> in [[Module:AbilityTable]]. To change ability-icon matching, edit [[Module:AbilityTable/Lists]] (this will also update relevant ability tables).
Hints can be "automatic" and "manual".
* Automatic come from [[Module:AbilityTable/Lists]]. If an ability is part of 'debuffresist' list, then it will show automatic debuff resist hint. List of enabled automatic hints is configured through CONFIG in this module. Clicking on an icon does nothing, however tooltip often will have a link to relevant item/mechanic.
* Manual hints come from {{tl|AbilityInteraction}} blocks used on AbilitySection. Whenetever an editor describes an interaction using that block a hint will be displayed. Clicking on a hint reveals that hand-written block.


== Entry point ==
== Entry point ==


=== <code>p.get_icons(ability_key, ability_num)</code> ===
=== <code>p.get_icons(ability_key, ability_num)</code> ===
Returns the rail HTML for one ability, or an empty string when the ability matches no lists. <code>ability_key</code> is the ability's <code>Key</code> (from [[Data:AbilityCards.json]]); <code>ability_num</code> is its slot (1–4).
Returns the rail HTML for one ability, or an empty string when the ability matches no lists.


== Configuration ==
== Configuration ==


=== <code>CONFIG</code> ===
=== <code>CONFIG</code> ===
Ordered list of the icons the rail can show; order here is the display order. Each entry:
List of the icons the rail can show. Order within <code>CONFIG</code> does not affect the rendered output — see [[#Display order|Display order]]. Each entry:


{| class="wikitable"
{| class="wikitable"
Line 20: Line 23:
| <code>list</code> || List name in [[Module:AbilityTable/Lists]] whose membership triggers the icon.
| <code>list</code> || List name in [[Module:AbilityTable/Lists]] whose membership triggers the icon.
|-
|-
| <code>item</code> || Item whose icon represents the interaction (rendered via [[Module:Icon]]).
| <code>file</code> || Image file to display, e.g. <code>Reactive Barrier.png</code>. Also determines the icon's position in the rail.
|-
|-
| <code>tip</code> || Hover tooltip text. May contain simple HTML (<code><nowiki><br></nowiki></code>, <code><nowiki><b></nowiki></code>).
| <code>tip</code> || Hover tooltip text. May contain wikilinks and simple HTML (<code><nowiki><br></nowiki></code>, <code><nowiki><b></nowiki></code>).
|}
|}


To add an icon, add a <code>CONFIG</code> row referencing an existing list. To re-scope which abilities it covers, edit the list in [[Module:AbilityTable/Lists]].
To add an icon, add a <code>CONFIG</code> row: pick the triggering <code>list</code>, the display <code>file</code>, and the <code>tip</code>. To re-scope which abilities an icon covers, edit the list in [[Module:AbilityTable/Lists]].
 
== See also ==
* [[Module:AbilitySection]] — renders the rail into the ability section
* [[Module:AbilityTable]] — provides <code>is_member</code> and the lists
* [[Template:AbilitySection/styles.css]] — rail and tooltip styling