addEventHandler: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "[[Category:Scripting Commands ArmA|" to "[[Category:Scripting Commands Armed Assault|") |
Lou Montana (talk | contribs) m (Text replacement - "\| *((\[\[.*\]\],? ?)+) * \}\}" to "|seealso= $1 }}") |
||
(26 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{RV|type=command | ||
| ofpr | | ofpr | ||
|1.85 | |1.85 | ||
|arg= global | |arg= global | ||
|eff= local | |eff= local | ||
| | |gr1= Event Handlers | ||
| object | | Adds an Event Handler to the given object. Event Handler parameters are accessiable via the <tt>_this</tt> inside the code. | ||
* Since Arma 3 v.1.63.137807 the Event Handler index is available as <tt>_thisEventHandler</tt> 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. | |||
Read [[:Category:Event Handlers|Event Handlers]] for more information and a list of all available Event Handlers. | |||
| | | object [[addEventHandler]] [type, code] | ||
| | |p1= '''object''': [[Object]] | ||
| | |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 | | [[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> | |x1= <code>_index = [[player]] [[addEventHandler]] ["Killed", {_this [[exec]] "playerKilled.sqs"}];</code> | ||
|x2= <code>this [[addEventHandler]] [" | |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 | |mp= Some event handlers are persistent (i.e. they stay attached to the unit, even after it dies and respawns). | ||
|seealso= [[removeEventHandler]], [[removeAllEventHandlers]], [[:Category:Event Handlers|Event Handlers]], [[addMPEventHandler]], [[addMissionEventHandler]], [[BIS_fnc_addScriptedEventHandler]] | |||
}} | |||
[[Category:Scripting Commands OFP 1.99|ADDEVENTHANDLER]] | [[Category:Scripting Commands OFP 1.99|ADDEVENTHANDLER]] | ||
[[Category:Scripting Commands OFP 1.96|ADDEVENTHANDLER]] | [[Category:Scripting Commands OFP 1.96|ADDEVENTHANDLER]] | ||
{{GameCategory|arma1|Scripting Commands}} | |||
{{GameCategory|arma2|Scripting Commands}} | |||
{{GameCategory|arma3|Scripting Commands}} | |||
{{GameCategory|tkoh|Scripting Commands}} | |||
<!-- CONTINUE Notes --> | <!-- CONTINUE Notes --> |
Revision as of 00:19, 17 February 2021
Description
- Description:
- Description needed
- 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:
- Syntax needed
- 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:
- Return value needed
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
- 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!