Found the ruddy problem with Flight Mode!
It's something to do with me encapsulating the whole event in an if statement... need to reverse script the mechanic and work out how to bypass it.
Also, the timer's not resetting once a random event's occured.
At current, as debug, it's set to 5 seconds, but I'll probably change to drum up a random event every 90 seconds or so.
I'll update over the next couple of hours.