User Tools

Site Tools


tutorial:lang

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
tutorial:lang [2019/07/24 12:56] fudgetutorial:lang [2019/07/24 16:43] – Adding a new line fudge
Line 38: Line 38:
  
 And the tooltip will be displayed as "My Tooltip" ! And the tooltip will be displayed as "My Tooltip" !
 +
 +==== Adding dynamic values to translatable text ====
 +Say you want the text to change based on some variable, like the current day and month. 
 +For a dynamic number, we put a %d where you want the number to show in the lang entry value, for example:
 +<code JavaScript resources/assets/tutorial/lang/en_us.json>
 +{
 +  "item.tutorial.fabric_item.tooltip": "My Tooltip in day %d, and month %d" 
 +}
 +</code>
 +Then we pass the variables we use in our string by the order it appears in the text. First the day, then the month:
 +<code java>
 +int currentDay = 4;
 +int currentMonth = 7;
 +tooltip.add(new TranslatableText("item.tutorial.fabric_item.tooltip", currentDay, currentMonth));
 +</code>
 +
 +And the tooltip will be displayed as "My Tooltip in day 4, and month 7"
 +In order to pass a string, we use ''%s'' instead of ''%d''
 +For more information, see [[https://dzone.com/articles/java-string-format-examples|Java String.format]] (it works the same way).
 +
 +==== Adding a new line ====
 +Making ''\n'' work was far too difficult for Mojang, so in order to have a string with multiple lines you must split the translation key into multiple keys:
 +<code JavaScript resources/assets/tutorial/lang/en_us.json>
 +{
 +  "item.tutorial.fabric_item.tooltip_1": "Line 1 of my tooltip" 
 +  "item.tutorial.fabric_item.tooltip_2": "Line 2 of my tooltip" 
 +}
 +</code>
 +Then add the ''TranslatableText'' parts individually:
 +<code java>
 +tooltip.add(new TranslatableText("item.tutorial.fabric_item.tooltip_1"));
 +tooltip.add(new TranslatableText("item.tutorial.fabric_item.tooltip_2"));
 +</code>
 +And the tooltip will be displayed as:
 +<code>
 +Line 1 of my tooltip
 +Line 2 of my tooltip
 +</code>
  
 ====== Translation format ====== ====== Translation format ======
tutorial/lang.txt · Last modified: 2024/02/06 10:26 by rawdiamondmc