Event Scripts: Difference between revisions
Jump to navigation
Jump to search
(added onPauseScript) |
m (→Available Scripts: adding display param + some GGG corrections) |
||
Line 15: | Line 15: | ||
; initIntro | ; initIntro | ||
: Launched when intro is started . | : Launched when intro is started. | ||
; exit | ; exit | ||
Line 25: | Line 25: | ||
: Launched when illuminating shell is lit. | : Launched when illuminating shell is lit. | ||
: | : | ||
: An array is passed to the script: [[r, g, b], gunner] | : An [[Array|array]] is passed to the script: [[r, g, b], gunner] | ||
:: r, g, b: [[Number]] - the light color | :: r, g, b: [[Number]] - the light color | ||
:: gunner: [[Object]] - the unit who fired the flare shell | :: gunner: [[Object]] - the unit who fired the flare shell | ||
Line 33: | Line 33: | ||
: Launched when pause menu is activated. | : Launched when pause menu is activated. | ||
: To make it work in MP, use ''onPauseScript = "myScript.sqf"'' in [[description.ext]] | : To make it work in MP, use ''onPauseScript = "myScript.sqf"'' in [[description.ext]] | ||
: | |||
: An [[Array|array]] is passed to the script: [display] | |||
: [http://forums.bistudio.com/showthread.php?108466-Detect-load-game-or-ESC-menu&p=1763523&viewfull=1#post1763523 Topic reference] | : [http://forums.bistudio.com/showthread.php?108466-Detect-load-game-or-ESC-menu&p=1763523&viewfull=1#post1763523 Topic reference] | ||
Line 38: | Line 40: | ||
: Launched when the player dies permanently, and does not become a [http://community.bistudio.com/wikidata/images/archive/e/ed/20070308214324!Seagull.jpg seagull]. | : Launched when the player dies permanently, and does not become a [http://community.bistudio.com/wikidata/images/archive/e/ed/20070308214324!Seagull.jpg seagull]. | ||
: | : | ||
: Passed an array: [player, killer] | : Passed an [[Array|array]]: [player, killer] | ||
::player: [[object]] - the player killed | ::player: [[Object|object]] - the player killed | ||
::killer: [[object]] - the unit that killed player - is the player in suicide/collision case | ::killer: [[Object|object]] - the unit that killed player - is the player in suicide/collision case | ||
: | : | ||
: This script replaces the default death sequence. Make sure you place the command [[enableEndDialog]] somewhere in your script, as this will then cause the dialog that allows you to load, retry, or quit to appear. | : This script replaces the default death sequence. Make sure you place the command [[enableEndDialog]] somewhere in your script, as this will then cause the dialog that allows you to load, retry, or quit to appear. | ||
: | : Since ArmA this script is only executed if ''respawn'' in [[Description.ext]] is set to NONE (0). If respawn is set to some other value, then the onPlayerKilled script is not executed. | ||
; onPlayerRespawnAsSeagull | ; onPlayerRespawnAsSeagull | ||
: Launched when the player dies and becomes a [http://community.bistudio.com/wikidata/images/archive/e/ed/20070308214324!Seagull.jpg seagull]. | : Launched when the player dies and becomes a [http://community.bistudio.com/wikidata/images/archive/e/ed/20070308214324!Seagull.jpg seagull]. | ||
: | : | ||
: Passed an array: [player, killer, seagull] | : Passed an [[Array|array]]: [player, killer, seagull] | ||
::player: [[object]] - the player killed | ::player: [[Object|object]] - the player killed | ||
::killer: [[object]] - the unit that killed player - is the player in suicide/collision case | ::killer: [[Object|object]] - the unit that killed player - is the player in suicide/collision case | ||
::seagull: [[object]] - the seagull the player is about to possess. | ::seagull: [[Object|object]] - the seagull the player is about to possess. | ||
: | : | ||
: This script will replace the default seagulling sequence. Make sure you place the command [[enableEndDialog]] somewhere in your script, as this will then cause the dialog that allows you to load, retry, or quit to appear. | : This script will replace the default seagulling sequence. Make sure you place the command [[enableEndDialog]] somewhere in your script, as this will then cause the dialog that allows you to load, retry, or quit to appear. | ||
: | : Since ArmA this script is only executed if ''respawn'' in [[Description.ext]] is set to BIRD(1), or to GROUP (4) and all the group is dead. | ||
; onPlayerRespawnOtherUnit | ; onPlayerRespawnOtherUnit | ||
Line 64: | Line 66: | ||
::new: [[object]] - the new unit the player is about to possess. | ::new: [[object]] - the new unit the player is about to possess. | ||
: | : | ||
: This script will replace the default respawn sequence. | : This script will replace the default respawn sequence. | ||
: | : Since ArmA, this script is only executed if ''respawn'' in [[Description.ext]] is set to GROUP (4) and there is another group member still alive. | ||
== See also == | == See also == |
Revision as of 00:14, 1 March 2012
Event scripts are scripts which are fired by the game engine upon specific events. These scripts can be written in SQS syntax or SQF syntax (Armed Assault only, recommended).
The file extensions of the script depend on the used syntax. If you are using SQS syntax, the file extension is .sqs, else .sqf.
Note that these scripts must be in sqs syntax - if you write an onPlayer*.sqf, it won't be executed - the default onPlayer*.sqs contained in the ca.pbo file will get executed instead. One easy way around this is to create both the .sqf and .sqs files, inside the .sqs files you can just put this piece of code
_this execVM onPlayer*.sqf
Remember to replace the * with the appropriate type.
Available Scripts
- init
- Launched when mission is started (before briefing screen).
- initIntro
- Launched when intro is started.
- exit
- Launched when mission is finished (before debriefing screen).
- One argument of type Number is passed to the script: The number of game end.
- onFlare
- Launched when illuminating shell is lit.
- An array is passed to the script: [[r, g, b], gunner]
- onPauseScript
- launches pauseOnLoad.sqf
- Launched when pause menu is activated.
- To make it work in MP, use onPauseScript = "myScript.sqf" in description.ext
- An array is passed to the script: [display]
- Topic reference
- onPlayerKilled
- Launched when the player dies permanently, and does not become a seagull.
- Passed an array: [player, killer]
- This script replaces the default death sequence. Make sure you place the command enableEndDialog somewhere in your script, as this will then cause the dialog that allows you to load, retry, or quit to appear.
- Since ArmA this script is only executed if respawn in Description.ext is set to NONE (0). If respawn is set to some other value, then the onPlayerKilled script is not executed.
- onPlayerRespawnAsSeagull
- Launched when the player dies and becomes a seagull.
- Passed an array: [player, killer, seagull]
- This script will replace the default seagulling sequence. Make sure you place the command enableEndDialog somewhere in your script, as this will then cause the dialog that allows you to load, retry, or quit to appear.
- Since ArmA this script is only executed if respawn in Description.ext is set to BIRD(1), or to GROUP (4) and all the group is dead.
- onPlayerRespawnOtherUnit
- Launched when the player dies and respawns into another unit member.
- Passed an array: [player, killer, new]
- This script will replace the default respawn sequence.
- Since ArmA, this script is only executed if respawn in Description.ext is set to GROUP (4) and there is another group member still alive.