Global


00020c Label 0c
0003 Yield
00bd00000013 If cycle counter > 0 (0.0 secs) goto 13
00740016 If objective #1 is failed goto 16
00740116 If objective #2 is failed goto 16
00740216 If objective #3 is failed goto 16
00740316 If objective #4 is failed goto 16
00740416 If objective #5 is failed goto 16
00010c Go to first 0c
000216 Label 16
00b6 Reset and start cycle counter
0003 Yield
000213 Label 13
00bd00070813 If cycle counter > 1800 (30.0 secs) goto 13
00010c Go to first 0c
000213 Label 13
00740013 If objective #1 is failed goto 13
00740113 If objective #2 is failed goto 13
00740213 If objective #3 is failed goto 13
00740313 If objective #4 is failed goto 13
00740413 If objective #5 is failed goto 13
0005fd0000 Assign function 0000 - Idle to $self and advance frame
000213 Label 13
00cbf85845 Display text in bottom left for Joanna:
OBJECTIVES FAILED - abort mission.
00b6 Reset and start cycle counter
000203 Label 03
0003 Yield
00bd000e1016 If cycle counter > 3600 (60.0 secs) goto 16
000103 Go to first 03
000216 Label 16
00740013 If objective #1 is failed goto 13
00740113 If objective #2 is failed goto 13
00740213 If objective #3 is failed goto 13
00740313 If objective #4 is failed goto 13
00740413 If objective #5 is failed goto 13
0005fd0000 Assign function 0000 - Idle to $self and advance frame
000213 Label 13
00cbf85845 Display text in bottom left for Joanna:
OBJECTIVES FAILED - abort mission.
00b6 Reset and start cycle counter
000204 Label 04
0003 Yield
00bd001c2006 If cycle counter > 7200 (120.0 secs) goto 06
000104 Go to first 04
000206 Label 06
00740013 If objective #1 is failed goto 13
00740113 If objective #2 is failed goto 13
00740213 If objective #3 is failed goto 13
00740313 If objective #4 is failed goto 13
00740413 If objective #5 is failed goto 13
0005fd0000 Assign function 0000 - Idle to $self and advance frame
000213 Label 13
00cbf85845 Display text in bottom left for Joanna:
OBJECTIVES FAILED - abort mission.
00b6 Reset and start cycle counter
000205 Label 05
0003 Yield
00bd00465016 If cycle counter > 18000 (300.0 secs) goto 16
000105 Go to first 05
000216 Label 16
000106 Go to first 06
0004 End of function

Comments

Wait until an objective has failed

Start counting frames

After 30 seconds:

* If no objectives are failed any more, exit
* If there are still failed objectives, show messages at the 30s, 1 minute, 2 minute and 5 minute marks

Seems like if you fail an objective and then unfail it, the function quits. So if you then fail an objective again, it'll never show the message.