on ^!*:text:*:#:$iif($nick isreg #,.signal -n dk.str # $nick $1-,return) | haltdef
on ^!*:action:*:#:$iif($nick isreg #,.signal -n dk.str # $nick $1-,return) | haltdef
on ^!*:notice:*:#:$iif($nick isreg #,.signal -n dk.str # $nick $1-,return) | haltdef
on *:signal:dk.*: {
var %sig.sig = $signal, %sig.ch = $1, %sig.nk = $2, %sig.str = $3-
if (%sig.sig = dk.str) {
if ($regsub(%sig.str,/[[:cntrl:]]/g,,%var) > 49) .signal -n dk.kik %sig.ch %sig.nk codes
if ($regsub($strip(%sig.str),/[[:upper:]]/g,,%var) > 49) .signal -n dk.kik %sig.ch %sig.nk caps
if ($regsub($strip(%sig.str),/[[:digit:]]/g,,%var) > 49) .signal -n dk.kik %sig.ch %sig.nk digit
if ($regsub($strip(%sig.str),/[[:punct:]]/g,,%var) > 49) .signal -n dk.kik %sig.ch %sig.nk symbols
if ($regsub($strip(%sig.str),/[€-Ÿ|¡-ÿ]/g,,%var) > 49) .signal -n dk.kik %sig.ch %sig.nk ascii
if ($regsub($strip(%sig.str),/\b(cipap|fuck|bastard|pukimak|pantat|burit|shit|bitch|dick|pantek|pepek|butuh|butoh|jubo|zakar|kote|konek|lancap)\b/i,,%var)) { .signal -n dk.kik %sig.ch %sig.nk swear }
if ($regsub($remove($strip(%sig.str),$chr(40),$chr(41)),/(?:^|(\40|\240))((http+(NeutralsSmile\/\/\S*)|((www\.{1})+(.*)+(\.{1})+(\w{2,3})\S*)|#[^\40]\S*)/i,,%var)) { .signal -n x dk.kik %sig.ch %sig.nk advertise }
if ($regsub($strip(%sig.str),/[ $chr(160) ]/g,,%var) > 49) .signal -n dk.kik %sig.ch %sig.nk blanks
if ($regsub($strip(%sig.str),/[[:alnum:]]/g,,%var) > 199) .signal -n dk.kik %sig.ch %sig.nk characters
.hinc -u2m rep $hash($+(%sig.ch,%sig.nk,$remove($strip(%sig.str),$chr(32),$chr(160))),32) | if ($hget(rep,$hash($+(%sig.ch,%sig.nk,$remove($strip(%sig.str),$chr(32),$chr(160))),32)) = 3) .signal -n dk.kik %sig.ch %sig.nk repeat
.hinc -u2m row $hash($+(%sig.ch,%sig.nk),32) | if ($hget(row,$hash($+(%sig.ch,%sig.nk),32)) = 5) .signal -n dk.kik %sig.ch %sig.nk rows
}
if (%sig.sig = dk.kik) {
if ($me !isop %sig.ch) || (%sig.nk !ison %sig.ch) .halt
.inc -u3 %sig.kik
if (%sig.kik < 21) {
.quote -q kick %sig.ch %sig.nk 11error $+( 12 ,$3, ) 11syntax
.hadd -mu3 c $2 $+ !*@* | if ($ibl($1,0) < 81) { .timerbn 1 1 raw -q mode $1 + $+ $str(b,$hget(c,*).item) $hget(c,1).item $hget(c,2).item $hget(c,3).item $hget(c,4).item $hget(c,5).item $hget(c,6).item $hget(c,7).item $hget(c,Cool.item $hget(c,9).item $hget(c,10).item $hget(c,11).item $hget(c,12).item }
.ignore -u20m $2
.return
}
}
}