2015-01-11 16:42:31 +00:00
|
|
|
/*
|
|
|
|
* Author: commy2
|
2015-09-18 23:50:17 +00:00
|
|
|
* Remove an addAction menu event from a unit.
|
2015-01-11 16:42:31 +00:00
|
|
|
*
|
2015-09-18 23:50:17 +00:00
|
|
|
* Arguments:
|
|
|
|
* 0: Unit the action is assigned to <OBJECT>
|
|
|
|
* 1: Name of the action, e.g. "DefaultAction" <STRING>
|
|
|
|
* 2: ID of the action <NUMBER>
|
2015-01-11 16:42:31 +00:00
|
|
|
*
|
2015-09-18 23:50:17 +00:00
|
|
|
* Return Value:
|
|
|
|
* None
|
2015-01-11 16:42:31 +00:00
|
|
|
*
|
2017-06-08 13:31:51 +00:00
|
|
|
* Example:
|
|
|
|
* [bob, "DefaultAction", 5] call ace_common_fnc_removeActionMenuEventHandler
|
|
|
|
*
|
2015-09-18 23:50:17 +00:00
|
|
|
* Public: No
|
2015-01-11 16:42:31 +00:00
|
|
|
*/
|
2015-01-13 19:56:02 +00:00
|
|
|
#include "script_component.hpp"
|
2015-01-11 16:42:31 +00:00
|
|
|
|
2015-09-18 23:50:17 +00:00
|
|
|
params ["_unit", "_action", "_id"];
|
2015-01-11 16:42:31 +00:00
|
|
|
|
|
|
|
if (_id == -1) exitWith {};
|
|
|
|
|
2015-12-14 12:08:19 +00:00
|
|
|
private _name = format ["ACE_ActionMenu_%1", _action];
|
|
|
|
private _actionsVar = _unit getVariable [_name, [-1, [-1, [], []]]];
|
2015-01-11 16:42:31 +00:00
|
|
|
|
2015-09-18 23:50:17 +00:00
|
|
|
_actionsVar params ["_currentID", "_actionIDs", "_actions"];
|
2015-01-11 16:42:31 +00:00
|
|
|
|
|
|
|
_id = _actionIDs find _id;
|
|
|
|
|
|
|
|
if (_id == -1) exitWith {};
|
|
|
|
|
|
|
|
_action = _actions select _id;
|
2015-09-18 23:50:17 +00:00
|
|
|
|
|
|
|
_action params ["_actionID", "_nameVar"];
|
2015-01-11 16:42:31 +00:00
|
|
|
|
|
|
|
missionNamespace setVariable [_nameVar, nil];
|
|
|
|
|
|
|
|
_actionIDs deleteAt _id;
|
|
|
|
_actions deleteAt _id;
|
|
|
|
|
|
|
|
_unit removeAction _actionID;
|
|
|
|
|
|
|
|
_unit setVariable [_name, [_currentID, _actionIDs, _actions], false];
|