Tekil Mesaj gösterimi
Alt 23 Aralık 2010, 23:20   #3
Çevrimdışı
serdark
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: uzun yazı koruması




PeRSGuaRD Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
ON @1:TEXT:*:#ela: {
if ( $nick isop $chan ) halt
if ( $len($strip($1-)) >= 150) {
if ( $me isop $chan ) { uzunkick halt }
msg # .temizle
/ban # $nick
}

resimde görebilirsin arkadaşım devrim999 nıckı uzun yazdıgında .temizle yazıyor ve ardından ban atıyor.
lordguard nıckıde aynı yazıyı yazıyor fakat op oldugu ıcın ona ban atamıyor.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]


----------

birisi birşey yazdıgında atmaz

kım 150 tane karakter kullanırsa harf rakam sembol v.s o kısıye uygular komutu
if ( $len($strip($1-)) >= 150) {
buradakı 150 sayısıyla onuda ayarlayabılırsın 150 bence kısa 300 yap sen onu.
ON @1:TEXT:*:#ela: {
burayıda zurna ıdı sanırım senın verdıgın kodda değiştirirsin.


olayı tam anlamamışsın galiba yada ben anlata madım 1 kişi normal user kanala girer girmez ame atıyor ardı ardına 3 defa ust uste 3 defa temizle yapıyor kod ekran 3 defa temizleniyor oda göze batıyor onu anlatmak istiyorum sop veya opları banlamama olayı 2ci plan anlata bildimmi ugraştırıyorum sizi kusura bakmayın

----------

ATLAS Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Dikkatimden kaçarak yazdığım kodda hata yapmışım..

sopları muaf tutabilmek için if $nick issop $chan kullanılmaz. Çünkü text eventinde kanala yazı yazan nick konumları ( &, ~ , . ) prefixlerini görmesi için regex ile yazılması gerekiyor.

soplar unrealde & olarak prefix alıyor o yüzden
if $regex($nick($chan,$nick).pnick,/^(&)/) { halt }
olarak gösterip işlemi durdurman gerekior.

Fakat Unreal kurulurken ( &, ~ , . ) bu prefix özellikleri kurulmadı ise direk
if ( $nick isop $chan ) { işlem } şeklinde onları muaf tutabilirsin.

Ayrı ayrı nickleri muaf tutmak istersen ( özel nickler )

var %muaf = 1
var %muafnicks = nick1,nick2,nick3,nick4,nick5
if %muaf && $istok(%muafnicks,$nick,44) { halt }

kullanmalısın. 1 yazan yeri 0 yaparsan kod çalışmaz.
Yani 1 özel nick korumasını açar 0 kapatır.


Anladığım kadarı ile sen kanalda belirttiğin harf sınırını aşanı kanaldan banlamak istiyorsun. Opları ve sopları bunun yanında belirttiğin nickleri muaf tutup bu kurala uymayan nickleri banlamak istiyorsun istediğin koda gelince.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on @1:TEXT:*:#zurna: { var %muaf = 1 var %muafnicks = nick1,nick2,nick3,nick4,nick5 if %muaf && $istok(%muafnicks,$nick,44) { halt } if ( $nick isop $chan ) { halt } if $regex($nick($chan,$nick).pnick,/^(&)/) { halt } if $nick != $me { if $len($1) >= 150 { ban -k $chan $nick ban sebebin privmsg $chan .temizle return } } }

Bu şekilde dene çalışır. 150 olarak belirttiğim yer kişinin kanalda yazacağı maksimum harf sayısını belirtir. Oynama yapabilirsin.. Fakat bu koruma harf sınırı korumasıdır. Uzun harf koruması değildir.

uzun harf koruması istiyorsan
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if $len($1) >= 150 {

olan yeri

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if $regex($1-,/([[:print:]])\1\1/gi) >= 10 {

olarak değiştir umarım açık olarak anlatabilmişimdir.

ustat benim istedigim olay tam olarak şudur adam kanala girdi girer girmez 3 defa uzun yazı yazdı bu adamı 1 kere banlamak ve 1 kere .temizle yazmasını istiyorum

şuanki komutum 1 kere banlıyor ama 3 defa .temizle yazıyor anlata bildimmi ugraştıyorum sizi kusura bakmayın

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklamver bizimmekan