Quote: "Is there a sort of "StartTimer" function which would start a virtual timer and then through IF statements I could spawn entities in the level"
There is the "etimerstart" (action) and "etimergreater=x" (condition). The "etimer" value is in milliseconds. For example, you could have something like this:
;Artificial Intelligence Script
;Header
desc = Sound play spawn entity
;Triggers
:state=0:state=1
:state=1:sound=YOURSOUND1,etimerstart,state=2
:state=2,etimergreater=80000:settargetname=ENTITY1,activatetarget=1,state=3
:state=3:sound=YOURSOUND2,etimerstart,state=4
:state=4,etimergreater=86012:settargetname=ENTITY2,activatetarget=1,state=5
:state=5:sound=YOURSOUND3,etimerstart,state=6
:state=6,etimergreater=95009:settargetname=ENTITY3,activatetarget=1,state=7
:state=7:none
;End of Script
Using "etimer", 1000ms equals 1 second. The first time of 1m:20s:0ms = (60000+20000)ms; the second time of 1m:26s:12ms = (60000+26000+12)ms; the third time of 1m:35:9ms = (60000+35000+9) ms.
Your three entity names much match the name used in the "settargetname=x" field, and set "Spawn at Start" to no. *NOTE* the above script will start once you enter the game.
If you want the script to run when the player hits a trigger, then you would do something like this:
;Artificial Intelligence Script
;Header
desc = Sound play spawn entity
;Triggers
:state=0:state=1
:state=1,plrwithinzone=1:sound=YOURSOUND1,etimerstart,state=2
:state=2,etimergreater=80000:settargetname=ENTITY1,activatetarget=1,state=3
:state=3:sound=YOURSOUND2,etimerstart,state=4
:state=4,etimergreater=86012:settargetname=ENTITY2,activatetarget=1,state=5
:state=5:sound=YOURSOUND3,etimerstart,state=6
:state=6,etimergreater=95009:settargetname=ENTITY3,activatetarget=1,state=7
:state=7:none
That should get you into the right direction.
There's no problem that can't be solved without applying a little scripting.