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/)
-   -   Kanal Giriş Kod (https://www.ircforumlari.net/mirc-scripting-sorunlari/693335-kanal-giris-kod.html)

RmX78 22 Mayıs 2015 10:46

Kanal Giriş Kod
 
İyi Günler IF Kullanıcıları ;

Şöyle Bir Kod İsteyecektim.Araştırdım Ama Bulamadım..

Şimdi Diyelim ki Yönetim Kanalına Girince Bot Tarafından Kişi Hemen Kanaldan Çıkartılacak Ve Özeline Kod Yollayacak Şöyle Birşey " Bu Kanala Girebilmeniz İçin &Giris 547IF4 Kodunu Özelime Yazınız..." Kişinin Özeline Gönderecek Ve Kişi Botun Özeline Kodu Yazacak Ve Bot Otomatik Kanala Çekecek Bu Kişiyi.
Aynı Botta Muaf Kişiler Listesini Olmasını İstiyorum Yani X Kişisi Girince Kod Yollasın Y Kişisi Girince Direk Kanalda Tutsun Yani Muaf Olsun...
ve Bide Kanala Girmeye Yetkili Olmayan Kişilerin Özeline de " Siz Bu Kanala Girmeye Yetkili Değilsiniz..." Yazsın...

Böyle Bir Kod Araştırdım Ama Bulamadım...

Şimdiden Teşekkürler.

KuL 22 Mayıs 2015 16:16

Cevap: Kanal Giriş Kod
 
Son satirda yetkili olmayan demissin, onu anlamadim. Ayri bir txt de yetkili olanlarin nickinimi ekliceksin, yoksa kanalda ekledigin accessimi diyorsun?

Yani hangi kanalda yetkili? #yönetim mi?

KuL 22 Mayıs 2015 20:31

Cevap: Kanal Giriş Kod
 
Kod:

on *:notice:*:*:{
  if %isim && $nick == ChanServ {
    if ($+(*,%isim,*) iswm $1-) { msg %isim Kanala Girebilmeniz icin Özelime !GIRIS %gecicikod yaziniz. | unset %isim }
    elseif (*tanima uyan kayit bulunamadi* iswm $1-) { msg %isim Siz bu Kanala girmeye Yetkili degilsiniz. | unset %isim }
  }
}
on *:join:#yönetim:{
  if $read(muafnick.txt,w,$nick) { halt }
  :birbak
  set -e %isim $nick
  cs access # list $nick
  sapart $nick #
  set %gecicikod $rand(A,Z) $+ $rand(1000,9999)
}

on *:text:*:?:{
  if $1 == !giris {
    if $2 == %gecicikod { msg $nick Kodu Basariyla girdiniz | sajoin $nick #yönetim }
    if $2 != %gecicikod { msg $nick Kodu dogru girdiginizden lütfen emin olun, Kodu tekrar almak icin !yenile yazmaniz yeterlidir Özelime }
  }
  if $1 == !yenile {
    goto { birbak }
  }
}

Zaman yüzünden Deneme Firsatim olmadi ama sanirim böyle olur.

Biri #yönetim Kanalina girerse onu sapart eder (muafnick listesindekiler haric)

ve özeline Kayitli ise Kodu yollar, degilse kanala giremezsiniz mesajini.

Her Join de kod yenilendigi icin, dünden kalma kodu kullanamazlar yani.

Eger Zaman Asimina yani biri kodu alip ama uzun süre girmeyip, o sürede kanala join olduysa ozaman eski sifreyi kabul etmez.

Onun icinde !yenile var. !yenile diyince kullaniciya yeni sifre verir.

Yazmada hata yapmadiysam sorun olmamasi gerek, ama sen bir dene sorun cikarsa buraya yaz düzeltmeyi denerim.

Feragat 22 Mayıs 2015 21:12

Cevap: Kanal Giriş Kod
 
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] hatırlarsan yaklaşık 2-3 sene kadar önce seninle bu koda benzer bir kod yapmıştık. Yaprak.gen.tr sunucusunda yanılmıyorsam. Çok zor bir şey değil biraz eventları ve koşulları inceleyerek kolayca yapabilirsin.

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] kodda ilk gözüme çarpan hata goto döngüsü. Boş bir vaktinde kodu test et mutlaka.

KuL 22 Mayıs 2015 22:14

Cevap: Kanal Giriş Kod
 
Calisan Kod :) yani en azindan bende.

Kusura bakmayin düsünmede iyi ama pratikde calismayan bir "goto" eventine denk geldim :) Tesekkür ederim @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] hocam, bilgilendirme icin :)

Kod:

on *:notice:*:*:{
  if %isim && $nick == ChanServ {
    if ($+(*,%isim,*) iswm $1-) { msg %isim Kanala Girebilmeniz icin Özelime !GIRIS %gecicikod yaziniz. | unset %isim }
    elseif (*tanima uyan kayit bulunamadi* iswm $1-) { msg %isim Siz bu Kanala girmeye Yetkili degilsiniz. | unset %isim }
  }
}
on *:text:*:?:{
  if $1 == !giris {
    if $2 == %gecicikod { msg $nick Kodu Basariyla girdiniz | sajoin $nick #yönetim }
    if $2 != %gecicikod { msg $nick Kodu dogru girdiginizden lütfen emin olun, Kodu tekrar almak icin !yenile yazmaniz yeterlidir Özelime }
  }
  if $1 == !yenile { set -u5 %isim $nick | cs access #yönetim list $nick }
}
on *:join:#yönetim:{
  if $read(muafnick.txt,w,$nick) { halt }
  set -e %isim $nick
  cs access # list $nick
  sapart $nick #
  set %gecicikod $rand(A,Z) $+ $rand(1000,9999)
}


RmX78 28 Mayıs 2015 14:35

Cevap: Kanal Giriş Kod
 
Alıntı:

Feragat Nickli Üyeden Alıntı (Mesaj 1041652813)
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] hatırlarsan yaklaşık 2-3 sene kadar önce seninle bu koda benzer bir kod yapmıştık. Yaprak.gen.tr sunucusunda yanılmıyorsam. Çok zor bir şey değil biraz eventları ve koşulları inceleyerek kolayca yapabilirsin.

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] kodda ilk gözüme çarpan hata goto döngüsü. Boş bir vaktinde kodu test et mutlaka.

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] Böyle Bir Kod Yapılmıştı Ama Bir Hata Sonucu Arşivim Silindi Bu Yüzden Yardım İstedim.Dediğiniz Gibi Araştırma Yapılsa ve Uğraşılsa Aslında Yapılabilir.Ama Bazı İnsanlar Vardır ki Bazı Konulara Yetenekleri Yoktur... :)

Zamanında Yapılan O Kod Sistemini Tekrar Paylaşma İmkanın Var Mı?


Alıntı:

Ku|L| Nickli Üyeden Alıntı (Mesaj 1041652832)
Calisan Kod :) yani en azindan bende.

Kusura bakmayin düsünmede iyi ama pratikde calismayan bir "goto" eventine denk geldim :) Tesekkür ederim @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] hocam, bilgilendirme icin :)

Kod:

on *:notice:*:*:{
  if %isim && $nick == ChanServ {
    if ($+(*,%isim,*) iswm $1-) { msg %isim Kanala Girebilmeniz icin Özelime !GIRIS %gecicikod yaziniz. | unset %isim }
    elseif (*tanima uyan kayit bulunamadi* iswm $1-) { msg %isim Siz bu Kanala girmeye Yetkili degilsiniz. | unset %isim }
  }
}
on *:text:*:?:{
  if $1 == !giris {
    if $2 == %gecicikod { msg $nick Kodu Basariyla girdiniz | sajoin $nick #yönetim }
    if $2 != %gecicikod { msg $nick Kodu dogru girdiginizden lütfen emin olun, Kodu tekrar almak icin !yenile yazmaniz yeterlidir Özelime }
  }
  if $1 == !yenile { set -u5 %isim $nick | cs access #yönetim list $nick }
}
on *:join:#yönetim:{
  if $read(muafnick.txt,w,$nick) { halt }
  set -e %isim $nick
  cs access # list $nick
  sapart $nick #
  set %gecicikod $rand(A,Z) $+ $rand(1000,9999)
}


@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] Paylaşımın İçin Teşekkürler En Yakın Süre de Deneyecem Şuan İçin Müsait Değilim.
Yine de Ellerine Sağlık...


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

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk