Konu: Değişkenler ve Alias Kullanımı Anlatım: Emirhan Tarih: 8 Kasım 2024
Merhaba sevgili
IRCrehberi.NET üyeleri,
Bu dersimizde mIRC scripting'de değişkenler ve alias (takma ad) kullanımını öğreneceğiz. Bu temel kavramlar, script yazarken kodlarımızı daha düzenli ve verimli hale getirmemize yardımcı olacaktır.
Başlayalım;
Değişkenler (Variables)
Değişkenler, verileri saklamak ve daha sonra kullanmak için kullanılan alanlardır. mIRC scripting'de değişkenler üç ana gruba ayrılır:
Yerel Değişkenler: Sadece içinde tanımlandığı alanda geçerlidir.
Genel Değişkenler: Script boyunca her yerden erişilebilir.
Dizi Değişkenler: Birden fazla değeri saklamak için kullanılır.
Genel Değişkenler
Tanımlama: /set %degisken deger
Kullanım: %degisken
Örnek:
Kod
/set %isim Emirhan // Daha sonra istediğimiz yerde: echo %isim
Bu kod "Emirhan" ismini saklar ve daha sonra %isim değişkeni ile bu değere erişebiliriz.
Yerel Değişkenler
Tanımlama: var %degisken = deger
Kullanım: %degisken
Yerel değişkenler, sadece tanımlandığı script bloğu içinde geçerlidir.
Örnek:
Kod
alias selamla { var %mesaj = Merhaba $1 $+ ! echo %mesaj } Bu alias'ı /selamla Emirhan şeklinde çağırdığımızda "Merhaba Emirhan!" şeklinde bir çıktı alırız.
Alias (Takma Ad) Kullanımı
Alias'lar, sık kullandığınız komutları kısaltmak veya yeni komutlar oluşturmak için kullanılır.
Alias Tanımlama
Temel Yapı:
Kod
alias isim { komutlar } Örnek:
Kod
alias gunaydin { msg #kanal Günaydın arkadaşlar } Bu alias'ı /gunaydin şeklinde çağırdığınızda "#kanal" isimli kanala "Günaydın arkadaşlar" mesajı gönderilir.
Parametreli Alias'lar
Alias'lara parametreler ekleyerek daha dinamik komutlar oluşturabilirsiniz.
$1, $2, $n: Alias çağrılırken verilen parametreleri temsil eder.
Örnek:
Kod
alias selamver { msg $1 Merhaba $2 $+ ! } Bu alias'ı /selamver #genel Emirhan şeklinde çağırırsanız, "#genel" kanalına "Merhaba Emirhan!" mesajı gönderilir.
Uygulama: Basit Bir Sayaç Oluşturma
Bir komut oluşturup her çağırdığınızda sayacı bir artırıp ekrana yazdıralım.
Örnek:
Kod
alias sayac { inc %sayac echo Sayaç değeri: %sayac } inc %sayac: %sayac değişkeninin değerini 1 artırır.
Eğer %sayac değişkeni daha önce tanımlanmadıysa, mIRC onu otomatik olarak 0 kabul eder ve 1 artırır.
Kullanım:
Her çağırdığınızda sayaç değeri bir artacaktır.
Koşullu İfadeler ve Değişkenler
Değişkenleri koşullu ifadelerde kullanarak daha dinamik script'ler yazabilirsiniz.
Örnek: Basit Bir Şifre Kontrolü
Kod
alias sifrekontrol { if (%sifre == $1) { echo Şifre doğru, hoş geldiniz! } else { echo Yanlış şifre! } } Önce bir şifre belirleyelim:
Alias'ı çağırırken şifreyi parametre olarak verelim:
Eğer girilen şifre %sifre değişkenine eşitse, "Şifre doğru, hoş geldiniz!" mesajı görüntülenecek.
Dizi Değişkenler (Hash Tables)
Daha karmaşık verileri saklamak için dizi değişkenleri veya hash tabloları kullanabilirsiniz.
Hash Table Oluşturma
Kod
/hmake tabloismi boyut
Örnek:
Bu komut "arkadaslar" isimli bir hash tablosu oluşturur.
Veri Ekleme
Kod
/hadd tabloismi anahtar deger
Örnek:
Kod
/hadd arkadaslar Emirhan 25 /hadd arkadaslar Mylife 30
"Emirhan" anahtarına "25", "Mylife" anahtarına "30" değeri atanır.
Veriyi Okuma
Kod
echo $hget(arkadaslar, Emirhan)
Bu komut "Emirhan" anahtarının değerini ekrana yazar.
Örnek Uygulama: Kullanıcı Bilgileri Saklama
Kullanıcıların yaşlarını saklayıp daha sonra sorgulayabileceğimiz bir sistem oluşturalım.
Veri Ekleme Alias'ı
Kod
alias yas_ekle { hadd yaslar $1 $2 echo $1 kullanıcısının yaşı $2 olarak kaydedildi. } Veri Sorgulama Alias'ı
Kod
alias yas_sorgula { var %yas = $hget(yaslar, $1) if (%yas) { echo $1 kullanıcısının yaşı: %yas } else { echo $1 kullanıcısının yaşı kayıtlı değil. } } Kullanım:
Yaş ekleme:
Yaş sorgulama:
Ders bitimi;
Bu dersimizde mIRC scripting'de değişkenler ve alias kullanımını öğrendik. Bu temel kavramlar sayesinde script'lerinizi daha dinamik ve fonksiyonel hale getirebilirsiniz. Kendi script'lerinizi yazarak pratik yapmanızı öneririm.
Takıldığınız noktalar ya da özel olarak bilgi almak birlikte çalışmak isterseniz, seve seve yardımcı olurum.
Bir sonraki dersimizde döngüler ve koşullu ifadeler üzerinden devam edeceğiz..
Umarım faydalı oluyordur.
Saygılar.