Tekil Mesaj gösterimi
Alt 07 Kasım 2025, 17:16   #2
Çevrimiçi
SNOOPY Doğrulanmış Üye
~ BLaCK_and_WHiTe ~
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Eggdrop ile ilgili




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
# kickradyo_protect.tcl # Kullanım: bu dosyayı eggdrop'un script dizinine koyup yükleyin (source ile). # Varsayılan izinli liste: ops, sop, hop veya 'allowed_kicks' listesinde olan nickler # ---- Ayarlar ---- # Bu listeye ayrıca izin vermek istediğiniz özel nickleri ekleyin set allowed_kicks {Nick1 Nick2 BotAdmin} # Eğer true yaparsanız yetkisiz kullananları uyarır (mesaj), # eğer "kick_on_violation" true ise o kullanıcıyı kanaldan atar. set kick_on_violation false set ban_on_violation false ;# true yaparsanız +b ekleme de yapılır (örnek gösterim) # ---- Yetki kontrol proc'u ---- proc _kr_check_privs {nick uhost chan} { # Bu proc, nick'in yetkili olup olmadığını döndürür (1/0). # Birkaç yöntem dener: 1) eggdrop'un dahili fonksiyonları 2) allowed_kicks listesi # NOT: eggdrop kurulumunuza göre `chanop` ya da `isop` fonksiyonları farklı olabilir. # Eğer hata verirse, catch ile güvenle fallback'a düşer. # 1) Eğer botun kendi takibiyle kanal operatörü ise if {[catch {chanop $chan $nick} res] == 0} { if {$res} { return 1 } } # 2) Bazı eggdroplarda isop/is_chanop benzeri fonksiyon olabilir if {[catch {isop $nick $chan} res2] == 0} { if {$res2} { return 1 } } # 3) Fallback: allowed_kicks listesinde mi? global allowed_kicks if {[lsearch -nocase $allowed_kicks $nick] >= 0} { return 1 } # Yetkili değilse 0 döner return 0 } # ---- Public mesaj bağlama ---- # Bu bind, kanalda birisi ".kickradyo" yazdığında çalışır. # Bind pattern: ^\.kickradyo( |$) -> komutun başta olması ve parametre opsiyonel bind pub - {^\.kickradyo( |$)} _kr_handle_pub proc _kr_handle_pub {nick uhost hand chan text} { # nick = gönderen, uhost = user@host, chan = #kanal, text = tüm mesaj if {[_kr_check_privs $nick $uhost $chan]} { # Yetkili: hiçbir şey yapma, diğer botlar/komutlar devam etsin. return } # Yetkisiz kullanıcı: uyar, ve opsiyonel olarak kick/ban uygula putquick "PRIVMSG $chan :$nick: Bu komutu kullanma yetkiniz yok." putquick "NOTICE $nick :Bu komut yalnızca kanal yetkililerine açıktır." global kick_on_violation ban_on_violation if {$kick_on_violation} { # Kick (neden yazısı isteğe bağlı) putquick "KICK $chan $nick :Yetkisiz .kickradyo kullanımı" } if {$ban_on_violation} { # Basit bir +b ekleme örneği (hostmask daha uygun olur) # Burada uhost değişkenini doğrudan kullanıyoruz (örnek), kendi network'unuz için düzenleyin. set mask "*!*@$uhost" putquick "MODE $chan +b $mask" } # İsteğe bağlı: komutun başka botlara ulaşmasını engellemek isterseniz # dönüş ile diğer bindlerin çalışmasını önlemeye çalışabilirsiniz. (eggdrop sürümüne göre farklılık gösterir) # Bazı kurulumlarda "return -code 1" vs. "return" davranışı değişir. Genelde return ile yeterli olur. return }

Kod daha önceden elimde vardı istediğine göre eklemeleri yaptım. Kod bana ait değil ve denemesini yapmadım olmazsa yaz düzeltme yaparız

__________________
BLaCK_and_WHiTe is now known as SNOOPY


Kullanıcı imzalarındaki bağlantı ve resimleri görebilmek için en az 20 mesaja sahip olmanız gerekir ya da üye girişi yapmanız gerekir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet bizimmekan reklamver