Kod:
on *:text:*:#opers: {
if $regex($1-,/Client connecting (on port|at) (.+)\: (.+) \((.+)@(.+)\)/Si) {
var %_port = $regml(2), %_nick $regml(3), %_ident $regml(4), %_ip $regml(5), %_hub $regml(1)
var %_girs = $iif(%_hub == at,%_port HUB,$iif(%_port == 7003,Mobil,$iif(%_port == 7002,Web,IRC))) Girişi
who %_nick
if $lamerbul(%_nick) == 1 { .gzline %_nick +0 4Retkit! $+([,Lamer Listesi Ban.]) | msg #Opers 7(LAMER) 1Nick:2 %_nick 1İdent:2 %_ident 1Ip:2 %_ip 4- gline atıldı }
$iif(!$isdir(IP),.mkdir IP)
.write $+(IP/,%_ip,.txt) $+($date,¿,$time) %_nick %_ident %_girs
.write $+(IP/,%_nick,.txt) $+($date,¿,$time) %_ip %_ident %_girs
if (%agresif == on) {
.hinc -mu20 Agresif %:sc_ip 1
if $hget(Agresif,%:sc_ip) >= 5 {
.gzline $+(*@,%:sc_ip) +10 Sunucuya agresif giriş/cıkış tespit edildi 10 dakika uzaklaştırıldınız.
msg #opers :[Agresif] Nick:4 %:sc_nick -IP:4 %:sc_ip
.hdel -ms Agresif %:sc_ip
return
}
}
if (%clone == on) {
.hinc -ms Clone %:sc_ip 1
if $hget(Clone,%:sc_ip) >= %:climit {
.gzline $+(*@,%:sc_ip) +5h Clone girişi yasak!
msg #opers :[Clone] Nick:4 %:sc_nick -IP:4 %:sc_ip
.hdel Clone %:sc_ip
return
}
}
}
elseif $regex($1-,/his\/her nickname to/Si) {
var %_nk = $token($1-,-1,32), %_it $token($token($1-,1,64),2,40), %_ips $token($token($1-,2,64),1,41)
$iif(!$isdir(IP),.mkdir IP)
.write $+(IP/,%_ips,.txt) $+($date,¿,$time) %_nk %_it Nick Değişimi
.write $+(IP/,%_nk,.txt) $+($date,¿,$time) %_ips %_it Nick Değişimi
}
elseif $regex($1-,/Permanent (.+) added for .+@(.+) on.+from (.+)!.+/Si) { .hadd -msu15 IRC-Giris $regml(2) $regml(3) $regml(1) Uyguladı. }
elseif $regex($1-,/Client exiting/Si) {
if $regex($1-,/Client exiting\: (.+) \((.+)@(.+)\) .+/Si) { var %_cnk = $regml(1), %_cit $regml(2), %_cip $regml(3) }
elseif $regex($1-,/Client exiting at .+: (.+)!(.+)@(.+)/Si) { var %_cnk = $regml(1), %_cit $regml(2), %_cip $token($regml(3),1,32) }
var %:ban = $hget(IRC-Giris,%_cip)
$iif(!$isdir(IP),.mkdir IP)
.write $+(IP/,%_cip,.txt) $+($date,¿,$time) %_cnk %_cit $iif(%:ban,%:ban,Sunucudan Çıkış)
.write $+(IP/,%_cnk,.txt) $+($date,¿,$time) %_cip %_cit $iif(%:ban,%:ban,Sunucudan Çıkış)
$iif($hget(IRC-Giris,%_cip),.hdel -ms IRC-Giris %_cip)
}
if $1 == lamerlist {
if !$hget(lamer,1).item { msg #Opers lamer listesi boş. | return }
msg #Opers 4Master: $_lamer
var %i = 1
while %i <= $hget(lamer,0).item {
msg #Opers 4 $+(%i,.1) $hget(lamer,%i).item
inc %i
}
}
if $1 == lamersil {
if !$2 { msg #Opers Lütfen ".lamer ekle/sil/list [nick]" seklinde kullanin | return }
if $lamerbul($2) == 0 { msg #Opers $2 Zaten lamer listesinde bulunmuyor | return }
else {
hdel lamer $2
hsave lamer Hash/lamer.ymc
spamsil lamer $spamduzenle($2)
msg #Opers $2 lamer listesinden silindi.
}
}
if $1 == lamerekle {
if !$2 { msg #Opers Lütfen ".lamer ekle/sil/list [nick]" seklinde kullanin | return }
if $lamerbul($2) == 1 { msg #Opers $2 Zaten lamer listesinde bulunuyor | return }
else {
hadd lamer $2
hsave lamer Hash/lamer.ymc
spamekle lamer $spamduzenle($2)
msg #Opers $2 lamer listesine eklendi
}
}
}
if !$hget(lamer) { hmake lamer | hload lamer Hash/lamer.ymc }
var %:ip = 1
while (%:ip <= $findfile(IP/,*.ymc,0)) {
var %ymcs = $token($findfile(IP/,*.ymc,%:ip),-1,92)
if !$hget($remove($gettok($token($findfile(IP/,*.ymc,%i),-1,92),1,$asc(m)),.y)) { .hmake $remove(%ymcs,.ymc) | .hload $remove(%ymcs,.ymc) $+(IP/,%ymcs) }
inc %:ip
}
alias spamduzenle {
var %metin $regsubex($1-,/([[:digit:]])/g,$null)
return %metin
var %metin $regsubex(%metin,/(.)\1+/g,\1)
var %metin $replace(%metin,ı,i,ö,o,ü,u,ğ,g,ü,u,ç,c)
var %metin $regsubex(%metin,/(.)/g,\ $+ \t)
var %metin $regsubex(%metin,/(.)/g,$iif($len(%metin) !== \n,$spamtara(\1) $+ +(\s|\d|[[:punct:]]|[[:cntrl:]])*,$spamtara(\1) $+ +))
return $+((?i),%metin)
var %metin $replace(%metin,$chr(32),.+)
return $+((?i),$left(%metin,-32))
}
alias lamerbul {
if $hfind(lamer,$1).item { return 1 }
else { return 0 }
}