HOTLINK Eventı Hakkında Anlatım - ForumIRC.Com

Beni Anımsa?
Etiket Listesi

Cevapla Yeni konu oluştur
Standart HOTLINK Eventı Hakkında Anlatım #1
Regex - ait Kullanıcı Resmi (Avatar)
Alt 20 Haziran 2021, 19:43
Ders: HOTLINK Eventı Hakkında Anlatım
Tarih: 04.02.2009 Çarşamba
Yazan: Regex

-

Evet arkadaşlar, bu derste sizlere mIRC Scripting eventlarından on HOTLINK eventını anlatacağım. Aslında dersi yazmamın asıl sebebi, bir forumda mIRC Scripting hakkında orta düzeyde bilgi sahibi olan ve kendini geliştirmek isteyen bir arkadaşımızın bu konu üzerinde ders yazmamı istememdi. Kendisinin isteği üzerine, dersi yazma kararı aldım.

Öncelikle "event" sözcüğünün, size yabancı gelmediğini biliyorum (en azından orta düzeyde mIRC Scripting bilgisine sahip olduğunuzu farz ediyorum). Yine de kısaca bir değineyim: Eventlar, mIRC'in Remote kodlarını oluşturan öğelerdir ve Türkçe'deki karşılığı "olay"dır. Kanala girişleri on JOIN eventıyla, kanaldan çıkışları on PART eventıyla, mIRC'imizi açtığımızı on START eventıyla karşılarız ve bunun gibi birçok event (olay) mevcuttur. Bense, size bu derste anlaşılır bir şekilde ve indirgeyebildiğim kadar basite indirgeyerek on HOTLINK eventını açıklayacağım. Çünkü bu zamana dek, basit örneklemeler dışında "hiç" bu event hakkında bilgi verilmemiş. İşte ben de bilgiye sahip olup, daha hoş kodlar ortaya çıkarmanızda yardımcı olmaya çalışacağım.

HOTLINK eventı ne işe yarar?

HOTLINK eventı, mIRC'deki sözcük gruplarına tıklamanızı sağlayan bir eventtır. Hayâl gücünüze ve isteğinize bağlı olarak geniş kullanımlar oluşturabilirsiniz.

Kullanımı: on <seviye>:HOTLINK:<aranacak-metin>:<*#?=!@>:<komutlar>

Kullanımını, Türkçe biçimde açıkladıktan sonra hemen bir örnek vermek ve bu örnek üzerinden anlatım yapmak istiyorum. Böylelikle aklınızda daha rahat yer edeceğini düşünüyorum. Mesela aşağıdaki kodla, içinde "Life" geçen bir metni ele alalım ve eğer ilk kelimesi "Lifeman" ise bu kelimeye tıkladığımızda, bize bilgi versin.

Kodumuz:

Kod:
on ^*:hotlink:*Life*:#:return
on *:hotlink:*:*:echo Tıklanan kelime: $qt($1) - Metnin tamamı: $qt($hotline) - Metindeki kelimelerin, byte cinsinden değeri: $qt($hotlinepos)

Gördüğünüz gibi iki adet event kullandık ve sanırım aklınızda çokça soru işareti belirdi. Merak etmeyin, hepsini açıklayacağım.

Evet ilk eventta, "^" kullandık. Bu eventta, diyoruz ki: "Kanal penceresinde, içinde Life -bu arada gördüğünüz gibi whildcard hayatın her yerinde- geçen metin (text)ler kullanıldığında, /return kullanarak bu kullanımı aktif hâle getiriyoruz. İkinci eventtaysa, /return kullanarak aktif hâle getirdiğimiz metin üzerinde uygulanacak işlemleri belirliyoruz (Burada, /echo komutuyla örnek olduğu için bilgi almamızı sağladık.).

Bir de yukarıda birtakım identifier (tanım)lar kullandık. Bunları açıklamadan önce, aklınızda daha iyi yer edinmesi için daha basit cümlelerle yukarıda açıkladığımı tekrar açıklamak istiyorum;

Aslında mIRC Scripting'e dair orta düzeyde bilgi sahibiyseniz, ^ prefixi size akraba gibi geliyordur. Bildiğiniz gibi metinleri Türkçe'leştirmek için kullanırız bu prefixi. Yani en basitinden konumuzla alakasız olsa da aşağıdaki kodu örnek olarak vermek istiyorum:

Kod:
on ^*:join:#:echo # *** Kanala giriş yapan: $+($nick,.) $+($chr(40),$address,$chr(41)) | haltdef

Yani aklınızda pekişmesi gereken olgu; ^ prefixinin, verileri "önceden" algılayarak durdurması veya işlem yapmasıdır. HOTLINK eventında da hiçbir fark yok aslında. Sadece, biraz daha karışık gibi gözüküyor fakat mantığı kavradığınızda, kod yazmak ve işlem yapmak size, çerez yemek gibi gelecektir. Yani bakın tekrar söylüyorum: ^ prefixini kullanarak veriyi /return komutuyla aktif hâle getiriyoruz (işimize yarayan bir veriyse) ve daha sonra, bir event daha oluşturuyoruz ve yapılacak işlemleri belirliyoruz. Son derece basit.

Artık bu eventla alakalı identifierlara gelmek istiyorum. Sanırım, aklınızda herhangi bir soru veya soru işareti kalmadı.

Nedir bu on HOTLINK identifierları?

Bu eventla ilgili olarak, bilinmesi gereken iki adet identifier var. Bunları, açıklamalarıyla beraber tanıyalım:

$hotline: İşlem yapılacak olan metnin, tamamını verir. Yukarıda verdiğim kodu deneyerek daha rahat anlayabilirsiniz.
$hotlinepos: İşlem yapılacak olan metni, byte cinsinden verir. Yine deneyerek daha iyi anlayabilirsiniz.
$1 vs.: Öncelikle "vs." şeklinde genellememin sebebi, on TEXT eventında ve aliaslarda bu tür tanımlarla sıkça karşılaşmış olmanız ve zaten bilgi sahibi olmanız gerekiyor. Yine de kısaca açıklayayım: $1; işlem yapılan metindeki ikinci kelimeyi, $2; ikinci kelimeyi verir ve bu, böyle gider.

Not: Yukarıdaki örnek koddaki, $qt() identifierı aklınızı karıştırmasın. Çünkü bu identifier (tanım), içindeki veriyi tırnak (") içine almaktan başka bir işe yaramaz.

Umarım bu dersten, birileri bir şeyler öğrenmiştir. Eğer bilginizi geliştirebildiysem, ne mutlu bana...

Not: Konu hakkındaki sorularınızı, başlık altından sorabilirsiniz.
__________________
Tarihten dert yanarsan tarih olursun; tarihten ders alırsan tarih yazarsın.
Cevapla Yeni konu oluştur

İçeriği Sosyalleştir


Şu anda bu konuyu görüntüleyen etkin kullanıcılar: 1 (0 üye ve 1 konuk)
 

Benzer Konular
Konu
Konuyu Başlatan
Forum
Cevaplar
Son Mesaj
every
Duyurular
4
10 Haziran 2021 00:33
Regex
Duyurular
26
18 Mayıs 2021 08:12
LnX
Sunuculardaki Son Gelişmeler
7
12 Mayıs 2021 02:07
Painfully
Mitoloji
0
04 Mayıs 2021 19:40
Painfully
Mitoloji
0
04 Mayıs 2021 19:40

© İçerik sağlayıcı paylaşım sitesi olarak hizmet veren ForumIRC.Com sitemizde 5651 sayılı kanunun 8. maddesine ve T.C.K'nın 125. maddesine göre tüm üyelerimiz yaptıkları paylaşımlardan kendileri sorumludur. Sitemiz hakkında yapılacak tüm hukuksal şikayetleri İletişim bağlantısından bize ulaşıldıktan en geç 3 (üç) gün içerisinde ilgili kanunlar ve yönetmenlikler çerçevesinde tarafımızca incelenerek, gereken işlemler yapılacak ve site yöneticilerimiz tarafından bilgi verilecektir.