Hello, you can't find complete list of trigger conditions because... It doesn't exist! Trigger conditions are whatever you want them to be and can be everything.
Common conditions are boolean ones which you activate by putting
something = true in a script (the .sqs file) and by putting
something condition on a trigger so that trigger will run only when that condition is set true from script. Other conditions make use of special symbols like ?, !=, and, or, not... but I suggest you to take a look at
COMREF to get acquainted with all those funny symbols. There isn't any complete list of conditions but there is list of things which conditions are built with and that list is the one you should focus your attention in.
As far as I poorly know, there are two different ways to write conditions (but you achieve same result however) one via trigger and one via script.
About your specific question, condition for dead unit in trigger is
not (alive unitname)
and in script is
@not (alive unitname)
what happens
or
? not (alive unitname) : what happens
with the important difference that @ frozes the rest of the script, which is after
@not (alive unitname), until that condition is reached (e.g. until that unit is killed/destroyed) and ? doesn't frozes the script but the script will be ran anyway.
If you have a script, you may imagine it like a branched structure:
main script
|
|
|
@condition
|
|
|
? condition ------ continue conditioned script
|
|
|
continue main script
By default, branch structure reads both
conditioned script and
main script but, if for some reason after ? condition, you want to avoid reading
main script and read only
conditioned script you have to put
; exit command after last command you put inside
conditioned script (e.g. ? not (alive unitname) : titleText "We got a man down!!!"; exit).
That's all!