Arma 3 Scripting

Command in Config

getArray

Also available as Markdown and JSON, or read the original wiki page.

Description

Extract array from config entry.

Syntax

getArray config

Parameters:

Returns: Array of Anything

Examples

Example 1

_array = getArray (configFile >> "CfgVehicles" >> "Thing" >> "threat");

See also

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

Community notes

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:

_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
demellion

There is special behaviour if you try to read a description.ext config entry Array that contains a Boolean.

Getting array in MP will result in Number, while SP will return String.

// SP with false in array
getArray (missionConfigFile >> "someClass" >> "someArray") // -> "false"

// MP with false in array
getArray (missionConfigFile >> "someClass" >> "someArray") // -> 0