on !*:JOIN:#:{
if (!$Timer($+(CheckNicks,.,$network,.,$chan,.,$nick))) { .Timer $+ $+(CheckNicks,.,$network,.,$chan,.,$nick) -md 1 750 badnick_alias $unsafe($chan) $nick }
}
ON *:nick:{
haltdef
var %whloop = 1
while ( $comchan($newnick,%whloop) != $null ) {
var %chan $v1
if (!$nick(%chan,$newnick,@&~%) && $nick(%chan,$me,@&~%)) { badnick_alias %chan $newnick }
inc %whloop
}
halt
}
ON *:op:#test:{
if ($opnick == $me) {
var %loop = 1, %nick , %kickmsg = please change your nick thank you....
while (%loop <= $nick($chan,0)) {
%nick = $nick($chan,%loop)
if ($len( %nick ) < 3 || ($calc($regex(%nick,/[A-Z]/g) * 100 / $len(%nick)) > 30)) {
if (!$nick($chan,%nick,~&@%+)) { var %kick = $addtok(%kick,%nick,44) }
if ($numtok(%kick,44) == 4) { kick $chan %kick %kickmsg | unset %kick }
}
inc %loop 1
}
}
if (%kick) { kick $chan %kick %kickmsg }
}
alias badnick_alias {
var %chan $1 , %nick $2
if (%nick !ison %chan || $nick( %chan , %nick ,@&~%)) { halt }
if ($len( %nick ) < 3 || ($calc($regex(%nick,/[A-Z]/g) * 100 / $len(%nick)) > 30)) {
if (!$Timer($+(CheckNickZ,.,$network,.,%chan,.,%nick))) {
NOTICE %nick FIRST WARNING
.Timer $+ $+(CheckNickZ,.,$network,.,%chan,.,%nick) 3 15 badnick_still_on_chan $unsafe(%chan) %nick
}
}
}
alias badnick_still_on_chan {
inc % [ $+ [ $+(CheckWarnings,.,$network,.,$1,.,$2) ] ]
if ($2 ison $1 && % [ $+ [ $+(CheckWarnings,.,$network,.,$1,.,$2) ] ] < 3) { NOTICE $2 % [ $+ [ $+(CheckWarnings,.,$network,.,$1,.,$2) ] ] WARNINGS }
elseif ( % [ $+ [ $+(CheckWarnings,.,$network,.,$1,.,$2) ] ] == 3 && $2 ison $1 ) { kick $1 $2 % [ $+ [ $+(CheckWarnings,.,$network,.,$1,.,$2) ] ] WARNINGS | .Timer $+ $+(CheckNickZ,.,$network,.,$1,.,$2) off | unset % $+ $+(CheckWarnings,.,$network,.,$1,.,$2) }
elseif ($2 !ison $1) { .Timer $+ $+(CheckNickZ,.,$network,.,$1,.,$2) off | unset % [ $+ [ $+(CheckWarnings,.,$network,.,$1,.,$2) ] ] }
}