Arma 3 Scripting

getNumber

  • Arma 3 v0.50
  • First in Armed Assault v1.00

Command · Markdown · JSON · original wiki page

Description

Extract number from config entry.

Syntax

getNumber config

Parameters:

Returns: Number

Examples

Example 1

_value = getNumber (configFile >> "CfgVehicles" >> "Thing" >> "maxSpeed");

See also

configFile · a / b · configName · count · getArray · getText · inheritsFrom · isArray · isClass · isNumber · isText · select

Community notes

Loki

With an not existing entry, getNumber returns 0.

ffur2007slx2_5

(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:

private _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.

[(configFile >> "CannonFire" >> "LightExp"),"lifeTime",0] call BIS_fnc_returnConfigEntry; // 0.5

To compose collected Number into Array, use BIS_fnc_getCfgDataArray instead.

(configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type") call BIS_fnc_getCfgDataArray;

To retype collected Number into Boolean, use BIS_fnc_getCfgDataBool. Anything bigger than 0 is true, otherwise false.

(configFile >> "CfgVehicles" >> _SomeAddonClassName >> "DestructionEffects" >> "Smoke1" >> "type") call BIS_fnc_getCfgDataBool;