Tarih: 17-05-2008, 16:50
Bu kod yine üstek üzerine yazmış olduğum gelişmiş bir
badnick tarama kodudur.
Kod neler yapar?
- Herhangi bir kanala girdiğiniz-de
"bad" tablosuna eklemiş olduğunuz ve badnick niteliği taşıyan kelimeleri kanaldaki tüm kullanıcılarda arar.
- Bulunan sonuçları size
/echo mesajı ile gösterir.
- Tarama sonunda
f9 tuşuna basarsanız son taramaya yakalanan tüm nickleri kanaldan uzaklaştırır.
-
/badd <kelime> şeklinde badnick listesine kelime ekleyebilirsiniz.
-
/bdel <kelime> şeklinde badnick listesinden belirtilen kelimeyi silebilirsiniz.
-
/blist komutunu kullanarak listeyi görebilirsiniz.
-
CTRL + f9 kombinasyonunu kullanarak tespit edilen badnickleri görebilirsiniz.
Not: Kodları (aliases - ALT + D) kısmına ekleyiniz.
Kod:
chk {
var %1 = 1
while (%1 <= $hget(bad,0).item) {
if ($ialchan($+(*,$hget(bad,%1).item,*),$1,0) == 1 && >= 0) {
hadd -m $1 $ialchan($+(*,$hget(bad,%1).item,*),$1,1).nick 1
}
else {
chk2 $1 $+(*,$hget(bad,%1).item,*)
}
inc %1
}
echo $colour(info) $1 $timestamp $iif($hget($1,0).item >= 1,Bulunan badnick sayısı: $hget($1,0).item,Badnick bulunamadı.)
echo $colour(info) $1 $timestamp Nickleri görüntülemek için: CTRL + F9 tuşuna basınız.
echo $colour(info) $1 $timestamp $iif($regex($nick($1,$me).pnick,@|&|%|~),$iif($regex($usermode,a|A|N|C),Nickleri kanal'dan atmak için: F9 tuşuna basınız.),Kanaldan atma yetkiniz yok.))
}
chk2 {
if ($1 && $2) {
var %& = 1
while (%& <= $ialchan($2,$1,0)) {
hadd -m $1 $ialchan($2,$1,%&).nick
inc %&
}
}
}
cF9 {
if ($hget($active)) seen $active
}
seen {
var %t = 1,%tt
while (%t <= $hget($1,0).item) {
%tt = $addtok(%tt,$hget($1,%t).item,32)
inc %t
}
echo $colour(info) $1 $timestamp Tespit edilen badnickler: %tt
}
F9 {
if ($hget($active)) bans $active
else diğer komut
}
bans {
var %- = 1
while (%- <= $hget($1,0).item) {
ban -k $1 $hget($1,%-).item 2 SEBEB.
inc %-
}
%// = %- - 1
echo $colour(info) $1 $timestamp Atılan nick sayısı: %//
hfree $1
}
badd {
$iif(!$1,echo -at Kelime girmediniz.,$iif($hget(bad,$1),echo -at $1 kelimesi listede.,hadd -m bad $1 1))
hsave -i bad bad.hsh
}
bdel {
$iif(!$1,echo -at Kelime girmediniz.,$iif(!$hget(bad,$1),echo -at $1 kelimesi listede değil.,hdel bad $1))
hsave -i bad bad.hsh
}
blist {
window -Caldk0 +L @Bad-words 0 0 200 400
var %- = 1
while (%- <= $hget(bad,0).item) {
aline @bad-words $+(%-,-) $hget(bad,%-).item
inc %-
}
}
on me:*:join:#:.ial on | who # | .timer 1 2 chk #
on *:start: {
if ($isfile(bad.hsh)) {
hmake bad 50
hload -i bad bad.hsh
}
}