Hi I have the following script (to display nicks on channel when I join in a form I like, without having to have a nicklist open) when I join any channel:
on me:*:join:#:/timer -m 1 600 joinon
alias joinon {
echo 0 -ma Who's on the channel? lets see... there's
set %who.total $nick($chan, 0)
set %who.disp 0
while %who.disp < %who.total {
inc %who.disp
inc %who.numnicks
set %who.nextnick $nick($chan, %who.disp)
set %who.allnicks $str.concat($chr(32) - $chr(32), %who.allnicks, %who.nextnick)
if (%who.numnicks == 3) {
set %who.numnicks 0
unset %who.allnicks
}
}
if ((%who.numnicks == 1) || (%who.numnicks == 2)) {
set %who.numnicks 0
unset %who.allnicks
}
unset %who.*
}
}
Now it's not working when called as above from the remote. If I call the alias direct from a channel. it works fine. I can see it's falling down somewhere on the evaluation of $chan... but I can;t see how to make the script evaluate the channel when in the onjoin. All help welcome.