Home Scripting Commands Event Handlers addEventHandler addEventHandler
Global argument Local effect Arma 3 v0.50 First in Operation Flashpoint v1.85
Command · Markdown · JSON · original wiki page
Description
Adds an Event Handler to the given object.
As many Event Handlers of any type can be added - existing Event Handlers do not get overwritten
Use removeEventHandler to remove an Event Handler
Read Event Handlers for more information and a list of all available Event Handlers.
Syntax
target addEventHandler [type , code]
Parameters:
target: Object or Arma 3 v2.10 Group
type: String - see Event Handlers for the full list of available options
code: Code or String - code that should be executed when the Event Handler fires; executed in missionNamespace by default. Several Magic Variables are available:
Event Handler parameters are accessible via _this
The Event Handler type is available as _thisEvent
The Event Handler index is available as _thisEventHandler
Returns: Number - the index of the added Event Handler. Indices start at 0 for each unit and increment with each added Event Handler.
Examples
Example 1
this addEventHandler ["Killed" , {
params ["_unit" , "_killer" ];
systemChat format ["%1 has been killed by %2." , _unit , _killer ];
}];
Example 2
_index = player addEventHandler ["Killed" , { _this exec "playerKilled.sqs" }]
Multiplayer
Some event handlers are persistent (i.e they stay attached to the unit, even after it dies and respawns).
See also
removeEventHandler · removeAllEventHandlers · addMPEventHandler · addMissionEventHandler · BIS_fnc_addScriptedEventHandler · getEventHandlerInfo
When using overridable EH, such as "InventoryOpened" and similar, where returning true allows to override default action, exitWith cannot be used to return value. So:
if (whatever) exitWith {true }; false ;
Forget about it, will not work. Instead use:
if (whatever) then {true } else {false };
100% satisfaction guaranteed!