addEventHandler: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - " *\|= " to " ") |
Lou Montana (talk | contribs) m (Text replacement - " *\| *([Cc]omments|COMMENTS|Game|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments \("local" or "global"\)|Multiplayer Effects \("local" or "global"\)|Multiplayer Execution \("serv...) |
||
Line 1: | Line 1: | ||
{{Command | {{Command | ||
| ofpr | | ofpr | ||
|1.85 | |1.85 | ||
|arg= global |MParg= | |arg= global |MParg= | ||
Line 9: | Line 9: | ||
|eff= local |MPEFFECTS= | |eff= local |MPEFFECTS= | ||
|gr1= Event Handlers | |gr1= Event Handlers | ||
| Adds an Event Handler to the given object. Event Handler parameters are accessiable via the <tt>_this</tt> inside the code. | | Adds an Event Handler to the given object. Event Handler parameters are accessiable via the <tt>_this</tt> inside the code. | ||
Line 16: | Line 16: | ||
* Use [[removeEventHandler]] to remove an Event Handler. | * Use [[removeEventHandler]] to remove an Event Handler. | ||
Read [[:Category:Event Handlers|Event Handlers]] for more information and a list of all available Event Handlers. | Read [[:Category:Event Handlers|Event Handlers]] for more information and a list of all available Event Handlers. | ||
| | | object [[addEventHandler]] [type, code] | ||
| | |p1= '''object''': [[Object]] | ||
|p3= '''code''': [[Code]] or [[String]] - Code that should be executed when the Event Handler is triggered; executed in [[missionNamespace]] by default. | |p2= '''type''': [[String]] - See [[:Category:Event Handlers|Event Handlers]] for the full list of available options. | ||
|p3= '''code''': [[Code]] or [[String]] - Code that should be executed when the Event Handler is triggered; executed in [[missionNamespace]] by default. | |||
| [[Number]] - The index of the added Event Handler. Indices start at 0 for each unit and increment with each added Event Handler. |RETRUNVALUE= | | [[Number]] - The index of the added Event Handler. Indices start at 0 for each unit and increment with each added Event Handler. |RETRUNVALUE= | ||
|x1= <code>_index = [[player]] [[addEventHandler]] ["Killed", {_this [[exec]] "playerKilled.sqs"}];</code> | |x1= <code>_index = [[player]] [[addEventHandler]] ["Killed", {_this [[exec]] "playerKilled.sqs"}];</code> | ||
|x2= <code>this [[addEventHandler]] ["Killed", "[[hint]] [[format]] ['Killed by %1', _this [[a_hash_b|#]] 1];"];</code> | |x2= <code>this [[addEventHandler]] ["Killed", "[[hint]] [[format]] ['Killed by %1', _this [[a_hash_b|#]] 1];"];</code> | ||
|mp= Some event handlers are persistent (i.e. they stay attached to the unit, even after it dies and respawns). |Multiplayer= | |mp= Some event handlers are persistent (i.e. they stay attached to the unit, even after it dies and respawns). |Multiplayer= | ||
| [[removeEventHandler]], [[removeAllEventHandlers]], [[:Category:Event Handlers|Event Handlers]], [[addMPEventHandler]], [[addMissionEventHandler]], [[BIS_fnc_addScriptedEventHandler]] | | [[removeEventHandler]], [[removeAllEventHandlers]], [[:Category:Event Handlers|Event Handlers]], [[addMPEventHandler]], [[addMissionEventHandler]], [[BIS_fnc_addScriptedEventHandler]] | ||
}} | }} |
Revision as of 00:04, 18 January 2021
Description
- Description:
- Adds an Event Handler to the given object. Event Handler parameters are accessiable via the _this inside the code.
- Since Arma 3 v.1.63.137807 the Event Handler index is available as _thisEventHandler during Event Handler code execution.
- You can add as many Event Handlers of any type as you like to every unit. Existing Event Handlers do not get overwritten.
- Use removeEventHandler to remove an Event Handler.
- Multiplayer:
- Some event handlers are persistent (i.e. they stay attached to the unit, even after it dies and respawns).
- Groups:
- Event Handlers
Syntax
- Syntax:
- object addEventHandler [type, code]
- Parameters:
- object: Object
- 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 is triggered; executed in missionNamespace by default.
- Return Value:
- 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:
_index = player addEventHandler ["Killed", {_this exec "playerKilled.sqs"}];
- Example 2:
this addEventHandler ["Killed", "hint format ['Killed by %1', _this # 1];"];
Additional Information
- See also:
- removeEventHandlerremoveAllEventHandlersEvent HandlersaddMPEventHandleraddMissionEventHandlerBIS_fnc_addScriptedEventHandler
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Notes
Bottom Section
- Posted on July 7, 2015 - 21:06 (UTC)
- Killzone Kid
-
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!
Categories:
- Scripting Commands
- Introduced with Operation Flashpoint: Resistance version 1.85
- Operation Flashpoint: Resistance: New Scripting Commands
- Operation Flashpoint: Resistance: Scripting Commands
- Command Group: Event Handlers
- Scripting Commands: Local Effect
- Scripting Commands OFP 1.99
- Scripting Commands OFP 1.96
- ArmA: Armed Assault: Scripting Commands
- Arma 2: Scripting Commands
- Arma 3: Scripting Commands
- Take On Helicopters: Scripting Commands