addMissionEventHandler: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
No edit summary
Line 10: Line 10:


| Adds event handler (EH) attached to the current mission and returns EH handle. If EH has some data to return upon event, it is passed in <tt>_this</tt> variable. For the list of available mission event handlers see: [[Arma_3:_Event_Handlers/addMissionEventHandler]]
| Adds event handler (EH) attached to the current mission and returns EH handle. If EH has some data to return upon event, it is passed in <tt>_this</tt> variable. For the list of available mission event handlers see: [[Arma_3:_Event_Handlers/addMissionEventHandler]]
{{Feature | informative |Since Arma 3 v.1.63.137807 the EH handle is also stored in <tt>_thisEventHandler</tt> variable and is available during EH code execution.<br>
{{Feature | informative |Since Arma 3 v1.63.137807 the EH handle is also stored in <tt>_thisEventHandler</tt> variable and is available during EH code execution.<br>
Since Arma 3 v.2.03.147276 it is possible to pass additional arguments to the EH code via optional param. The arguments are stored in <tt>_thisArgs</tt> variable}}
Since Arma 3 v2.03.147276 it is possible to pass additional arguments to the EH code via optional param. The arguments are stored in <tt>_thisArgs</tt> variable}}


| '''addMissionEventHandler''' [event, expression, args]
| '''addMissionEventHandler''' [event, expression, args]
Line 21: Line 21:
|p3= expression: [[Code]] or [[String]] - expression that will be executed in [[missionNamespace]] when EH fires.
|p3= expression: [[Code]] or [[String]] - expression that will be executed in [[missionNamespace]] when EH fires.


|p4= args (Optional): [[Array]] - (Since Arma 3 v.2.03.147276) additional arguments to be passed to the EH code. Available during code execution via <tt>_thisArgs</tt> variable.
|p4= args (Optional): [[Array]] - (Since Arma 3 v2.03.147276) additional arguments to be passed to the EH code. Available during code execution via <tt>_thisArgs</tt> variable.


| [[Number]] - The index of the currently added mission event handler is returned.
| [[Number]] - The index of the currently added mission event handler is returned.
Line 29: Line 29:
_id = [[addMissionEventHandler]] ["PlayerDisconnected", { [[systemChat]] [[str]] [[_this]] }];</code>
_id = [[addMissionEventHandler]] ["PlayerDisconnected", { [[systemChat]] [[str]] [[_this]] }];</code>


|x2= Since Arma 3 v.2.03.147276: <code>_id = [[addMissionEventHandler]] ["EachFrame", { [[systemChat]] [[str]] <nowiki>[</nowiki>[[_thisArgs]], [[time]]] }, <nowiki>[</nowiki>[[time]]]];</code>
|x2= Since Arma 3 v2.03.147276: <code>_id = [[addMissionEventHandler]] ["EachFrame", { [[systemChat]] [[str]] <nowiki>[</nowiki>[[_thisArgs]], [[time]]] }, <nowiki>[</nowiki>[[time]]]];</code>


| [[removeMissionEventHandler]], [[removeAllMissionEventHandlers]]
| [[removeMissionEventHandler]], [[removeAllMissionEventHandlers]]
}}
}}

Revision as of 21:11, 15 February 2021

Hover & click on the images for description

Description

Description:
Description needed
Groups:
Event Handlers

Syntax

Syntax:
Syntax needed
Parameters:
[event, expression, args]: Array
event: String - event name
expression: Code or String - expression that will be executed in missionNamespace when EH fires.
args (Optional): Array - (Since Arma 3 v2.03.147276) additional arguments to be passed to the EH code. Available during code execution via _thisArgs variable.
Return Value:
Return value needed

Examples

Example 1:
// A script could be executed to stop custom scripts graciously, or save progress & stats, for example: _id = addMissionEventHandler ["PlayerDisconnected", { systemChat str _this }];
Example 2:
Since Arma 3 v2.03.147276: _id = addMissionEventHandler ["EachFrame", { systemChat str [_thisArgs, time] }, [time]];

Additional Information

See also:
See also needed

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