addAction: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
No edit summary
Line 36: Line 36:
So an example of an action-based script goes like this:
So an example of an action-based script goes like this:


'''_obj = _this select 0'''
'''_obj = _this''' [[select]] '''0'''


'''_man = _this select 1'''
'''_man = _this''' [[select]] '''1'''


'''_index = _this select 2'''
'''_index = _this''' [[select]] '''2'''





Revision as of 15:07, 15 April 2006

back to COMREF

unit addaction action

Operand types:

unit: Object
action: Array

Type of returned value:

Nothing

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 set the ID of the action yourself.

This can be accomplished by doing the following:

myaction = player addAction ["Hello", "hello.sqs"]

This sets the action's ID to "myaction".

This can make keeping track of actions much easier.

To remove the above action, you would use the following line:

player removeAction myaction