ACE3/addons/interaction/functions/fn_removeInteraction.sqf

37 lines
794 B
Plaintext
Raw Normal View History

2015-01-11 19:32:51 +00:00
/*
* Author: commy2
*
* Remove an ACE action from an object. Note: This function is global.
2015-01-11 23:13:47 +00:00
*
2015-01-11 19:32:51 +00:00
* Argument:
* 0: Object (Object)
* 1: ID of the action (Number)
2015-01-11 23:13:47 +00:00
*
2015-01-11 19:32:51 +00:00
* Return value:
* None.
*/
2015-01-11 23:13:47 +00:00
#include "script_component.hpp"
2015-01-11 19:32:51 +00:00
private ["_object", "_id", "_actionsVar", "_currentID", "_actionIDs", "_actions"];
_object = _this select 0;
_id = _this select 1;
2015-01-11 23:13:47 +00:00
_actionsVar = _object getVariable [QGVAR(Interactions), [-1, [], []]];
2015-01-11 19:32:51 +00:00
_currentID = _actionsVar select 0;
_actionIDs = _actionsVar select 1;
_actions = _actionsVar select 2;
_id = _actionIDs find _id;
if (_id == -1) exitWith {};
_actionIDs set [_id, -1];
_actionIDs = _actionIDs - [-1];
_actions set [_id, []];
_actions = _actions - [[]];
2015-01-11 23:13:47 +00:00
_object setVariable [QGVAR(Interactions), [_currentID, _actionIDs, _actions], true];