2015-08-11 17:49:39 +00:00
|
|
|
/*
|
|
|
|
* Author: voiper
|
|
|
|
* Compile list of flashlight classnames and add to the "Flashlight" parent menu.
|
|
|
|
*
|
|
|
|
* Arguments:
|
|
|
|
* 0: Vehicle <OBJECT>
|
|
|
|
* 1: Player <OBJECT>
|
|
|
|
* 3: Parameters <ARRAY>
|
|
|
|
*
|
|
|
|
* Return value:
|
|
|
|
* None
|
|
|
|
*
|
|
|
|
* Example:
|
|
|
|
* [_player, _player, []] call ace_map_fnc_compileFlashlightMenu;
|
|
|
|
*
|
|
|
|
* Public: No
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "script_component.hpp"
|
|
|
|
|
2015-10-14 19:36:40 +00:00
|
|
|
params ["", "_player"];
|
|
|
|
|
|
|
|
private["_action", "_actions", "_cfg", "_displayName", "_flashlights", "_icon", "_statement"];
|
2015-08-11 17:49:39 +00:00
|
|
|
|
|
|
|
_actions = [];
|
|
|
|
_flashlights = [_player] call FUNC(getUnitFlashlights);
|
|
|
|
|
|
|
|
//add all carried flashlight menus and on/off submenu actions
|
|
|
|
{
|
2015-10-14 17:56:54 +00:00
|
|
|
_cfg = (configFile >> "CfgWeapons" >> _x);
|
|
|
|
_displayName = getText (_cfg >> "displayName");
|
|
|
|
_icon = getText (_cfg >> "picture");
|
2015-10-14 19:36:40 +00:00
|
|
|
|
|
|
|
_statement = if (GVAR(flashlightInUse) == _x) then {
|
|
|
|
_displayName = format [localize LSTRING(turnLightOff), _displayName];
|
|
|
|
{[""] call FUNC(switchFlashlight)}
|
|
|
|
} else {
|
|
|
|
_displayName = format [localize LSTRING(turnLightOn), _displayName];
|
|
|
|
{[_this select 2] call FUNC(switchFlashlight)}
|
2015-08-11 17:49:39 +00:00
|
|
|
};
|
|
|
|
|
2015-10-14 19:36:40 +00:00
|
|
|
_action = [_x, _displayName, _icon, _statement, {true}, {}, _x] call EFUNC(interact_menu,createAction);
|
|
|
|
_actions pushBack [_action, [], _player];
|
2015-08-11 17:49:39 +00:00
|
|
|
} forEach _flashlights;
|
|
|
|
|
2015-10-14 17:56:54 +00:00
|
|
|
_actions
|