mIRC Scripting  


Geri dön   mIRC Scripting > mIRC Help > mIRC identifiers - Tanımlar

mIRC identifiers - Tanımlar mIRC Help dosyası içerisindeki tüm identifiers/tanımlar hakkında bilgi alabileceğiniz bölüm.

Cevapla
 
LinkBack Seçenekler
  #1  
Alt 30 Ağustos 2011, 11:04
Avatar Yok
 Coders 

mS Puan: 621
mS Derece: Difuzyon ÇalışkanDifuzyon ÇalışkanDifuzyon ÇalışkanDifuzyon ÇalışkanDifuzyon ÇalışkanDifuzyon Çalışkan
 
Üyelik tarihi: 16 Temmuz 2009
Bulunduğu yer: code talks!
Mesajlar: 83
Konular: 36
Eklentiler: 4
Alınan Teşekkür: 5
Yapılan Teşekkür: 0
Standart $submenu

$submenu Popup menüsünde alternatif olarak kullanabileceğimiz bir identifier'dır.
Diğer identifier'lardan farkı kendi içinde bir sonsuz döngü oluşturabilmesidir.

Standart bir Popup menu'de:
Alıntı:
Oplara Mesaj At:/omsg # Mesaj
şeklinde biz dizgiyi manuel olarak verebiliyorken, $submenu tüm değerleri kendi
otomatik olarak dizgiye alacaktır.

Bu otomatik dizginin oluşabilmesi için bir başlangıç(begin) ve bitiş(end) değeri olmalıdır.
Ve değeri yükselebilicek uygun bir tanımda identifier karşılığı olmalıdır.
Bu identifier'lara birkaç örnek vermem gerekirse:
$chan(0)
$ignore(0)
$ibl(#,0)
vb identifierler 0 (sıfır) değerinden yükseldikçe varolan değeri karşılık olarak sunabilen identifier'lardır.

Örneğin Nicklist'te sağ tıkladığımda $comchan($$1,0) değeri dönüş sağlıyorsa $submenu harekete geçecektir.
Bu örnekte nicklist'te seçtiğim Difuzyon nickiyle ortak bulunduğum kanalların sayısı 5 olsun.
Bu 5 kanalı Popup menude normalde tek tek elle girmem gerekirdi:

-
Ortak Kanallardan Çık
. 1.Ortak kanaldan çık:/part $comchan($$1,1)
. 2.Ortak kanaldan çık:/part $comchan($$1,2)
. 3.Ortak kanaldan çık:/part $comchan($$1,3)
. 4.Ortak kanaldan çık:/part $comchan($$1,4)
. 5.Ortak kanaldan çık:/part $comchan($$1,5)
-


İşte bu noktada $submenu tüm bu değerleri dönüştürerek bizlere popup'da menü oluşturulmasını sağlar.
Popup denilince bu değerin karşılığı olan komut girdisini de elbette tanımlayabileceğiz.

İlk olarak bir alias oluşturuyoruz:

Kod:
Kod:
alias dify {
  var %nick $snick(#,1)
  if ($1 == begin || $1 == end) { return - }
  if ($comchan(%nick,$1)) { return $comchan(%nick,$1) : part $comchan(%nick,$1) }
}
Alias kısmında başlangıç(begin) ve bitiş(end) değerlerini tanımladıktan(-) sonra
Nicklist'te sağ tıklayacağım $snick(#,1) nickiyle bulunduğum ortak kanal(lar) varsa ki bunu $1 ile sorgulatıyoruz
menu tanımını uygulayacağı komut karşılığı olarak belirtiyoruz.
(Nicklist'te nick için neden $$1 yerine $snick(#,1) kullandım?
$submenu'deki $1 tanımı ile $$1 tanımı bir bug yaratıyor olabilir,bu nedenle $$1 nick tanımını alias içinde %variable ile tanımladım.)



Ardından bu oluşturduğumuz aliası,menu tanımında $submenu olarak atıyoruz:

Kod:
Kod:
menu Nicklist {
 Ortak Kanallardan Çık
 .$submenu($dify($1))
}
Bu noktadan sonra Nicklist'te sağ tıkladığımız nick ne olursa olsun,ortak bulunduğum kanal isimleri
bir menu olarak dizilecektir.Burdaki kanal sayısını dizgide oluşturan $submenu'dur.
_____________________________________

Bu mükemmel uyum sağlayan identifier ile alakalı mini bir örnekle anlatımı sonlandırayım:

Kod:
Kod:
alias founders {
  if ($1 == begin || $1 == end) { return - }
  if $nick(#,$1,.) { return $nick(#,$1,.) : $nick(#,$1,.) }
}
alias sops {
  if ($1 == begin || $1 == end) { return - }
  if $nick(#,$1,&) { return $nick(#,$1,&) : $nick(#,$1,&) }
}
alias ops {
  if ($1 == begin || $1 == end) { return - }
  if $nick(#,$1,o) { return $nick(#,$1,o) : $nick(#,$1,o) }
}
alias hops {
  if ($1 == begin || $1 == end) { return - }
  if $nick(#,$1,h) { return $nick(#,$1,h) : $nick(#,$1,h) }
}


menu channel {
  Kanal Yetkilileri
  .Founders
  ..$submenu($founders($1))
  .Sops
  ..$submenu($sops($1))
  .Ops
  ..$submenu($ops($1))
  .Halfops
  ..$submenu($hops($1))
}
#kanal genelinde sağ tıkladığınızda açılan Popup menude "Kanal Yetkilileri"
kısmında yetkililerin seviye ve nicklerini inceleyebilirsiniz.

Görünüm:


Hoşca paylaşımlar dilerim..
__________________
Koli
Alıntı ile Cevapla
Sponsored Links
Cevapla

Etiketler
$submenu

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