on ^*:text:*:#:$banjirian($1-) on ^*:notice:*:#:$banjirian($1-) on ^*:action:*:#:$banjirian($1-) alias banjirian { if ($nick isreg #) && ($me isop #) { var %s1 = $1-, %s2 = $strip($1-), %s3 = $address($nick,1), %s4 = $chr(32), %t1 = [:cntrl:], %t2 = A-Z, %t3 = 0-9, %t4 = $chr(44), %t5 = [:punct:], %t6 = $chr(160), %t7 = a-z, %t8 = $chr(174) hinc -u3m x [ $+ [ # ] ] $nick 1 hinc -u3m y [ $+ [ # ] $+ [ $nick ] ] $hash($remove(%s2,%t6,%s4),32) 1 if ($hget(x [ $+ [ # ] ],$nick) > 4) { $k(lines) } if ($hget(y [ $+ [ # ] $+ [ $nick ] ],$hash($remove(%s2,%t6,%s4),32)) > 2) { $k(repeats) } if ($regsubex($regex(%s1,/[ %t1 ]/g),/[ %t1 ]/g,\t) > 49) { $k(codes) } if ($regsubex($regex(%s2,/[ %t2 ]/g),/[ %t2 ]/g,\t) > 49) { $k(caps) } if ($regsubex($regex(%s2,/[ %t3 ]/g),/[ %t3 ]/g,\t) > 49) { $k(digits) } if ($regsubex($regex(%s2,/[ %t4 ]/g),/[ %t4 ]/g,\t) > 49) { $k(aphostropes) } if ($regsubex($regex(%s2,/[ %t5 ]/g),/[ %t5 ]/g,\t) > 49) { $k(symbols) } if ($regsubex($regex(%s2,/[ %t6 ]/g),/[ %t6 ]/g,\t) > 49) { $k(blanks) } if ($regsubex($regex(%s2,/[ %t7 ]/g),/[ %t7 ]/g,\t) > 199) { $k(longtext) } if ($regsubex($regex(%s2,/[ %t8 ]/g),/[ %t8 ]/g,\t) > 49) { $k(ascii) } if ($regsubex($regex(%s2,/(#)/*),/(#)/*,\t) > 0) { $k(advertise) } if ($regsubex($regex(%s2,/\b(babi|dick|fuck)\b/g),/\b(babi|dick|fuck)\b/g,\t) > 0) { $k(swears) } haltdef } }