mostly working
This commit is contained in:
38
framework/emp/functions/fn_isItemElectronic.sqf
Normal file
38
framework/emp/functions/fn_isItemElectronic.sqf
Normal file
@@ -0,0 +1,38 @@
|
||||
#include "..\script_component.hpp"
|
||||
|
||||
params [
|
||||
["_itemClassname", "", [""]]
|
||||
];
|
||||
|
||||
if (_itemClassname isEqualTo "") exitWith {
|
||||
["Param _itemClassname is empty", ""] call BIS_fnc_error;
|
||||
false
|
||||
};
|
||||
|
||||
private _isTFARRadio = if (isClass (configFile >> "CfgPatches" >> "tfar_core")) then {_itemClassname call TFAR_fnc_isRadio} else {false};
|
||||
if (_isTFARRadio) exitWith {true};
|
||||
|
||||
private _matchedSpecificClassnames = {(toLower _x) in (toLower _className)} count [
|
||||
"ACE_microDAGR",
|
||||
"Vector21",
|
||||
"MineDetector",
|
||||
"GPS"
|
||||
];
|
||||
|
||||
if (_matchedSpecificClassnames > 0) exitWith {true};
|
||||
|
||||
// find items with NVG or TI capabilities
|
||||
private _cfg = _className call CBA_fnc_getItemConfig;
|
||||
private _modes = getArray(configfile >> "CfgWeapons" >> _className >> "visionMode");
|
||||
private _subModes = [configfile >> "CfgWeapons" >> _className >> "ItemInfo" >> "OpticsModes", 1] call BIS_fnc_returnChildren;
|
||||
{
|
||||
_modes append getArray( _x >> "visionMode" );
|
||||
} forEach _subModes;
|
||||
|
||||
private _hasTI = "ti" in (_modes apply { toLower _x });
|
||||
private _hasNVG = "nvg" in (_modes apply { toLower _x });
|
||||
|
||||
if (_hasTI || _hasNVG) exitWith {true};
|
||||
|
||||
|
||||
false;
|
||||
Reference in New Issue
Block a user