IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  vaybe sohbet

>
+
Etiketlenen Kullanıcılar

36Beğeni(ler)

 
 
LinkBack Seçenekler Arama Stil
Prev önceki Mesaj   sonraki Mesaj Next
Alt 27 Ağustos 2015, 21:12   #13
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (3)
IF Ticaret Yüzdesi:(%)
Cevap: kontrol edip op ekletme hk.




Toprak Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Regex buyur;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:notice:*:?:{ if !$regex($nick,/^ChanServ$/i) return if $regex($1-,/(kanal[ıiİ]\skayitl[ıiİ]\sde[gğĞ][ıiİ]l|erisim\slistesi.+kayitli.+nick|erisim\sseviyesi.+ve.+arasinda|nick.+kanalindaki\serisim.+zaten|nick.+kanalindaki\serisim\sseviyesi.+degisti|nick.+kanalinin\serisim.+seviyeden.+eklendi)/Si) { msg %kanal $1- | .disable #opekle } }

|| kullanmaya gerek yok regex'de (veri|veri) olarak kullanabiliriz
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Bilgi amaçlı.

Ayrıca kodda her koşulu düşünerek ayarladım.

Access eklemede kanal ismi doğru girilmezse uyar.
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if !$regex($2,/^#.+/) { msg # Lütfen kanal belirtiniz. | return }

Access eklenen nick doğru yazılmadı ise uyar.
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if !$regex($3,/^([a-zA-ZĞğıİöÖüÜşŞçÇ_^\133\135}{][a-zA-ZĞğıİöÖüÜşŞçÇ0-9_|^}\{\133\135`-]{0,30})$/i) { msg # Lütfen nick belirtiniz. | return }

Yetki seviyesi sayıdan oluşmuyorsa uyar..
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if !$regex($4,\d) { msg # Lütfen Yetki seviyesini giriniz. | return }

Gibi bütün koşullar düşünerek yazmıştım..

Ben seni anladım, ama sen bu kodu yazdığında zaten raw üzerinden @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] istenilen kodu yazmıştı; onun yazdığını görmeden on NOTICE üzerinden de ben yazmıştım. Bunun üzerine sen $regex kullanarak daha işlevsel ve hızlı çalışan bir kod yazmayı amaçladın diye düşündüm, zaten @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] de mantığı anladı ve sorun çözüldü; dolayısıyla biraz kod jimnastiği yapalım istedim. Ortada hâlâ sorununun çözülmesini isteyen birisi olsaydı yaptığım yanlış olabilirdi ya da senin koduna laf atsaydım, ama dediğim gibi amacım hazır aynı işi yapan 3 farklı kod yazılmışken biraz daha işi nasıl ileri götürebilirizi tartışmaktı. Kaldı ki @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] da hızlı ve işlevsel kod yazmak için güzelce maddeler saymış, benimle aynı doğrultuda düşündüğünü sanıyorum, kendisine de bir kez daha teşekkür ediyorum.

Yani amaç sidik yarıştırmak veya gövde gösterisi yapmak değildi, ben zaten 6 yıl mIRC Scripting'den uzak kaldım, web ile uğraştım. En ufak ayrıntıları bile yeni döndüğüm için kaçırmam doğaldır ki gerçekten amacım koduna saygısızlık etmek değildi. Kurduğun if koşullarının tümünde { msg ile bilgi gönder | grubu disable et } yer aldığından hepsini tek bir if koşulunda da toplayabilirizi göstermeye çalışmıştım, bunu farklı anladıysan kusura bakma. Böyle şeyler bana göre değil.

Ayrıca o zaman @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]'ın uyarılarını da göz önünde bulundurarak event içerisinde $regex'i kurabiliriz, yani daha kısa olarak || ayracını kullanmadığımız gibi if koşulu da kurmayabiliriz, özetle şöyle de olabilirdi:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on $*:text:/^(!opekle)/iS:#:{ if (!$regex($2,/^#)) { msg # Lütfen kanal belirtiniz. | return } if (!$regex($3,/^([a-zA-ZĞğıİöÖüÜşŞçÇ_^\133\135}{][a-zA-ZĞğıİöÖüÜşŞçÇ0-9_|^}\{\133\135`-]{0,30})$/i)) { msg # Lütfen nick belirtiniz. | return } if (!$regex($4,\d)) { msg # Lütfen Yetki seviyesini giriniz. | return } else { .enable #opekle | set %kanal # | cs access $2 add $3- } } #opekle off on $*:notice:/kanal[ıiİ]\skayitl[ıiİ]\sde[gğĞ][ıiİ]l|erisim\slistesi.+kayitli.+nick|erisim\sseviyesi.+ve.+arasinda|nick.+kanalindaki\serisim.+zaten|nick.+kanalindaki\serisim\sseviyesi.+degisti|nick.+kanalinin\serisim.+seviyeden.+eklendi/iS:*:{ if (!$regex($nick,/^ChanServ$/i)) return msg %kanal $1- .disable #opekle } #opekle end

Not: Olumsuz koşullardaki uyarı kısmının mantığı güzel olmuş ama sanırım atlamışsın, on TEXT eventında benim kodumda da var senin yazdığın koddaki satırlar. Kodu kısaltmak adına onlara dokunmadım, yukarıda yine var.

 
Alıntı ile Cevapla

 


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler Arama
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
txt ye veriyi * * arasına ekletme cashmare mIRC Scripting Sorunları 1 04 Haziran 2011 00:14
Kelime Kısaltması Ekletme Tapanx mIRC Scripting Sorunları 3 03 Ocak 2009 16:02
bot'a IP akick ekletme Erdem mIRC Scripting Sorunları 3 25 Ekim 2008 23:07
Mesaj ekletme Leader_19 Eggdrop, NeoStats, BNC 0 22 Eylül 2007 15:19
! ile maske ekletme KiLL mIRC Scripting Sorunları 6 03 Mart 2007 15:14