getText: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>")
m (Some wiki formatting)
 
(13 intermediate revisions by 2 users not shown)
Line 27: Line 27:
|r1= [[String]] - text value
|r1= [[String]] - text value


|x1= <code>_text = getText (configFile [[gtgt|>>]] "CfgVehicles" [[gtgt|>>]] "Thing" [[gtgt|>>]] "icon"); // "Get in %1 as Driver"</code>
|x1= <sqf>_text = getText (configFile >> "CfgVehicles" >> "Thing" >> "icon"); // "Get in %1 as Driver"</sqf>


|seealso= [[configFile]] [[config / name]] [[configName]] [[count]] [[getArray]] [[getNumber]] [[inheritsFrom]] [[isArray]] [[isClass]] [[isNumber]] [[isText]] [[select]] [[getTextRaw]]
|seealso= [[configFile]] [[a / b]] [[configName]] [[count]] [[getArray]] [[getNumber]] [[inheritsFrom]] [[isArray]] [[isClass]] [[isNumber]] [[isText]] [[select]] [[getTextRaw]]
}}
}}


<dl class="command_description">
{{Note
 
|user= ffur2007slx2_5
<dt></dt>
|timestamp= 201403280752
<dd class="notedate">Posted on Mar 28, 2014 - 07:52</dd>
|text= ({{arma3}} 1.14) It's recommended to use [[BIS_fnc_getCfgData]] or [[BIS_fnc_returnConfigEntry]] to get variable cfg data rather than conditioning via [[isNumber]], [[isText]], [[isArray]], [[getNumber]], [[getText]] and [[getArray]] combination.<br>
<dt class="note">[[User:ffur2007slx2_5|ffur2007slx2_5]]</dt>
<dd class="note">
({{arma3}} 1.14) It's recommended to use [[BIS_fnc_getCfgData]] or [[BIS_fnc_returnConfigEntry]] to get variable cfg data rather than conditioning via [[isNumber]], [[isText]], [[isArray]], [[getNumber]], [[getText]] and [[getArray]] combination.<br>
Traditional workaround:
Traditional workaround:
<code>_cfg = configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type"
<sqf>
_cfg = configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type";
switch ( true ) do
switch ( true ) do
{
{
case (isNumber _cfg): {getNumber _cfg};
case (isNumber _cfg): {getNumber _cfg};
case (isText _cfg): {[[getText]] _cfg};
case (isText _cfg): {getText _cfg};
[[case]] ([[isArray]] _cfg): {[[getArray]] _cfg;};
case (isArray _cfg): {getArray _cfg;};
[[default]] { nil };
default { nil };
};</code>
};
</sqf>
'''Recommended workaround:'''
'''Recommended workaround:'''
<code>(configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type") call BIS_fnc_getCfgData;
<sqf>(configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type") call BIS_fnc_getCfgData;</sqf>
</code>
To return default value once entry was not found, we can use [[BIS_fnc_returnConfigEntry]] instead of [[BIS_fnc_getCfgData]]. e.g.
To return default value once entry was not found, we can use [[BIS_fnc_returnConfigEntry]] instead of [[BIS_fnc_getCfgData]]. e.g.
<code>[(configFile >> "CannonFire" >> "LightExp"),"lifeTime",0] call BIS_fnc_returnConfigEntry;//0.5
<sqf>[(configFile >> "CannonFire" >> "LightExp"),"lifeTime",0] call BIS_fnc_returnConfigEntry;//0.5</sqf>
</code>
To compose collected [[String]] into [[Array]], use [[BIS_fnc_getCfgDataArray]] instead. E.g.
To compose collected [[String]] into [[Array]], use [[BIS_fnc_getCfgDataArray]] instead. E.g.
<code>(configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type") call BIS_fnc_getCfgDataArray;
<sqf>(configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type") call BIS_fnc_getCfgDataArray;</sqf>
</code>
}}
</dl>

Latest revision as of 23:31, 13 May 2023

Hover & click on the images for description

Description

Description:
Extracts localized text from config entry, if entry is subject to localization, otherwise returns text value. To obtain the translation key itself, see getTextRaw.
Groups:
Config

Syntax

Syntax:
getText config
Parameters:
config: Config
Return Value:
String - text value

Examples

Example 1:
_text = getText (configFile >> "CfgVehicles" >> "Thing" >> "icon"); // "Get in %1 as Driver"

Additional Information

See also:
configFile a / b configName count getArray getNumber inheritsFrom isArray isClass isNumber isText select getTextRaw

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
ffur2007slx2_5 - c
Posted on Mar 28, 2014 - 07:52 (UTC)
(Arma 3 1.14) It's recommended to use BIS_fnc_getCfgData or BIS_fnc_returnConfigEntry to get variable cfg data rather than conditioning via isNumber, isText, isArray, getNumber, getText and getArray combination.
Traditional workaround:
_cfg = configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type"; switch ( true ) do { case (isNumber _cfg): {getNumber _cfg}; case (isText _cfg): {getText _cfg}; case (isArray _cfg): {getArray _cfg;}; default { nil }; };
Recommended workaround:
(configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type") call BIS_fnc_getCfgData;
To return default value once entry was not found, we can use BIS_fnc_returnConfigEntry instead of BIS_fnc_getCfgData. e.g.
[(configFile >> "CannonFire" >> "LightExp"),"lifeTime",0] call BIS_fnc_returnConfigEntry;//0.5
To compose collected String into Array, use BIS_fnc_getCfgDataArray instead. E.g.
(configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type") call BIS_fnc_getCfgDataArray;