Terraria Wiki
Terraria Wiki
m (en sync - rev 948575)
mAucun résumé des modifications
(7 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 6 : Ligne 6 :
   
 
//autoload data if needed
 
//autoload data if needed
-->{{#if:{{#dplvar:l10n:{{#var:a3}}:{{#var:a1}}:1}}||<!-- check namespace+lang flag
+
-->{{#if:{{#dplvar:l10n:{{#var:a1}}:{{#var:a3}}:1}}||<!-- needs autoload?
  +
-->{{#if:{{#or:<!-- if
-->{{#vardefine:_|<!-- wrap to prevent the "template not existing" error output.
 
-->{{{{#var:a1}}/l10n}}<!-- try to autoload template:<namespace>/l10n
+
-->{{#if:{{#dplvar:l10n:autoloaded:{{#var:a1}}}}||{{#if:{{#dplvar:l10n:{{#var:a1}}:en:1}}||y}}}}<!-- not autoloaded and en isn't registered
  +
-->|<!-- or
  +
-->{{#dplvar:l10n:{{#var:a1}}:{{#var:a3}}:2}}<!-- this language is not fully loaded
  +
-->}}|<!-- then: autoload
  +
-->{{#vardefine:l10n:autoloading|{{#var:a3}}}}<!-- mark for to /l10n.
  +
-->{{#vardefine:_| {{ {{#var:a1}}/l10n }} }}<!-- try to auto template:<namespace>/l10n. wrap to avoid unexpected output.
  +
-->{{#vardefine:l10n:autoloading|}}<!-- reset.
 
-->}}<!--
 
-->}}<!--
 
-->}}<!--
 
-->}}<!--
   
  +
//stack counter, to generate unique var name for each calling level, for proper recursion
//Localization string for current lang,if no result, use en version. Then replace placeholder tokens if needed
 
-->{{#invoke:localization|replace|str={{#or:{{#dplvar:l10n:{{#var:a3}}:{{#var:a1}}:{{#var:a2}}}}|{{#dplvar:l10n:en:{{#var:a1}}:{{#var:a2}}}}}}}}<!--
+
-->{{#vardefine:__l10n_stack|{{#expr:{{#var:__l10n_stack|0}}+1}}}}<!--
   
 
// Localization string for current lang,if no result, use en version: (can not use {{#or:}} since it needs to keep escaped )
--></includeonly><noinclude>{{lua}}{{doc}}</noinclude>
 
  +
-->{{#vardefine:_l10n_v{{#var:__l10n_stack}}|{{#dplvar:l10n:{{#var:a1}}:{{#var:a3}}:{{#var:a2}}}}}}<!--
  +
-->{{#vardefine:_l10n_v{{#var:__l10n_stack}}|{{#var:_l10n_v{{#var:__l10n_stack}}|{{#dplvar:l10n:{{#var:a1}}:en:{{#var:a2}}}}}}}}<!--
  +
  +
//replace if needed
  +
//use {{#replace:}} for better performance. {{#replace:}} has a length limit, use lua version can avoid hitting the limit. lua version is slower so require {{l10n/long| }} explicitly to use.
  +
-->{{#forargs:$|_key|_value|<!--
  +
-->{{#vardefine:_l10n_v{{#var:__l10n_stack}}|{{#replace:{{#var:_l10n_v{{#var:__l10n_stack}}}}|${{#var:_key}}|{{#var:_value}}}}}}<!--
  +
-->}}<!--
  +
  +
//output,unescape (by Extension:ParserPower, see https://help.gamepedia.com/Extension:ParserPower/Escape_sequences)
  +
-->{{#uesc:{{#var:_l10n_v{{#var:__l10n_stack}}}}}}<!--
  +
  +
//recover stack
  +
-->{{#vardefine:__l10n_stack|{{#expr:{{#var:__l10n_stack|0}}-1}}}}<!--
  +
 
--></includeonly><noinclude>{{doc}}</noinclude>

Version du 4 septembre 2020 à 16:01

Template-noinfo Documentation

Aucune sous-page de documentation n'existe pour le moment pour ce modèle. En créer une maintenant.