addAction
unit addaction [action, script,(arguments,priority, showWindow, hideOnUse, shortcut)]
Operand types:
unit: Object
[action, script,(arguments,priority, showWindow, hideOnUse, shortcut)]: Array
Type of returned value:
Compatibility:
Added in version 1.10
Description:
Create an action.
Action ID should be returned, but due to bug it is not.
To determine action ID use following algorithm:
First action added to given vehicle has ID zero, next has ID 1, etc.
Example:
player addAction ["Hello", "hello.sqs"]
Comments:
It seems that since version 1.85+(?) addAction has correctly returned action ID.
Params passed by an action to the executed script:
[(object action was attached to), (unit that activated action), (index of action)]
So an example of an action-based script goes like this:
_obj = _this select 0
_man = _this select 1
_index = _this select 2
If you want to remove the action from the object immediately after it's triggered, use this line along with the above:
_obj removeAction _index
An easy way to keep track of and remove actions is to store the IDs of the actions in variables. This can be accomplished by doing the following:
myaction = player addAction ["Hello", "hello.sqs"]
This stores the action's ID in the global variable "myaction" and assists in keeping track of the action ID. To remove the above action, you would use the following line:
player removeAction myaction
MP Note:
This command, as well as configed actions, are executed only locally (not public).
Known Problems:
Due to a bug in OFP actions added via addAction don't get updated properly after mounting vehicles.
When you have several actions available while mounting a vehicle and drive away from the actions' position, they'll still be shown in the menu until you dismount and remount the vehicle.
There are work-arounds mentioned on the OFPEC Forums