configClasses
Jump to navigation
Jump to search
Description
- Description:
- Returns an array of config entries which meet criteria in condition code. Command iterates through all available config sub classes of the given config class. Current looked at config is stored in _x variable (similar to alternative count command implementation). Condition has to return true in order for the looked at config to be added to the resulting array.
- Groups:
- Uncategorised
Syntax
- Syntax:
- condition configClasses config
- Parameters:
- condition: String
- config: Config
- Return Value:
- Array - Array of Configs
Examples
- Example 1:
- collect all CfgVehicles configs:
_configs = " true" configClasses (configFile >> "CfgVehicles");
- Example 2:
- Return all classes that can transport 10 and more soldiers:
_transporters = "getNumber (_x >> 'transportSoldier') >= 10" configClasses (configFile >> "CfgVehicles");
- Example 3:
- Return all classes that inherit from 'RscText':
hint str ("inheritsFrom _x == (configFile >> 'RscText')" configClasses configFile);
Additional Information
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
- Posted on Jul 19, 2014 - 20:08
- ffur2007slx2_5
-
(ArmA3 1.24) It is recommended to use configClasses instead of BIS_fnc_getCfgSubClasses and BIS_fnc_uniqueClasses on subclasses collection or conditional selection.
_faces = "true" configClasses (configFile >> "Cfgfaces"); //same as: _faces = (configfile >> "CfgFaces") call BIS_fnc_getCfgSubClasses;
//Extract all animals: animals = "((configName _x) isKindOf 'animal')" configClasses (configFile >> "CfgVehicles"); /*same as: aniamls = []; [(configFile >> "CfgVehicles"),{ if ((configName _this) isKindOf “animal”) then { animals set [ count animals, _this] } } ] call BIS_fnc_uniqueClasses;*/
Return nested subclasses, currently still BIS_fnc_returnChildren//Return all nested config classes.
[(configFile >> "CfgFaces"),1, true, true ] call BIS_fnc_returnChildren; - Posted on oct 19, 2014 - 12:24
- Iceman77
- A fantastic way to filter stuff. eg; Create an array of west vehicles and spawn then in front of the player in rows of 5
private ["_cfgArray","_xPos","_yPos","_veh"]; _cfgArray = "( (getNumber (_x >> 'scope') >= 2) && {getNumber (_x >> 'side') == 1 && {getText (_x >> 'vehicleClass') in ['Armored', 'Car', 'Air'] } } )" configClasses (configFile >> "CfgVehicles"); _xPos = 0; _yPos = 0; { _yPos = _yPos + 20; _veh = createVehicle [ ( configName _x ), player modelToWorld [_xPos, _yPos, 0], [], 0, "None"]; if (_yPos >= 100) then { _yPos = 0; _xPos = _xPos + 20; }; } forEach _cfgArray;