deneme
mIRC Scripting - IF THEN ELSE

Etiketlenen üyelerin listesi

Toplam 1 adet sonuctan sayfa basi 1 ile 1 arasi kadar sonuc gösteriliyor
  1. #1
    Ela - ait Kullanıcı Resmi (Avatar)
    Üyelik tarihi
    Mar 2018
    Mesajlar
    3.649
    İlişki Durumu
    Cinsiyetiniz
    Burçunuz
    Takımınız
    Beğenmiş
    989
    Beğenilmiş
    423
    E-Kitap
    0
    Uploads
    0
    Bahsedildigi
    66 Mesajlar
    Bahsettigi
    2 Konular

    yoksun mIRC Scripting - IF THEN ELSE

    if (v1 operatör v2) { komutlar }
    elseif (v1 operatör v2) { komutlar }
    else { komutlar }

    şeklindedir, bunu kabataslak öğrenme adına kodlarda örnek olarak görmek daha yerinde olacaktır.

    bilindiği gibi, if “eğer” demektir, else ise, “değilse, aksi halde, bu değilse” anlamlarına gelmektedir, yani kod içerisinde

    üstteki if sorgusularından hiçbiri değilse işlem yap olarak tanımlayabiliriz.

    eğer ( ) parantezlerde doğru bir şekilde sorgu yapılmışsa bracked { } içindeki komutlar işleme girecektir.

    eğer sorgu parantez kullanılarak yapılırsa hızlı olabileceğini khaled kendisi söylemektedir.
    Yani if sorgusunda parantez kullanmak, sorgunun hızlı bir şekilde yapılıp, bracked içindeki komutların parantesiz durumdan

    daha erken işlem göreceği söylemektedir.

    Bu sadece iç iç if sorgularında değil, diğer işlemlerde de parantez kullanılmasını Khaled önermektedir.

    Operatörler

    == : Eşitse

    === : Eşitse ( Büyük küçük harfe duyarlı ) [ Case-Sensitive ]

    != : Eşit değilse

    < : Küçükse

    > : Büyükse

    >= : Büyük veya Eşitse

    <= : Küçük veya Eşitse

    // : v2 değeri v1 değerinin kendisi veya bir katına eşitse | if (v1 operatör v2)

    \\ : v2 değeri v1 değerinin kendisine eşit ve bir katı değilse | if (v1 operatör v2)

    & : Bit seviyesinde karşılaştırma

    ______________________________________________

    isin : v1 değeri v2 değerinin içinde geçiyorsa

    isincs : v1 değeri v2 değerinin içinde geçmesiyle birlikte büyük küçük harfe duyarlı olması

    iswm : v1 değeri v2 değerinin içinde geçiyorsa ( Wilcard(Joker) kullanımı )

    iswmcs : Wildcard kullanılarak v1 değeri v2 değerinin içinde geçmesiyle birlikte büyük küçük harfe karşı duyarlı olması

    isnum : v1 değeri v2 içinde bir rakam ise, burda v2 değeri istenilirse yazılmayabilir, isteğe bağlıdır. yazılmadığı taktirde

    tüm geçen rakamlar için geçerlidir.

    isletter : v1 değeri v2 de bir harf ise, v2 değeri istenilirse yazılmayabilir, isteğe bağlıdır.

    isalnum : Text(Metin) harf ve rakamlar içeriyorsa

    isalpha : Text(Metin) sadece harf içeriyorsa

    islower : Text(Metin) sadece küçük harfler içeriyorsa

    isupper : Text(Metin) sadece büyük harfler içeriyorsa

    ison : v1 (Nick) değeri v2 (Kanalında) değerinde bulunuyorsa

    isop : v1 (Nick) değeri v2 (Kanalında) Op ise,

    ishop : v1 (Nick) değeri v2 (Kanalında) HalfOp ise,

    isvoice : v1 (Nick) değeri v2 (Kanalında) Voice ise,

    isreg : v1 (Nick) değeri v2 (Kanalında) hiçbir Prefix’e ( ~ , & , @ , % , + ) sahip değilse,

    ischan : v1 bulunduğunuz bir kanal ise,

    isban : v1 (Nick|Mask) değeri v2 (Kanalının) ban listesinde ise,

    isaop : v1 (Nick) değeri v2 (Kanalının) Otomatik Op Listesinde ise, ( v2 yazılmayabilir, isteğe bağlıdır)

    isavoice : v1 (Nick) değeri v2 (Kanalının) Otomatik Voice Listesinde ise, ( v2 yazılmayabilir, isteğe bağlıdır)

    isignore : v1 (Nick) değeri ignore Listemizde ise, ( v2 yazılmayabilir, isteğe bağlıdır)

    isprotect : v1(Nick) sizin Protect yani koruma listenizde ise, (v2 yazılmayabilir, isteğe bağlıdır)

    isnotify : v1(Nick) sizin Notify Listenizde ise,

    Örneklerle Konu Pekiştirilmesi..

    Soru 1: #mIRC Kanalıma Giren Hasan ise, “Hoş Geldin” Desin, Erdem ise “Niye Geldin” Desin, Ne Hasan ne Erdem ise, “Kanalımız Kapalı” Desin..

    on !*:Join:#mIRC: {
    ;mIRC kanal girişinde harekete geçen giriş eventidir.
    if ($nick == Hasan) { msg $chan Hoş Geldin $nick }
    ;eğerki giren kişi hasan ise kanala hoş geldin hasan dicek
    elseif ($nick == Erdem) { msg $chan Niye Geldin $nick }
    ;eğerki giren kişi Hasan değilde Erdem ise, Niye Geldin Erdem diyecek
    else { msg $chan Kanalımız Kapalı $nick }
    ;kanala giren ne Hasan ne Erdem ise, giren kişiye Kanalımız Kapalı diyecektir.
    }

    Burda if, elseif, else Kullanıp bu sorguda Eşittir (==) operatörünü kullandık.
    ————————–

    Soru 2 : #mIRC Kanalına Giren Kişinin Nicki NUH Şeklinde Büyük yazılmışsa Ona Voice Vermek İstiyorum

    on !*:Join:#mIRC: {
    if ($nick === NUH) { mode $chan +v $nick }
    }

    Burda === (Büyük küçük harfe duyarlı ve eşitse) Operatörünü Kullandık.

    ————————–

    Soru 3: #mIRC Kanalına Giren Kişi Eğerki Lord Nicki Değilse Kick Atsın.

    on !*:Join:#mIRC: {
    if ($nick != Lord) { kick $chan $nick <Sebep> }
    }

    Burda da Eşit Değilse ( != ) Operatörünü Kullandık.

    ————————–

    Soru 4: #mIRC Kanalına Biri Girince, Eğerki Kanal Kişi Sayısı 50’den Büyükse Giren Kişiyi Atsın.

    on !*:Join:#mIRC: {
    if (50 < $nick(#mIRC,0)) { ban -k $chan $nick <Sebep> }
    }

    Burda Büyükse ( < ) Operatörünü kullandık.

    ————————–

    Soru 5: #mIRC Kanal Sayısı 50’den Büyük veya Eşitse ve Giren Kişi Olursa, Giren Kişiyi Atsın.

    on !*:Join:#mIRC: {
    if (50 <= $nick(#mIRC,0)) { ban -k $chan $nick <Sebep> }
    }

    Burda Büyükse veya Eşitse ( <= ) Operatörünü kullandık.

    —————————

    Soru 6: Eğerki Bulunduğum Kanallardan #mIRC Kanalına Giriş Olursa ve Kanal Kişi Sayısı 50’dan Büyükse Kanala Msg Olarak “Global Olduk” Desin.
    Bunun Yanı Sıra, Eğerki Kanal #mIRCHelp ise ve O Kanala Giren Kişinin Nicki Lord Değilse ve Nickin Karakter Toplamı 2 veya 2’nin Katıysa Voice Versin,
    Yok Lord ise Hoş Geldin diye Notice Atsın.
    Hem #mIRC Hemde #mIRCHelp Kanallarına Giren Kişi Lord Değilse ve Giren Kişinin Nick Karakter Sayısı 2 veya 2’nin Katı Değilse Kanaldan Atsın.

    on !*:Join:#: {
    if ($chan == #mIRC) && (50 < $nick(#mIRC,0)) { msg $chan global olduk }
    if ($chan == #mIRCHelp) && ($nick != Lord) && (2 // $len($nick)) { mode $chan +v $nick }
    if ($chan == #mIRCHelp) && ($nick == Lord) { notice $nick Hoş Geldin }
    if ($istok(#mIRC #mIRCHelp,$chan,32)) && ($nick != Lord) && (2 \\ $len($nick)) { ban -k $chan $nick <Sebep> }
    }

    Şeklinde Katıysa ve Katı Değilse Operatörlerini Kullanımını da Gösterdik.

    ——————————

    Soru 7: Özelime Yazan Kişi Eğerki #mIRC Kanalında Op ise “Buyur #mIRC Operatörü” Desin. Yok Op Değilse Halfop İse

    “Buyur #mIRC Yardımcı Operatörü” Desin. İkisi de Değilde Voiceli İse “Seni Dinliyorum #mIRC Voice Useri” Desin. Eğerki Kanalda Hiçbir Yetkisi Yoksa “Zamanım Yok” Desin.. Yok Yazan Kişi #mIRC Kanalında Değilse ignore etsin.

    on *:Open:?:*: {
    if ($nick isop #mIRC) { msg $nick Buyur #mIRC Operatörü }
    elseif ($nick ishop #mIRC) { msg $nick Buyur #mIRC Yardımcı Operatörü }
    elseif ($nick isvoice #mIRC) { msg $nick Seni Dinliyorum #mIRC Voice Useri }
    elseif ($nick isreg #mIRC) && ($nick ison #mIRC) { msg $nick Zamanım Yok }
    elseif ($nick !ison #mIRC) { ignore $nick }
    }

    Burda isop ishop isvoice isreg ison operatörlerine değindik. Ayrıca ison operatörünün başına ünlem koyarak durumu olumlu

    iken olumsuz yaptık. Yani,
    if (ahmet ison #mirc) : eğerki ahmet mirc kanalındaysa
    if (ahmet !ison #mirc) : eğerki ahmet mirc kanalında Değilse

    operatörlerin ve identifierlerin başına ünlem koyarak cümleyi olumlu olumsuz yapabiliyoruz.

    Kısacası if then else ve operatörleri böyle kullanılmaktadır. Hepsini tek tek sorularla pekiştirip öğrenmenizi tavsiye ediyorum.




    • Set ByN Ela •
    Konu Ela tarafından (07-10-2018 Saat 02:52 AM ) değiştirilmiştir.
    Kullanıcı imzası

Bu Konuyu Okuyan Üye(ler) : 1

Bu Konu için Etiketler

Yukarı Çık