Here some code that uses hash tables and timers, sends one msg per second, sorry for any bugs, I haven't tested it...
Code:
; /msgall #Channel Message
msgall {
  var %hash msgall. $+ $1 | var %x $nick($active,0)
  if (!$hget(%hash))
  while (%x) && ($2) {
    hadd %hash $nick($1,%x) $2-
    dec %x
  }
  .timerPush $+ $1 0 1 scid $cid pushmsgs %hash
}
pushmsgs {
  var %hash $1 | var %nick 
  set %nick $hget(%hash, 1).item
  .msg %nick $hget(%hash, %nick)
  hdel %hash %nick
  if ($hget(%hash, 0).item == 0) {
    .timer $+ $ctimer off
    hfree %hash
  }
}


NaquadaBomb
www.mirc-dll.com