keep in mind im just kind of making this one up...
VINCULA
#noguests on
on *:JOIN:#:{
if (>* iswm $nick) {
inc -u2 %ng. [ $+ [ $right($chan,-1) ] ]
if (%ng. [ $+ [ $right($chan,-1) ] ] == 6) {
access $chan add deny >* 45 :Guest Flood
ngkick
}
}
}
alias ngkick {
tokenize 32 $right($msn.get($cid,fullroom),-1)
inc -u2 %ngk. [ $+ [ $1 ] ]
if ($wnick($+(%,$1),>*,%ngk. [ $+ [ $1 ] ])) {
sockwrite -n msn.server. $+ $cid kick $+(%,$1) $ifmatch :Guest Flood Kick
.timer -m 1 30 ngkick
}
}
alias wnick {
var %w = 1, %m = 0
while ($nick($1,%w)) {
if ($2 iswm $nick($1,%w)) {
inc %m
if ($3 == %m) return $nick($1,%w)
}
inc %w
}
if ($3 == 0) return %m
}
#noguests end
CLEARMSN
#noguests on
on *:JOIN:#:{
if (>* iswm $nick) {
inc -u2 %ng. [ $+ [ $chan ] ]
if (%ng. [ $+ [ $chan ] ] == 6) {
access $chan add deny >* 45 :Guest Flood
ngkick $chan
}
}
}
alias ngkick {
inc -u2 %ngk. [ $+ [ $1 ] ]
if ($wnick($1,>*,%ngk. [ $+ [ $1 ] ])) {
sockwrite -n $sockfind($1) kick $lcn($1) $ifmatch :Guest Flood Kick
.timer -m 1 30 ngkick $1
}
}
alias wnick {
var %w = 1, %m = 0
while ($nick($1,%w)) {
if ($2 iswm $nick($1,%w)) {
inc %m
if ($3 == %m) return $nick($1,%w)
}
inc %w
}
if ($3 == 0) return %m
}
#noguests end
i have no idea if that will actually work, or how good it is. but i know that $wnick alias is useful.
Edited Oct 2, 2004 8:53 PM by vexation