The system time is also based on dt, so using dt in a variable should be about as good as comparing the system time. Like
R0J0hound pointed out, a common mistake is to compare for an exact time, which is almost never triggered because time jumps in ~16ms steps with a lot of random variation. The system 'time equals...' condition automatically works around this, but for your own events you'll need to handle it yourself. The best way to handle it is something like: time greater than 0.1, trigger once.