Tekil Mesaj gösterimi
Alt 01 Temmuz 2022, 21:08   #2
Çevrimdışı
Feragat
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: User list & Event prefixes Kullanımları




Event Prefixes (Olay Önekleri) konusu içinde bir de & Prefix'i bulunmakta. Script içinde herhangi dosyada halt/haltdef ile sonlandırılmış veya kısıtlanmış bir Event olup olmadığını görmemizi sağlar. $halted tanımı $true sonuç verirse halt/haltdef kullanılmış demektir, $false ise tam tersi.

Örnek:

mIRC'inizde 2 adet remote dosyası olduğunu varsayalım.

1- script1.ini
2- script2.ini

script1.ini dosyasına bir Event yazdınız.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on ^*:text:*deneme*:#xdeney:halt

-
Açıklaması: #xdeney kanalında cümle içinde veya yalnızca kelime olarak deneme yazılırsa bunu bana gösterme!

Sonra script2.ini dosyasında başka bir text eventı kullanmak istediniz.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:text:*:#xdeney:echo -aet Nick: $nick - Text: $1-

-
Açıklaması: #xdeney kanalında herhangi bir yazı yazıldığında, yazı yazan kişinin nickini ve yazdığı yazıyı aktif ekranda echo ile göster.

script1.ini dosyasında deneme yazısını göstermemesini istemiştik, script2.ini dosyasındaki event bu şekilde deneme yazısından tetiklenecek ve bize Örneğin Nick: Feragat - Text: Selam deneme şeklinde bir echo verecektir. Oysaki biz bunu ilk event da istemiyorduk.

Kanalda başka bir nickle selam naber deneme yazdım ve alttaki gibi sonuç döndü.
-
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
[20:33] Nick: Project`Nightmare - Text: selam naber deneme

Söylediğim gibi biz içinde deneme geçen bir cümle veya deneme kelimesini görmek istemiyoruz ama 2. bir text eventı ile de yine kanalda yazı yazıldığında Nick: $nick - Text: $1- şeklinde yazanın nickini ve yazdığı yazıyı aktif ekranda echo ile görmek istiyoruz.
İşte & bu prefix burada işe yarıyor. Şimdi 2. Event'ımızın başına & prefixini koyup deneme yapıyorum.

1. Event'ım
-
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on ^*:text:*deneme*:#xdeney:halt

2. Event'ım
-
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on &*:text:*:#xdeney:echo -aet Nick: $nick - Text: $1-

- Örnek 1 -

Text: selam naber

Sonuç:
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
[20:38] <Project`Nightmare> selam naber - [20:38] Nick: Project`Nightmare - Text: selam naber

Cümle içinde deneme yazısı olmadığı için event çalıştı.

-- Örnek 2 --

Text: Selam naber deneme

Sonuç: Hiçbir tepki yok.

& Prefix'i ile daha önce uygulanan /halt veya /haltdef komutlarına diğer eventların da saygı göstermesini sağlıyoruz.

On Text event'ı sadece bir örnekti. Anlaşılır olması adına On Text ile örnek verdim. Bunu pek çok Event'da kullanabilirsiniz.

Üstte de söylediğim gibi $halted tanımını kullanarak /halt -/haltdef sonucunu $true ve $false olarak görebilirsiniz. Küçük bir örnek vereyim.

script1.ini dosyası içeriği
-
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on ^*:text:*deneme*:#xdeney:halt

script2.ini dosyası içeriği
-
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:text:*:#xdeney:echo -aet Nick: $nick - Text: $1- - $!halted $+ : $halted

Sonuç:
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
[20:50] Nick: Project`Nightmare - Text: Selam naber deneme - $halted: $true



- me Prefixi -
-
Bir de me prefix'i bulunuyor.

me prefixi Türkçe anlamı: Ben, beni

Sadece sizin nickinizle tetiklenir. JOIN eventı'ı #kanala giriş yapıldığında tetiklenen bir Event. Eğer koşul belirtmezseniz kanala her giren nick için tetiklenecektir.
Sadece kendi nickinize işlem yaptırmak için sizi bir if koşulundan kurtaracaktır.

Örnek 1:
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:join:#xdeneme:{ if ($nick == $me) { echo -ta Şu anda # Kanalındasınız. } }

Açıklaması: #xdeneme kanalına giren nick Benim nickim ise, echo ile aktif ekrana Şu anda #xdeneme Kanalındasınız.

Örnek 2:
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on me:*:join:#xdeneme:echo -ta Şu anda # Kanalındasınız.

-
1. Örnek ile aynı işlemi yaptı. Sizi bir if koşulundan kurtarmış oldu.

Umarım açıklayıcı olmuştur. Kolay gelsin.

__________________
The Ghost of Christmas Past...

i'm here sometimes

Konu Feragat tarafından (01 Temmuz 2022 Saat 21:09 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet sohbet