Gelişmiş Badnick koruma modülü

Badnick koruma modülü:

Ayarlanabilir seçenekler
Wildcard ile nick ekleyebilme
Nick değiştirildiğinde tarama yapabilmesi
Kickleme yerine sadece kanal girişinde nickin yanında (Uyar,Kick,Kick+ban) özellikleri.
Wildcardlı direk girişte atabilme özelliği
Kolay eklenip silinebilme ve kontrol özelliği

kodumuzda mevcuttur.

#göster off
on ^*:hotlink:*Uyarı*:#:return
on ^*:hotlink:*Kick*:#:return
on ^*:hotlink:*Kick+ban*:#:return
on ^*:hotlink:*Badnick-Ekle*:#:return
on *:hotlink:*:#:{
if $remove($1,$chr(40),$chr(41)) == Uyarı {
var %line $gettok($strip($remove($gettok($strip($hotline),1,40),Giriş:)),2,93)
set %lastnick $strip(%line)
notice %line %line kullanmış olduğunuz nick yasaklanmıştır. Eğer 60 saniye içinde nickinizi değiştirmezseniz kanaldan uzaklaştırılıcaksınız!
$+(timer,$strip(%line)) 1 60 uzaklastir $chan %line Badnick yasaktır. Nickinizi değiştiriniz.
}
elseif $remove($1,$chr(40),$chr(41)) == Kick {
var %line $gettok($strip($remove($gettok($strip($hotline),1,40),Giriş:)),2,93)
kick $chan %line Badnick yasaktır. Nickinizi değiştiriniz.
}
elseif $remove($1,$chr(40),$chr(41)) == Kick+ban {
var %line $gettok($strip($remove($gettok($strip($hotline),1,40),Giriş:)),2,93)
mode $chan +b %line | kick $chan %line Badnick yasaktır. Nickinizi değiştiriniz.
}
elseif $remove($1,$chr(40),$chr(41)) == Badnick-Ekle {
var %line $gettok($strip($remove($gettok($strip($hotline),1,40),Giriş:)),2,93)
badnick ekle %line
kick $chan %line Badnick yasaktır. Nickinizi değiştiriniz.
}
}
on *:part:#:{
if $timer($nick) {
timer $+ $nick off
}
}
on *:quit:{
if $timer($nick) {
timer $+ $nick off
}
}
on ^*:join:#:{
.haltdef
if $hfind(badnick,$nick,1,W).data {
echo $chan $+(2[,$time,]) Giriş: 4 $+ $nick $+ 2 $remove($+($chr(40),$address($nick,1),$chr(41)),*,!) 5Badnick! 4(1Uyarı4) 10 4(1Kick4) 10 4(1Kick+ban4)
}
else {
echo $chan $+(2[,$time,]) Giriş: $nick $remove($+($chr(40),$address($nick,1),$chr(41)),*,!) 4(1Badnick-Ekle4)
}
}
#göster end
#kickle off
on *:join:#:{
if $hfind(badnick,$nick,1,W).data {
uzaklastir $chan $nick Badnick yasaktır. Nickinizi değiştiriniz.
}
}
#kickle end

alias badnick {
if $1 == ekle {
if !$hfind(badnick,$2,1,W).data {
hadd -m badnick $r(1000,999999) $2
hsave badnick badnick.mudin
hload badnick badnick.mudin
echo -a 10Badnick listesine $+(2,,$2,10) eklendi.
}
else {
echo -a 10 $+(2,,$2,10) zaten badnick listesinde mevcut.
}
}
elseif $1 == sil {
if $hfind(badnick,$2,1,W).data {
hdel badnick $ifmatch
hsave badnick badnick.mudin
hload badnick badnick.mudin
echo -a 10 $+(2,,$2,10) badnick listemden silindi.
}
else {
echo -a 10 $+(2,,$2,10) zaten badnick listemde yok.
}
}
else {
echo -a 10 Komutu yalnış kullandınız.
echo -a 10 Örnek: 2 /badnick ekle nick* 10 gibi eklemelerinizde wildcard geçerlidir.
}
}
on *:nick:{
if $nick == %lastnick {
$+(.timer,%lastnick) off
}
if $hfind(badnick,$newnick,1,W).data {
var %a = 1, %b = $comchan($newnick,0)
while %a <= %b { if $me isop $comchan($newnick,%a) { mode $v2 +b $newnick kick $v2 $newnick Badnick yasaktır. Nickinizi değiştiriniz. } inc %a } } } alias uzaklastir { mode $1 +b $2 kick $1 $2 $3- } alias yordam { if $1 == göster { echo -a Artık badnckler kanalınıza girdiğinde fare ile manuel işlem yapabiliceksiniz. enable #göster hload badnick badnick.mudin } elseif $1 == kickle { if $2 == on { echo -a Artık badnickler otomatik olarak atılıcaktır. enable #kickle hload badnick badnick.mudin } elseif $2 == off { echo -a Kickleme durumu kapatıldı. disable #kickle } } elseif $1 == durum { if !%ilkcalisma { hmake badnick set %ilkcalisma 1 echo -a Addon ilk defa çalıştırıldığı için herhangi bir yordam açık değil. echo -a Lütfen /yordam durum komutunu tekrar deneyin. } else { echo -a Sistemdeki yordamların durumu: echo -a Manuel Kontrol: $iif($group(#göster).status == on,Aktif,Çalışmıyor) echo -a Otomatik Kontrol: $iif($group(#kickle).status == on,Aktif,Çalışmıyor) echo -a Zamanlı listeleme: $iif(%listeleme,Aktif,Çalışmıyor) if $group(#kickle).status == off && $group(#göster).status == off { echo -a Şuanda kanalınız korunaksız. echo -a Herhangi birini açmak için: /yordam göster|kickle kullanabilirsiniz. echo -a Otomatik olarak badnick listelemek için: /yordam listele saniye #kanal kapatmak için /yordam listeleme #kanaladı şeklinde yapabilirsiniz. } } } elseif $1 == listele { if $2 && $3 { set %listeleme $addtok(%listeleme,$3,32) $+(.timer,$3) 0 $2 badtara $3 echo -a Sistem artık $2 saniyede bir $3 kanalını badnick süzgecinden geçiricek. } } elseif $1 == listeleme { if $2 { set %listeleme $remtok(%listeleme,$2,32) $+(.timer,$2) off echo -a $2 kanalı için badnick kontrolü durduruldu. } } elseif $1 == off { disable #kickle disable #göster echo -a Tüm yordamlar kapandı. Kanalınız korumasız durumda! } else { echo -a Yalnış komut kullanımı. echo -a Lütfen /yordam durum komutunu kullanın. } } alias badtara { if $1 { var %/ 1 while %/ <= $hget(badnick,*).item { if $hfind(badnick,$nick($1,%/),1,W).data { mode $chan +b $nick($1,%/) | kick $chan $nick($1,%/) Badnick yasaktır. Nickinizi değiştiriniz. } inc %/ } } } on *:op:#:$iif($opnick == $me,badtara $chan,return) on *:start:hmake badnick | hload badnick badnick.mudin Kodu remotenize ekledikten sonra uygulayacağınız komut ; /yordam durum Hazır olarak badnickler eklenti şeklinde eklenmiştir. Kolaylıkla indirebilirsiniz , rardan cıkan badnick.mudin dosyasını root dizinine atmanız yeterlidir. Güncellemeler: Tüm hatalar giderildi sorunsuz çalışmaktadır. Başlangıçta badnicklerin yüklenmesi aktif edildi. Nick uyarıdaki nick kontrolörü için nickchange kısmına eklenti yapıldı. Grouplarda status düzenlemesi yapıldı. Herhangi bir kanalda op olduğunuz otomatik kanaldaki badnickler taranıp , kanaldan atılıyor. Yeni bir koşul eklendi. /badtara #kanal kanalda manuel olarak badnick taraması yapabilmenizi sağlar. Yeni eklenen koşul yordam aliasına bağlandı , böylelikle otomatik olarak kanaldaki badnickleri belirlenen saniye aralığı ile listeleye bilirsiniz /yordam listele saniye #kanal. Bu listeleme zarfı siz /yordam listeleme #kanaladı yazana kadar sürer. Tüm yordamları görebilmek için /yordam durum Herhangi bir yordamı kapatmak için off yazmanız yeterlidir. ÖRN: /yordam kickle on|off veyahut /yordam göster on|off yada /yordam off { tüm yordamları kapatır }

Leave a Reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir