Scripted Event Handlers – Arma 3

From Bohemia Interactive Community
Revision as of 17:24, 12 March 2023 by Lou Montana (talk | contribs) (Add full example and params usage)

Category: Event Handlers

Scripted Event Handlers are triggered by some of BI's modules and functions. When triggered any code registered for one of these events via BIS_fnc_addScriptedEventHandler will be executed. All the events exists as variables within a namespace, whether this is one of the main Namespaces like missionNamespace or uiNamespace or it could be a specific namespace like a Group or Object etc. The event also has a set of parameters passed to the executed code. You can even implement your own scripted eventHandlers by using BIS_fnc_callScriptedEventHandler. For all other available Event Handlers, see Arma 3: Event Handlers.


Functions


Examples

Create

waitUntil { sleep 1; player distance _GG < 10 }; [missionNamespace, "localPlayerNearFourArmedRobot", [player, _GG]] call BIS_fnc_callScriptedEventHandler;

Subscribe

[missionNamespace, "localPlayerNearFourArmedRobot", { hint "Hello there"; }] call BIS_fnc_addScriptedEventHandler;

[missionNamespace, "arsenalOpened", { hint "Player opened the Arsenal"; // hint message to the player when he opens the Arsenal }] call BIS_fnc_addScriptedEventHandler;


Events

This is a list of all available scripted events that exist through BI's functions and modules. Each event is listed under the system that calls them whether this be a specific function or a module. List last updated for Arma 3 logo black.png 2.10

Event namespace Event name Event passed parameters
Player opens pause menu
"OnGameInterrupt"
params ["_display"];
Player exits Game Options menu
"OnGameOptionsExited" Arma 3 logo black.png 2.02
params ["_okButtonPressed"];
Saving of the game, scripted or manual
"OnSaveGame" N/A
teamSwitchedScript.sqs
"teamSwitched"
params ["_originalUnit", "_switchToUnit"];
BIS_fnc_packStaticWeapon
_group
"StaticWeaponPacked"
params ["_group", "_leader", "_gunner", "_assistant", "_weaponBag", "_baseBag"];
BIS_fnc_unpackStaticWeapon
_group
"StaticWeaponUnpacked"
params ["_group", "_leader", "_gunner", "_assistant", "_weapon"];
Module Timeline
_timeline
"finished"
params ["_timeline"];
_timeline
"played" N/A
_timeline
"looped"
params ["_timeline"];
Module Rich Curve Key
_curKey "reached"
params ["_curKey"];
BIS_fnc_kbTellLocal
"BIS_fnc_kbTellLocal_played"
params ["_from", "_to", "_sentence", "_channel"];
Module Game Master (Zeus)
_curator
"curatorGroupPlaced"
params ["_group"];
_curator
"curatorObjectPlaced"
params ["_object"];
_curator
"curatorUnitAssigned"
params ["_curator", "_player"];
BIS_fnc_playVideo
"BIS_fnc_playVideo_started"
params ["_video"];
"BIS_fnc_playVideo_stopped"
params ["_video"];
BIS_fnc_addScriptedEventHandler
"ScriptedEventHandlerAdded"
params ["_namespace", "_name", "_handlerID"];
BIS_fnc_removeScriptedEventHandler
"ScriptedEventHandlerRemoved"
params ["_namespace", "_name", "_handlerID"];
BIS_fnc_removeAllScriptedEventHandlers
"ScriptedEventHandlerRemoved"
params ["_namespace", "_name", "_handlerID"];
BIS_fnc_respawnTickets
"respawnTicketsExhausted"
params ["_target"];
BIS_fnc_bleedTickets
"dominantSideChanged"
params ["_dominantSide", "_dominantSideOld", "_sides"];
BIS_fnc_arsenal
"arsenalPreOpen" Arma 3 logo black.png 2.08 Fires just before Arsenal display is created
params ["_missionDisplay", "_center"];
"arsenalOpened"
params ["_display", "_toggleSpace"];
"arsenalClosed"
params ["_displayNull", "_toggleSpace"];
BIS_fnc_garage
"garageOpened"
params ["_display", "_toggleSpace"];
"garageClosed"
params ["_displayNull", "_toggleSpace"];
BIS_fnc_initIntelObject
_object "intelObjectFound"
params ["_object", "_foundBy"];
_curator
"intelObjectFound"
params ["_curator", "_foundBy", "_object"];
BIS_fnc_EGSpectatorCamera
"EGSpectator_OnCameraModeChanged"
params ["_newMode"];
Module Vehicle Respawn
"respawn"
params ["_newVeh", "_veh"];
Module Sector
_sector
"ownerChanged"
params ["_sector", "_owner", "_ownerOld"];
Module Curator RemoteControl
_curator
"curatorObjectRemoteControlled"
params ["_curator", "_player", "_unit", "_isRemoteControlled"];
  • _isRemoteControlled is true when entering remote control, false when exiting
Module Spawn AI: Sector Tactic
"bis_groundSupport_groupSpawned"
params ["_bis_groundSupport_groupSpawned", "_group", "_side"];
"bis_groundSupport_wiped"
params ["_bis_groundSupport_wiped", "_group"];
"bis_groundSupport_inEnemySector"
params ["_bis_groundSupport_inEnemySector", "_group"];
"bis_groundSupport_destinationReached"
params ["_bis_groundSupport_destinationReached", "_group"];
"bis_groundSupport_groupTypeChanged"
params ["_bis_groundSupport_groupTypeChanged", "_group", "_type", "_currentType"];
"bis_groundSupport_decimated"
params ["_bis_groundSupport_decimated", "_group"];
"bis_groundSupport_farFromDestination"
params ["_bis_groundSupport_farFromDestination", "_group"];
"bis_groundSupport_needTransport"
params ["_bis_groundSupport_needTransport", "_group"];
"bis_groundSupport_joined"
params ["_bis_groundSupport_joined", "_group", "_transportGroup"];
"bis_groundSupport_closeToDestination"
params ["_bis_groundSupport_closeToDestination", "_group"];
"bis_groundSupport_needEvac"
params ["_bis_groundSupport_needEvac", "_group"];
"bis_groundSupport_needAmmo"
params ["_bis_groundSupport_needAmmo", "_group"];
"bis_groundSupport_needSupport"
params ["_bis_groundSupport_needSupport", "_group", "_reportedVehicle"];
"bis_groundSupport_boarded"
params ["_bis_groundSupport_boarded", "_group", "_transport"];
"bis_groundSupport_transportStarted"
params ["_bis_groundSupport_transportStarted", "_group", "_transport"];
"bis_groundSupport_transportEnded"
params ["_bis_groundSupport_transportEnded", "_group", "_transport"];
"bis_groundSupport_transportAborted"
params ["_bis_groundSupport_transportAborted", "_group", "_transport"];
"bis_groundSupport_disembarked"
params ["_bis_groundSupport_disembarked", "_group", "_transport"];
Module End Game
"EndGame_OnStageChanged"
params ["_stage", "_side"];
"EndGame_OnStartGameObjectiveCompleted"
params ["_side"];
"EndGame_OnObjectiveStateChanged"
params ["_objective", "_side", "_newState"];
"EndGame_OnObjectiveCompleted"
params ["_objective"];
"EndGame_OnObjectiveEnded"
params ["_objective"];
"EndGame_OnDownloadCompleted"
params ["_side", "_isUpload"];
"EndGame_Ended"
params ["_winnerSide", "_loserSide", "_isDraw"];
"onUploadStateChanged"
params ["_side"]; // can be nil
"onPickupInfoChanged"
params ["_BIS_hvt_pickupInfo"];
EG Spectator Display
"RscDisplayEGSpectator_OnCursorObjectFocused"
params ["_object"];
"RscDisplayEGSpectator_OnCursorObjectUnfocused"
params ["_object"];
"RscDisplayEGSpectator_OnFocusChanged"
params ["_newFocus"];
"RscDisplayEGSpectator_OnUiVisibilityChanged"
params ["_isVisible"];
"RscDisplayEGSpectator_MapStateChanged"
params ["_isMapVisible"];
Respawn Display
"RscDisplayRespawnKeyDown"
params ["_display", "_keyCode", "_shift", "_ctrl", "_alt"];
BIS_fnc_animateFlag
_flag
"FlagAnimationDone"
params ["_flag", "_phaseEnd"];
Module Trident
"BIS_fnc_moduleTrident_updated"
params ["_sideA", "_sideB", "_areFriendly"];
BIS_fnc_initInspectable
"objectInspected"
params ["_object", "_texture", "_text", "_sound", "_textureRatio"];

any data, shown as used by the Leaflets system

BIS_fnc_priorityQueue* system
"BIS_onQueue%1Pop" where %1 is ID returned from BIS_fnc_priorityQueue_Init
params ["_handle"];
"BIS_onQueue%1Push" where %1 is ID returned from BIS_fnc_priorityQueue_Init
params ["_handle"];
Display is opened or closed via BIS_fnc_initDisplay Arma 3 logo black.png 2.04
"OnDisplayRegistered"
params ["_display", "_class"];
"OnDisplayUnregistered"
params ["_display", "_class"];
Probing Beam (enoch)
"probingStarted"
params ["_cursorTarget", "_data"];
"probingEnded"
params ["_data", "_isEnded"];