format

From Bohemia Interactive Community
Jump to navigation Jump to search
Hover & click on the images for description

Description

Description:
Composes a string containing other variables or other variable types. Converts any variable type to a string. If you want to convert a string back to a number, use parseNumber.
Groups:
Uncategorised

Syntax

Syntax:
String = format [formatString, var1, var2 ...]
Parameters:
[formatString, var1, var2 ...]: Array
formatString: String - a string containing text and/or references to the variables listed below in the array. The references appear in the form of %1, %2 etc.
var1: Any Value - variable referenced by %1
var2: Any Value - variable referenced by %2
......And so on.
Return Value:
String - The full string is returned.

Examples

Example 1:
format ["Player:%1, player's side:%2", player, side player]; returns "Player:WEST 1-1-A:1 (Username), player's side:WEST"
Example 2:
player addEventHandler ["HandleDamage", { hint format ["You just sustained %1%2 damage!", ceil ((_this select 2) * 100), "%"]; }]; hints "You just sustained 20% damage!"

Additional Information

See also:
formatText

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

Notes

Unknown
The format command is very strong in combination with call. Dynamic code can be created using format and then executed with call.
Worldeater
The maximum number of characters returned by the format command seems to depend on the total byte count. For plain ASCII strings the limit is 2048 characters.
Killzone_Kid
In Arma 3 the max length of String returned by format command seems to be 8191 characters. formatText doesn't seem to have this limitation.

Bottom Section

Posted on March 28, 2015 - 09:22 (UTC)
Heeeere's Johnny!
In addition to the note above, formatTexted strings are of type "TEXT", hence cannot be used like formatted strings (with most scripting commands). A workaround to get type "STRING" strings with more than 8191 characters is:str formatText ["%1", _string]