yea that would cause it. You need to do !presume, i guess i you should use this, which will solve your problem.
; mq and mdeq by Pete®tje 2004, used for slowing messages via queueing them
alias mq {
inc %mq_pointer
hadd -m mq %mq_pointer $1-
%mq = $addtok(%mq,%mq_pointer,32)
if (!$timer(mq)) { .timermq -m 1 $iif(%delay_mq,%delay_mq,400) mdeq }
}
alias mdeq {
if ($hget(mq,0).item == 0) { unset %mq* }
else {
var %item = $gettok(%mq,1,32)
%mq = $deltok(%mq,1,32)
msg $hget(mq,%item)
hdel mq %item
if (%mq) { .timermq -m 1 $iif(%delay_mq,%delay_mq,400) mdeq }
else { unset %mq_pointer }
}
}
on *:TEXT:!show *:*: {
if ($hget(mq,0).item > 0) { msg $target Sorry there is already a !show going. To clear it, please type !stop other type !resume to continue the current !show going. | return }
var %ll = 1
while ($read(mydir\list.txt,%ll)) {
var %f = $ifmatch , %r = $read(mydir\ $+ %f, s, [ $+ $2 $+ ]) , %l = $calc($readn + 1)
while ($read(mydir\ $+ %f,%l)) {
%r = $ifmatch
if ([*] !iswm %r) mq $target %r
else break
inc %l
}
inc %ll
}
}
on *:TEXT:!pause:*: { .timermq off | msg $target To resume type !resume }
on *:TEXT:!resume:*: .timermq -m 1 $iif(%delay_mq,%delay_mq,400) mdeq
on *:TEXT:!stop:*: { hfree mq | unset %mq* | msg $target Que Cleared. }
on *:LOAD: unset %mq*
Basically all i did was make it so that the user needs to either use !resume or !stop before it will allow another !show again.