| mIRC Scripting Dersleri mIRC Scripting için yazılmış, öğretici ders dokümanlarına ulaşabilirsiniz. |
|
|
Konu Araçları |
| 09 Ekim 2026, 23:23 | |
|
İçeriği görmek için buraya tıklayarak kaydolunuz.
Arkadaşlar, üçüncü dersimize biraz daha teknik bir örnek bırakalım.
Alias mantığını öğrenirken genellikle /selam veya /merhaba gibi basit komutlarla başlıyoruz. Ancak gerçek bir script içerisinde alias yapısının asıl gücü, parametreleri işleyebilmesi ve birden fazla işlemi tek merkezden yönetebilmesidir. Amaç: Tek bir /kanal komutuyla kanala giriş, ayrılma, topic değiştirme ve kanal bilgilerini görüntüleme işlemlerini gerçekleştirmek. mIRC Kodu: Kod:
alias kanal {
var %islem = $lower($1)
var %hedef = $2
if (!$istok(gir ayril topic bilgi,%islem,32)) {
echo -a Kullanım: /kanal <gir|ayril|topic|bilgi> <#kanal> [metin]
return
}
if ((!%hedef) || ($left(%hedef,1) != $chr(35))) {
echo -a HATA: Geçerli bir kanal belirtmelisiniz.
return
}
if (!$server) {
echo -a HATA: IRC sunucusuna bağlı değilsiniz.
return
}
if (%islem == gir) {
if ($me ischan %hedef) {
echo -a BİLGİ: Zaten %hedef kanalındasınız.
return
}
join %hedef
return
}
if ($me !ischan %hedef) {
echo -a HATA: %hedef kanalında bulunmuyorsunuz.
return
}
if (%islem == ayril) {
part %hedef $3-
return
}
if (%islem == bilgi) {
echo -a ----- Kanal Bilgileri -----
echo -a Kanal : %hedef
echo -a Topic : $chan(%hedef).topic
echo -a Üye : $nick(%hedef,0)
echo -a Mod : $chan(%hedef).mode
echo -a --------------------------
return
}
if (%islem == topic) {
if (!$3) {
echo -a HATA: Yeni topic metnini belirtmelisiniz.
return
}
if (($me !isop %hedef) && ($me !isowner %hedef) && ($me !ishelp %hedef)) {
echo -a UYARI: Topic değiştirme yetkiniz olmayabilir.
return
}
topic %hedef $3-
}
}
Kod:
/kanal gir #Sohbet /kanal bilgi #Sohbet /kanal topic #Sohbet Herkese iyi sohbetler. /kanal ayril #Sohbet Görüşmek üzere. $1, $2 ve $3- : Komuta gönderilen parametreleri ayrıştırır. $istok() : Yalnızca izin verilen işlemlerin kullanılmasını sağlar. $lower() : İşlem adını küçük harfe dönüştürür. $me ischan : Kullanıcının ilgili kanalda bulunup bulunmadığını kontrol eder. $chan() ve $nick() : Kanal bilgilerini okumamızı sağlar. return : İşlem tamamlandığında kodun devam etmesini engeller. Teknik Not: Topic değiştirme yetkisi, kanal modlarına ve sunucunun yetkilendirme politikasına bağlıdır. Kod içerisinde yapılan yerel kontroller tek başına kesin sonuç garantisi vermez. Bu örnek temel bir komut yönlendiricisidir. Daha kapsamlı projelerde kanal adı doğrulaması, bağlantı durumu ve sunucu hata yanıtları ayrıca ele alınmalıdır. Sonuç: Alias yapısını yalnızca kısa komutlar oluşturmak için düşünmemek gerekiyor. Doğru parametre yönetimiyle birden fazla işlemi tek noktadan kontrol edebilir, kod tekrarını azaltabilir ve ileride genişletilebilecek daha düzenli sistemler oluşturabiliriz. Kodun uzun olması değil, ne yaptığının belli olması önemlidir. İyi forumlar.
__________________
Her kapıyı açabiliyor olmanız, her kapıdan geçmeniz gerektiği anlamına gelmez. |
|
| 09 Ekim 2026, 23:26 | |
|
İçeriği görmek için buraya tıklayarak kaydolunuz.
Emeğinize sağlık
__________________
|
|
| Yer İmleri |
| Şu anda bu konuyu görüntüleyen etkin kullanıcılar: 1 (0 üye ve 1 konuk) | |
| Konu Araçları | |
| Görünüm Modları | |
|
|