Event Scripts: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (moved from ArmA: Scripting to Scripting Topics)
(added some discoveries about limitations about the event handlers.)
Line 2: Line 2:


The file extensions of the script depend on the used syntax. If you are using [[SQS syntax]], the file extension is '''.sqs''', else '''.sqf'''.
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 the onPlayerKilled script ''must'' be in [[sqs syntax]] - if you write an onPlayerKilled.sqf, it won't be executed - the default onPlayerKilled.sqs contained in the [[ca.pbo]] file will get executed instead.


== Available Scripts ==
== Available Scripts ==
Line 27: Line 29:
:
:
: 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.  
== Limitations ==
At least some of these scripts are only fired in the mission has a [[Description.ext]] file present; for example, [[onPlayerKilled]].sqs is not executed unless the mission contains a [[Description.ext]] file.


== See also ==
== See also ==

Revision as of 10:50, 6 April 2007

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 the onPlayerKilled script must be in sqs syntax - if you write an onPlayerKilled.sqf, it won't be executed - the default onPlayerKilled.sqs contained in the ca.pbo file will get executed instead.

Available Scripts

init
Launched when mission is started (before briefing screen).
initIntro (since version 1.50)
Launched when intro is started .
exit (since version 1.50)
Launched when mission is finished (before debriefing screen).
One argument of type Number is passed to the script: The number of game end.
onFlare (since version 1.45)
Launched when illuminating shell is lit.
An array is passed to the script: [[r, g, b], gunner]
r, g, b: Number - the light color
gunner: Object - the unit who fired the flare shell
onPlayerKilled
Launched when the player is killed.
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.

Limitations

At least some of these scripts are only fired in the mission has a Description.ext file present; for example, onPlayerKilled.sqs is not executed unless the mission contains a Description.ext file.

See also