Tekil Mesaj gösterimi
Alt 02 Şubat 2017, 13:09   #2
Çevrimdışı
CoCoRiCo
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
küfür koruması regex|wildcard gelişmiş




[Güncelleme]
Bir öncekinin geliştirilmiş hali..
Dialog pencere vs. yapmaya zaman bulamadım bulursam yaparım..

Kullanımı:
REGEX eklemek için
/Bw +r (g[o0]g*[Il][e3]\sy[a4]z) zline
silmek için
/Bw -r (g[o0]g*[Il][e3]\sy[a4]z)

WILDCARD eklemek için
/Bw +w *g??gle* kickban
silmek için
/Bw -w *g??gle*

ekleyeceğiniz kelimenin eşleşebileceği bir kayıt varmı kontrol için
/bw ? google
şeklinde kontrol edebilirsiniz.


yasaklayacagınız kelimenin tipini ve uygulanacak cezayı opsiyonel ekleyebilirsiniz
"google" kelimesini zline atmak isteyebilir ancak "denyo" kelimesini yalnızca banlamak isteyebilirsiniz.
her kelime için aynı ceza yerine kelimelerin tipine göre ceza uygulayabilirsiniz bununla ilgili kısaltmalar
yada tek kelimelik özel kambinasyonlar yapababilirsiniz (Kickban yerine KB gibi) ancak entegre ederken
bu kelimeyi dikkate almalısınız (uygulama kodundaki mavi satırlar)
mesela eklediginiz kelimede hem kickban hem kline hemde nick yasaklayacaksınız.. buna göre ExData için bir kelime
belirlediniz. KB_K_Q
buna göre koşullandırabilirsiniz.
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if %p` == KB_K_Q { ban -k # $nick sebep! kline $nick sebep! qline $nick sebep! }

eğer hangi eşleşme sebebiyle atıldığını görmek isterseniz de

"echo # $nick %p~ kelimesinden dolayı atıldı"
gibi %p~ ile görüntüleyebilir yada sebeplere ekleyebilirsiniz..

geçerli ExData KickBan'dır b:def fonksiyonundan değiştirilebilir.

diyelimki herhangi bir uygulama tipi kullanmayacaksınız..
standart bir ceza yönteminiz var..
bu durumda da
if ($bw($1-).?) { ban -ku600 # $nick 2 küfür yasaktır! }
kodu yeterli olacaktır..

Uygulama örnegi;
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:TEXT:*:#: { if $me isop $chan { if ($bw($1-).?) { var %p~ $gettok($v1,-1,32),%p` $gettok($v1,1,32) ban -ku600 # $nick 2 küfür yasaktır! $v1 if %p` == kickban { ban -ku600 # $nick 2 küfür yaraktır! echo 4 # $nick $qt(%p`) yasaklı kelimeyi kullandı! } } } }

Badword Kodu:
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:start: b:load alias b:def return $iif($1,$1,KickBan) alias b:save hsave br~ -i badword.db | hsave bw~ -i badword.db alias b:load { if !$hget(bw~,0) || !$hget(br~,0) { hmake bw~ 10000 | hload bw~ -i badword.db hmake br~ 10000 | hload br~ -i badword.db } } alias bw { if $regex($1,/([-+][wr])/) && $2 && $b:def($3) { if $1 == +r { if $hget(br~,$2) { echo 4 *** Bu Kelime ekli | return } else hadd -m br~ $2 $b:def($3) | echo 3 ** Kelime eklendi | return } if $1 == -r { if $hget(br~,$2) { hdel br~ $2 | echo 4 ** Kelime silindi | return } else echo 4 ** Kelime bulunamadı | return } if $1 == +w { if $hget(bw~,$2) { echo 4 *** Bu Kelime ekli | return } else hadd -m bw~ $2 $b:def($3) | echo 3 ** Kelime eklendi | return } if $1 == -w { if $hget(bw~,$2) { hdel bw~ $2 | echo 4 ** Kelime silindi | return } else echo 4 ** Kelime bulunamadı | return } b:save } if $1 == ? { noop $hfind(br~,$2,0,R,echo -a Regex: $1-) | noop $hfind(bw~,$2,0,W,echo -a WildCard: $1-) } elseif $prop == ? { var %r~ = $gettok($1-,0,32) while %r~ { if ($hfind(br~,$gettok($1-,%r~,32),0,R,var %i $1)) return $hget(br~,%i) %i | dec %r~ } var %w~ $gettok($1-,0,32) while (%w~) { if ($hfind(bw~,$gettok($1-,%w~,32),0,W,var %i $1)) return $hget(bw~,%i) %i | dec %w~ } } else { echo 5 *** hatalı ve eksik parametre echo 5 * /bw [+|-][W|R]? (wildcard|regex|kontrol) [wildcard|regex|text] <opsiyonel ExData: [Kick|kickban|zline|glizne|sqline..]> echo 5 * orn: /bw +r ([pb][i!İı1][cç\[]) echo 5 * orn: /bw +r (\b[pb][i!I1İü][çc]\b) ban echo 5 * orn: /bw +w *bitch* kickBan echo 5 * orn: /bw +w *g0ogle* kill echo 5 * orn: /bw ? bitch } }


__________________
2b|!2b=?
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet