Cool idea. I dunno if it's necessarily a
good idea, but it's still pretty cool.
Here's my first thoughts on how to make it cleaner:
; timer-signal.mrc
; aliases
alias ts_start {
.timerTS -o 0 1 ts_exec
%ts_start = $ctime
}
alias ts_exec {
var %elapse = $calc($ctime - %ts_start)
if (%elapse < 0) { ts_start | halt }
scid -a .signal ts_1
if (!$calc(%elapse % 2)) { scid -a .signal ts_2 }
if (!$calc(%elapse % 3)) { scid -a .signal ts_3 }
if (!$calc(%elapse % 4)) { scid -a .signal ts_4 }
if (!$calc(%elapse % 5)) { scid -a .signal ts_5 }
}
; events
on *:START:ts_start
; test
on *:SIGNAL:ts_1:echo -a timer-signal: 1
on *:SIGNAL:ts_2:echo -a timer-signal: 2
on *:SIGNAL:ts_3:echo -a timer-signal: 3
on *:SIGNAL:ts_4:echo -a timer-signal: 4
on *:SIGNAL:ts_5:echo -a timer-signal: 5
-chris