Ok, none of that made any sense whatsoever. I got confused trying to add you guys' ideas to my script. I told you I'm a noob at this. After much trawling in the forums I found some stuff that would help. Here's what I've got now.
"_x setcaptive true" foreach units mygrp
#Begin
btr addeventhandler ["fired", {[mygrp] exec "btrfired.sqs"}]
_random = random 2
?(_random> 0) && (_random <= 1) : goto "radio1"
?(_random> 1) && (_random <= 2) : goto "radio2"
#Radio1
~10
? not(me1 in btr60): goto "End"
rtr1 globalchat "Report."
playsound "report"
~3
? not(alive btr): goto "Alert"
playsound "Allclear"
btr globalchat "All Clear."
#Radio2
~10
? not(me1 in btr60): goto "End"
rtr1 globalchat "Check in."
playsound "checkin"
~3
? not(alive btr): goto "Alert"
playsound "everythingsquiet"
btr globalchat "Everything's quiet."
goto "Begin"
#Alert
playsound "irepeatreportatonce"
rtr1 globalchat "I repeat. Report at once!"
~5
playsound "wehaveaproblem"
rtr1 globalchat "We have a problem."
~10
alarm = true
goto "End"
#End
"_x setcaptive false" foreach units mygrp
exit
Now All I need to do is find out what's going on with the fired eventhandler. I think I've called the script in question but nothing is happening.
In the script called btrfired.sqs I have this written.
"_x setcaptive false" foreach units mygrp
~10
Alarm = true
exit
I'm nearly there if I can just figure out this bit.