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




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.


Konu ATLAS tarafından (23 Aralık 2010 Saat 14:57 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklamver bizimmekan