Event Scripts: Difference between revisions
Jump to navigation
Jump to search
SilentSpike (talk | contribs) No edit summary |
SilentSpike (talk | contribs) (isNull check is unreliable) |
||
Line 201: | Line 201: | ||
|- | |- | ||
| ''onPlayerRespawn.sqf'' | | ''onPlayerRespawn.sqf'' | ||
| Executed locally when player [[Arma_3_Respawn#Files|respawns]] in a multiplayer mission. This will also | | Executed locally when player [[Arma_3_Respawn#Files|respawns]] in a multiplayer mission. This will also run at the beginning of a mission, so take that into account if you don't want the code to run at that time. You can use [[isNil]] to differentiate between the beginning of the mission and all subsequent respawns. | ||
| <tt style="white-space:nowrap;">[<newUnit>, <oldUnit>, <respawn>, <respawnDelay>]</tt> | | <tt style="white-space:nowrap;">[<newUnit>, <oldUnit>, <respawn>, <respawnDelay>]</tt> | ||
| <!-- OFP --> | | <!-- OFP --> |
Revision as of 22:21, 27 January 2015
Event scripts are scripts which are executed by the game engine upon specific events.
To use an event script, create a file of given name in the mission directory.
Available Scripts
File | Description | Arguments | 1.00 | 1.75 | -wrong parameter ("Arma") defined!-1.00 | 1.00 | 1.51 | 1.00 | 1.00 |
---|---|---|---|---|---|---|---|---|---|
init.sqs | Executed when mission is started (before briefing screen) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
init.sqf | Executed when mission is started (before briefing screen) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
initIntro.sqf | Executed when intro, outro win or outro lose is started. | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
exit.sqs | Executed when mission is finished (before debriefing screen). In Arma 3, "ended" mission event handler has the same functionality. | [endType:String] | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
onFlare.sqs | Executed when a flare is lit after being fired from grenade launcher. | [colorRGB:Array, shooter:Object] | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
pauseOnLoad.sqf | Executed when pause menu is activated.
To make it work in MP, use onPauseScript = "myScript.sqf" in description.ext |
[pauseMenuDisplay:Display] | ✔ | ✔ | ✔ | ||||
onPlayerKilled.sqs | Executed when player is killed in singleplayer or in multiplayer mission with "NONE" respawn type. | [player:Object, killer:Object] | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
onPlayerKilled.sqs | Executed when player is killed in singleplayer or in multiplayer mission with "NONE" respawn type. | [player:Object, killer:Object] | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
onPlayerRespawnAsSeagull.sqs | Executed when player is killed in multiplayer mission with "SEAGULL" respawn type, or when the type is "GROUP" or "SIDE", but no remaining respawn slots are left. This script will replace the default respawn sequence. | [player:Object, killer:Object, seagull:Object] | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
onPlayerRespawnOtherUnit.sqs | Executed when player is killed in multiplayer mission with "GROUP" or "SIDE" respawn type. This script will replace the default respawn sequence. | [player:Object, killer:Object, newPlayer:Object] | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
initJIPcompatible.sqf | Executed by Multiplayer framework on all machines when a player joins mission (includes both mission start and JIP). | ✔ | ✔ | ||||||
initServer.sqf | Executed only on server when mission is started. See initialization order for details about when the script is exactly executed. | ✔ | |||||||
initPlayerServer.sqf | Executed only on server when a player joins mission (includes both mission start and JIP). See initialization order for details about when the script is exactly executed. | [player:Object, didJIP:Boolean] | ✔ | ||||||
initPlayerLocal.sqf | Executed locally when player joins mission (includes both mission start and JIP). See initialization order for details about when the script is exactly executed. | [player:Object, didJIP:Boolean] | ✔ | ||||||
onPlayerKilled.sqf | Executed when player is killed in singleplayer or in multiplayer mission. | [<oldUnit>, <killer>, <respawn>, <respawnDelay>] | ✔ | ||||||
onPlayerRespawn.sqf | Executed locally when player respawns in a multiplayer mission. This will also run at the beginning of a mission, so take that into account if you don't want the code to run at that time. You can use isNil to differentiate between the beginning of the mission and all subsequent respawns. | [<newUnit>, <oldUnit>, <respawn>, <respawnDelay>] | ✔ |
- Note
- Additional init scripts can be executed using functions with preInit or postInit attribute.