Update fn_logPlayerInventory.sqf

Expanded the items arrays to check not only internal inventory items but primary slot inventory items.
This commit is contained in:
2024-01-16 22:48:36 -06:00
parent 7a1d0be6d6
commit 6eb598b660

View File

@@ -5,13 +5,22 @@ params [
if (!isPlayer _player) exitWith { diag_log("exitWith logPlayerInventory")}; if (!isPlayer _player) exitWith { diag_log("exitWith logPlayerInventory")};
_items = []; _items = [];
_ietms pushback headgear _player;
_items pushback uniform _player;
_items append uniformItems _player; _items append uniformItems _player;
_items append vestItems _player; _items pushback vest _player;
_items append backpackItems _player; _items append vestItems _player;
_items pushback hmd _player; _items pushback backpack _player;
_items pushback binocular _player; _items append backpackItems _player;
_items append primaryWeaponItems _player; _items pushback hmd _player;
_items pushback binocular _player;
_items pushback primaryWeapon _player;
_items append primaryWeaponItems _player;
_items pushback secondaryWeapon _player;
_items append secondaryWeaponItems _player;
_unlisted = []; _unlisted = [];
@@ -20,8 +29,9 @@ _blacklist = [];
_tabbed = []; _tabbed = [];
_meme = []; _meme = [];
{ diag_log text format["[MILSIM] (logPlayerInventory): Checking %1 inventory.", name _player];
{
_blackListItems = [ // Items that NO member is allowed to use. _blackListItems = [ // Items that NO member is allowed to use.
"17BN_ANPVS14", // NVG AN/PVS-14 "17BN_ANPVS14", // NVG AN/PVS-14
@@ -229,63 +239,63 @@ _meme = [];
_item = _x; _item = _x;
_modes = getArray(configfile >> "CfgWeapons" >> _item >> "visionMode"); _modes = getArray(configfile >> "CfgWeapons" >> _item >> "visionMode");
_subModes = [configfile >> "CfgWeapons" >> _item >> "ItemInfo" >> "OpticsModes", 1] call BIS_fnc_returnChildren; _subModes = [configfile >> "CfgWeapons" >> _item >> "ItemInfo" >> "OpticsModes", 1] call BIS_fnc_returnChildren;
{ {
_modes append getArray( _x >> "visionMode" ); _modes append getArray( _x >> "visionMode" );
} forEach _subModes; } forEach _subModes;
if ( _item in _blackListItems ) then { if ( _item in _blackListItems ) then {
_blacklist pushBackUnique _item; _blacklist pushBackUnique _item;
}; };
if ( _item in _restrictedItems ) then { if ( _item in _restrictedItems ) then {
_restrcited pushBackUnique _item; _restrcited pushBackUnique _item;
}; };
if ( _item in _tabbedItems ) then { if ( _item in _tabbedItems ) then {
_tabbed pushBackUnique _item; _tabbed pushBackUnique _item;
}; };
if ( _item in _memeItems ) then { if ( _item in _memeItems ) then {
_meme pushBackUnique _item; _meme pushBackUnique _item;
}; };
if ((count _modes) isNotEqualTo 0) then { if ((count _modes) isNotEqualTo 0) then {
_modes = _modes apply { toLower _x }; _modes = _modes apply { toLower _x };
if ( "ti" in _modes ) then { if ( "ti" in _modes ) then {
_unlisted pushBackUnique _item; _unlisted pushBackUnique _item;
}; };
}; };
} forEach _items; } forEach _items;
{ {
diag_log text format["[MILSIM] (logPlayerInventory): %1 has a blacklisted inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )]; diag_log text format["[MILSIM] (logPlayerInventory): %1 has a blacklisted inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )];
} forEach _blacklist; } forEach _blacklist;
{ {
diag_log text format["[MILSIM] (logPlayerInventory): %1 has a restricted inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )]; diag_log text format["[MILSIM] (logPlayerInventory): %1 has a restricted inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )];
} forEach _restrcited; } forEach _restrcited;
{ {
diag_log text format["[MILSIM] (logPlayerInventory): %1 has a tabbed inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )]; diag_log text format["[MILSIM] (logPlayerInventory): %1 has a tabbed inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )];
} forEach _tabbed; } forEach _tabbed;
{ {
diag_log text format["[MILSIM] (logPlayerInventory): %1 has a meme inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )]; diag_log text format["[MILSIM] (logPlayerInventory): %1 has a meme inventory item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )];
} forEach _meme; } forEach _meme;
{ {
diag_log text format["[MILSIM] (logPlayerInventory): %1 has an unlisted thermal item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )]; diag_log text format["[MILSIM] (logPlayerInventory): %1 has an unlisted thermal item: %2", name _player, getText( configfile >> "CfgWeapons" >> _x >> "displayName" )];
} forEach _unlisted; } forEach _unlisted;
if (((count _blacklist) isEqualTo 0) && ((count _restrcited) isEqualTo 0) && ((count _tabbed) isEqualTo 0) && ((count _meme) isEqualTo 0) && ((count _unlisted) isEqualTo 0)) then { if (((count _blacklist) isEqualTo 0) && ((count _restrcited) isEqualTo 0) && ((count _tabbed) isEqualTo 0) && ((count _meme) isEqualTo 0) && ((count _unlisted) isEqualTo 0)) then {
diag_log text format["[MILSIM] (logPlayerInventory): %1 inventory in fully base inventory compliant.", name _player]; diag_log text format["[MILSIM] (logPlayerInventory): %1 inventory in fully base inventory compliant.", name _player];
}; }
nil nil