Difference between revisions of "Template:ValuableTable/row"

From Stoneshard wiki
Jump to navigation Jump to search
(Test Rework -> to be reverted)
Line 1: Line 1:
<includeonly>
<includeonly>
<!-- Load complete datastring into a variable - to only load from the Loot data page once. -->
    <!-- Load complete datastring into a variable - to only load from the Loot data page once. -->
{{#vardefine:Datastring|{{:Valuable_data|{{{1}}}}}}}
    {{#vardefine:Datastring|{{:Valuable_data|{{{1}}}}}}}
<!-- Separate values from datastring into individual variables. -->
    <!-- Separate values from datastring into individual variables. -->
{{#vardefine:ItemName|{{{1}}}}}
    {{#vardefine:ItemName|{{#explode: {{#var:Datastring}}|;|0}}}}
{{#vardefine:InvSlots|{{ValuableData|{{#var:ItemName}}|InvSlots}}}}
    {{#vardefine:ItemID|{{#explode: {{#var:Datastring}}|;|1}}}}
{{#vardefine:Price|{{ValuableData|{{#var:ItemName}}|Price}}}}
    {{#vardefine:Image|{{#explode: {{#var:Datastring}}|;|2}}}}
{{#vardefine:ItemDescription|{{ValuableDescriptions|{{#var:ItemName}}}}}}
    {{#vardefine:InvSlots|{{#explode: {{#var:Datastring}}|;|3}}}}
<!-- Load translations that are used multiple times into variables. -->
    {{#vardefine:Price|{{#explode: {{#var:Datastring}}|;|4}}}}
{{#vardefine:TranslateName|{{Translate|{{{1}}}|ItemNames}}}}
    {{#vardefine:ItemDescription|{{#explode: {{#var:Datastring}}|;|5}}}}
|-
    <!-- Load translations that are used multiple times into variables. -->
<!-- Check if we are on a subpage. If subpagename = pagename, we are not on a subpage, therefore URL becomes "item name". If we are on a subpage, URL becomes "item name/subgpagename". Used for other languages. -->
    {{#vardefine:TranslateName|{{Translate|{{{1}}}|ItemNames}}}}
| '''[[{{#ifeq:{{SUBPAGENAME}}|{{PAGENAME}}|{{{1}}}|{{{1}}}/{{SUBPAGENAME}}}}|<!--
    |-
--- Check if item name has a translation. If yes, load translation of item name. If not, return empty string. Used for other languages. -->
    <!-- Check if we are on a subpage. If subpagename = pagename, we are not on a subpage, therefore URL becomes "item name". If we are on a subpage, URL becomes "item name/subgpagename". Used for other languages. -->
{{#if:{{#var:TranslateName}}|{{#var:TranslateName}}}}]]'''<!--
    | '''[[{{#ifeq:{{SUBPAGENAME}}|{{PAGENAME}}|{{{1}}}|{{{1}}}/{{SUBPAGENAME}}}}|<!--
-->[[File:{{{1}}}.png|center|<!--
    --- Check if item name has a translation. If yes, load translation of item name. If not, return empty string. Used for other languages. -->
--- Check if there is a custom name. If yes, load custom name translation, otherwise load item name translation. -->
    {{#if:{{#var:TranslateName}}|{{#var:TranslateName}}}}]]'''<!--
alt={{#var:TranslateName}}|class=image2x|link={{#ifeq:{{SUBPAGENAME}}|{{PAGENAME}}|{{{1}}}|{{{1}}}/{{SUBPAGENAME}}}}]]
    -->[[File:{{#var:ItemID}}.png|center|<!--
| {{#var:InvSlots}}
    --- Check if there is a custom name. If yes, load custom name translation, otherwise load item name translation. -->
| {{#var:Price}} [[File:Gold.png|27x27px]]
    alt={{#var:TranslateName}}|class=image2x|link={{#ifeq:{{SUBPAGENAME}}|{{PAGENAME}}|{{{1}}}|{{{1}}}/{{SUBPAGENAME}}}}]]
| {{#if:{{#var:ItemDescription}}|{{#var:ItemDescription}}|{{#var:ItemName}}}}
    | {{#var:InvSlots}}
    | {{#var:Price}} [[File:Gold.png|27x27px]]
    | {{#if:{{#var:ItemDescription}}|{{#var:ItemDescription}}|{{#var:ItemName}}}}
</includeonly>
</includeonly>
<noinclude>{{doc}}[[Category:Templates]]</noinclude>
<noinclude>{{doc}}[[Category:Templates]]</noinclude>

Revision as of 20:51, 14 January 2025

Template-info.png Documentation

This article is a stub. You can help Stoneshard wiki by expanding it.

This Template replicates the logic used for the Template:WeaponTable/row.

Syntax

{{ValuableTable/row|Agate}}

Usage

It should be used with a 'header', right before it.
{{ValuableTable/head}}
{{ValuableTable/row|Agate}}.

Any Valuables added in Valuable Data, can be used with the '/row' template.

Debug

For future modifications or debugging, you can add this, after the "ItemDescription" variable (Open Source to verify code):

   [...]
   |{{{1}}}
   Base Image: 
   Variants: 
   Datastring: 

Examples

Single Image

Item Inv. Slots Price Gold Icon Description





Agate 50 Common folk believe agate to bring good luck. It's often used to make cheap jewelry. Gold.png Agate


Multiple Images

Item Inv. Slots Price Gold Icon Description





Horse Pelt 60 Peasants only kill horses that are hopelessly sick or already half-dead from old age. Gold.png Horse Pelt






Rabbit Pelt 40-50 Despite how cautious and skittish rabbits can be, hunting one down isn't that hard. Their pelts are usually used to make clothes. Gold.png Rabbit Pelt