56 lines
1.8 KiB
Plaintext
56 lines
1.8 KiB
Plaintext
|
|
params [
|
|
["_player", objNull, [objNull]]
|
|
];
|
|
|
|
if (!isPlayer _player) exitWith { diag_log("exitWith logPlayerInventory")};
|
|
|
|
_items = [];
|
|
_items append uniformItems _player;
|
|
_items append vestItems _player;
|
|
_items append backpackItems _player;
|
|
_items pushback hmd _player;
|
|
_items pushback binocular _player;
|
|
_items append primaryWeaponItems _player;
|
|
|
|
_noncompliant = [];
|
|
_unlisted = [];
|
|
|
|
{
|
|
_item = _x;
|
|
_modes = getArray(configfile >> "CfgWeapons" >> _item >> "visionMode");
|
|
|
|
_subModes = [configfile >> "CfgWeapons" >> _item >> "ItemInfo" >> "OpticsModes", 1] call BIS_fnc_returnChildren;
|
|
|
|
{
|
|
_modes append getArray( _x >> "visionMode" );
|
|
} forEach _subModes;
|
|
|
|
_restrictedItemList = ["A3_GPNVG18b_REC_TI","A3_GPNVG18_REC_TI","A3_GPNVG18b_TI","A3_GPNVG18_TI","A3_GPNVG18b_REC_BLK_TI","A3_GPNVG18_REC_BLK_TI","A3_GPNVG18b_BLK_TI","A3_GPNVG18_BLK_TI","NVGogglesB_gry_F","NVGogglesB_grn_F","NVGogglesB_blk_F","optic_Nightstalker","rhsusf_acc_anpas13gv1","Tier1_ANPVS10_Tan","rhsusf_acc_anpvs27","optic_tws_mg","optic_tws"];
|
|
|
|
if ( _x in _restrictedItemList ) then {
|
|
_noncompliant pushBackUnique _item;
|
|
};
|
|
|
|
if ((count _modes) isNotEqualTo 0) then {
|
|
_modes = _modes apply { toLower _x };
|
|
if ( "ti" in _modes ) then {
|
|
_unlisted pushBackUnique _item;
|
|
};
|
|
};
|
|
|
|
} forEach _items;
|
|
|
|
{
|
|
diag_log text format["[MILSIM] (logPlayerInventory): %1 has a restricted inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )];
|
|
} forEach _noncompliant;
|
|
|
|
{
|
|
diag_log text format["[MILSIM] (logPlayerInventory): %1 has an unlisted thermal item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )];
|
|
} forEach _unlisted;
|
|
|
|
if (((count _noncompliant) isEqualTo 0) && ((count _unlisted) isEqualTo 0)) then {
|
|
diag_log text format["[MILSIM] (logPlayerInventory): %1 inventory in compliance", name _player];
|
|
};
|
|
|
|
nil |