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

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Sorunları (https://www.ircforumlari.net/mirc-scripting-sorunlari/)
-   -   +M modu (https://www.ircforumlari.net/mirc-scripting-sorunlari/179074-m-modu.html)

AtLaNTa 11 Şubat 2009 06:16

+M modu
 
kanalda hic bir user kalmadigi durumlarda kanali otomatik +m moduna almak icin nasil bir code kullanmaliyim.kanala user girdiginde tekrar -m moduna almam icin yardimci olabilirmisiniz.farkli bir baslik acmak istemedim.soyle bir ricamda olacak sizlerden,bot'umda yuklu olan renk,kufur.. vs. korumalarima !muaf nick yazarak bu korumalardan muaf tutulmasi icin yardimci olabilirmisiniz lutfen.

Difuzyon 11 Şubat 2009 14:55

Cevap: +M modu
 
Kod:

on *:part:#kanal:if $nick($chan,0) == 2 { mode $chan +m }
on *:quit:if $nick(#kanal,0) == 2 { mode #kanal +m }
on !*:join:#kanal:if $nick($chan,0) == 2 { mode $chan -m }

#kanal ismini gereken yerlere yazmayı unutma.

Diğer soruna gelince;
Korumanı görmeden,korumandan etkilenen nickleri ne şekilde eklediğini bilmeden sana yardım vermemiz,sence doğru çözüm mü?...

AtLaNTa 11 Şubat 2009 15:26

Cevap: +M modu
 
kanalda bir user kaldiginda kanali +m moduna aliyor.bunun kanalda hic user kalmadigi zamanlarda yapabilirmiyiz.kanalda gorevliler durursa ama user kalmaz ise kanali yine +m yapsin lutfen.

ikinci ricama gelince.

bir korumadan nickleri muaf tutmak icin sunu uyguluyorum.

if $nick !isreg # || $istok(ahmet hüsamettin,$nick,32) { return }

buradaki ahmet vs.. nickler degisken olacak.!muafnick kufur ali dedigimde o koruadan muaf olacak.bu konuda yardimci olabilirseniz memnun olurum.

Difuzyon 11 Şubat 2009 16:03

Cevap: +M modu
 
Kod:

on *:part:#kanal:if $nick($chan,0,r) == 1 { mode $chan +m }
on *:quit:if $nick(#kanal,0,r) == 1 { mode #kanal +m }
on !*:join:#kanal:.timer 1 2 if $!nick(#kanal,0,r) == 1 $chr(123) mode #kanal -m $chr(125)

Soruları yöneltirken lütfen isteğinizi net bir şekilde(hepimizin anlayacağı şekilde) izah edin.
"Kanalda kimse kalmadığında" demek başka "Kanalda yetkililer(+,%,@,&,~) dışında kimse kalmadığında" demek başka.

----

2.sorunda "!muaf kufur ali" demişsin...
/auser muafnick ali ,yaparsan Kullanıcı listene
muafnick:ali

şeklinde bir bölüm açmış olursun.Kod içerisinde de:
if $nick !isreg # || $level($nick) == muafnick { return }
bu şekilde kullanırsan etkilenmemiş olur.Bu şekilde çoğaltabilirsin:
/auser muafnick ahmet
/auser muafnick mehmet
...

AtLaNTa 11 Şubat 2009 16:30

Cevap: +M modu
 
malesef hocam kanalda user kalmadigi halde +m yapmadi.duz mirca ekledim hata olmasin diye netice yok
2. ricam icin ise
hocam bu codeyi ben bot'um icin rica ettim.users bolumu dolu oraya ekleyemiyorum.komutla belki txt icerisine ekleyerek bir cozumu olur diye dusundum

Difuzyon 11 Şubat 2009 16:43

Cevap: +M modu
 
1.kod bende çalışıyor.Kanalda @ konumundayım(yani bir prefix'im var).
Kanal +m durumunda ve kanalda sadece ben varım:

[16:27] * Giriş: Sait ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...])
[16:27] * Cenk mod değiştirdi:-m
[16:27] * Ayrıldı: Sait ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) (kanaldan ayrildi)
[16:27] * Cenk mod değiştirdi:+m
[16:28] * Giriş: Sait ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...])
[16:28] * Cenk mod değiştirdi:-m
[16:28] * IRC`den Çıktı: Sait ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) (» [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] »)
[16:28] * Cenk mod değiştirdi:+m

Sen kanalda yetkisiz durumdaysan(ve kod sende ekli durumdaysa) , çalışmaz.
Veya kanaldaki durumu daha iyi anlatırsan,hatayı bulabiliriz?

AtLaNTa 11 Şubat 2009 17:07

Cevap: +M modu
 
kanalda yetkiliyim.sorun birden fazla nickle denendiginde ortaya cikiyor hocam

Kod:

*** Giriþ: sahin ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) #dura
[14:46:18] * A kanal modu kurdu: -m
*** Giriþ: r ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) #dura
*** Çýkýþ: r ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) #dura
[14:46:39] * A kanal modu kurdu: +m
*** Çýkýþ: sahin ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) #dura
*** Giriþ: vb ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) #dura
[14:47:06] * A kanal modu kurdu: -m
*** Çýkýþ: vb ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) #dura
*** Giriþ: r ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) #dura
*** Çýkýþ: r ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]) #dura

kanalda kimse kalmadigi halde +m yapmadi.bir iki denemeden sonra -m de yapmiyor..

Difuzyon 11 Şubat 2009 17:18

Cevap: +M modu
 
$nick(#kanal,0,r)
Bu identifier #kanal'da herhangi bir prefix'i(+,%,@,&,~) bulunmayan nicklerin toplam sayısını verir.Kanalda bu tanıma uyan son kişi /part veya /quit yaptığında o değer 1'e eşittir.Çıkış veya part yaptığı anda o rakamı yine görür.

Çoklu bir şekilde deniyorum ve kod çalışıyor.Varsa remote'nde bulunan diğer JOIN , PART , QUIT event'larından (çakışma) kaynaklanabilir...Onları devre dışı bırakıp sadece verdiğim kodlar üzerinden denermisin...

+

timer süresini 2 sn. yapmıştık onuda 1 sn. olarak düzeltelim.Çünkü 2sn. içerisinde 2 kişi girerse , sayı bire eşit olmayacaktır.
.timer 1 1 ..........

AtLaNTa 11 Şubat 2009 18:55

Cevap: +M modu
 
yeni bir mirc indirdim ve denedim code gayet guzel calisiyor,peki cakistigi durumlarda ne yapabilirim.

2. ricam icin bir sey yapilabilecekmi.muaf nickler icin..

Difuzyon 11 Şubat 2009 19:15

Cevap: +M modu
 
Çakışan kodları buraya kopyalarsan , bir çatı altında birleştiririz.
2. soruna gelince (users bolumu dolu oraya ekleyemiyorum) demişsin,alakası bile yok.

Mantığı kavrayınca .txt kullanmana gerek kalmaz:
/auser muafnick ali
/auser muafnick mehmet
/auser muafnick arif

şeklinde ekliyorsun.Silmek için ise:
/ruser muafnick mehmet

Nasıl listelicem,takip edecem diye tereddüt ediyorsan ?
/ulist muafnick

yaptığında sana muafnick listesini verecektir.

Küfür koruman içinde
Alıntı:

on *:text:*:#:{
if $level($nick) == muafnick { return }
if $1 == salak { mode $chan +b $nick }
}
Dikkat edersen,Kanala yazı yazan kullanıcının level düzeyi == muafnick ise , Ne yazdığına bakmadan kod başa dönüyor.

Doğru yerde,doğru identifier'la kullanıldığı takdirde avantajı daha çok.Txt'den sorgulamak yerine direkt olarak sorgulayacağı alan var.Hem gereksiz yere mIRC'i kasmamış oluruz.


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 17:49.

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net