mIRC Scripting  


Geri dön   mIRC Scripting > mIRC Scripting > Tutorials - Dersler

Tutorials - Dersler mIRC Scripting hakkında yazılmış özel dersleri bulup, paylaşabileceğiniz bölüm.

Like Tree1Teşekkür
  • 1 Post By CesuryureK
Cevapla
 
LinkBack Seçenekler
  #1  
Alt 10 Ocak 2010, 10:23
Avatar Yok

mS Puan: 31
mS Derece: CesuryureK
 
Üyelik tarihi: 11 Temmuz 2009
Yaş: 35
Mesajlar: 21
Konular: 8
Eklentiler: 0
Alınan Teşekkür: 1
Yapılan Teşekkür: 0
Standart If Then Else

IF THEN ELSE


if then else, bazı değerleri karşılaştırmak ve farklı alanlardaki karşılaştırmalara dayalı çalışmalar yapmanıza olanak

sağlamaktadır.

Basit bir şekilde Formatı,

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 CesuryureK Nicki Değilse Kick Atsın.

on !*:Join:#mIRC: {
if ($nick != CesuryureK) { 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 CesuryureK Değilse ve Nickin Karakter Toplamı 2 veya 2'nin Katıysa Voice Versin,
Yok CesuryureK ise Hoş Geldin diye Notice Atsın.
Hem #mIRC Hemde #mIRCHelp Kanallarına Giren Kişi CesuryureK 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 != CesuryureK) && (2 // $len($nick)) { mode $chan +v $nick }
if ($chan == #mIRCHelp) && ($nick == CesuryureK) { notice $nick Hoş Geldin }
if ($istok(#mIRC #mIRCHelp,$chan,32)) && ($nick != CesuryureK) && (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.
Titanic buna teşekkür etti.
__________________
Şimdi Saat Sensizliğin Ertesi..
Alıntı ile Cevapla
Sponsored Links
Cevapla

Seçenekler

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 Açık
Pingbacks are Açık
Refbacks are Açık



Yasal Uyarı

    5651 sayılı yasada belirtilen "Yer Sağlayıcı" olarak hizmet sunmaktadır. İlgili yasaya göre site yönetiminin tüm içerikleri kontrol etme yükümlülüğü yoktur. Bu sebep ile sitemiz, uyarıları dikkate alarak yasa dışı paylaşımlar hakkında gerekli işlemleri yapmaktadır. Oluşabilecek yasal sorumluluklar üyelerimize aittir. Gerekli şikayet bildirimleri yapabilmek için "burayı" tıklayarak gerekli alanları doldurup yapabilirsiniz.
mIRCScripting©
Powered by vBulletin®
Copyright © 2000-2015, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1

1 2 13 14 16 17 18 19 21 22 23 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 49 50 51 52 54 55 56 57 58 59 60 61 62 63 67 68 69 70 71 72 73 74 75 76