Konu: !söz Addonu
Tekil Mesaj gösterimi
Alt 07 Nisan 2016, 16:28   #35
Çevrimiçi
SuLh
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: !söz Addonu




unpainful Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] ilgin için teşekkürler sorunsuz çalıştı , son birşey rica edeceğim

1 dakikada bir kullanılması gibi süre ekleyebilir miyiz

Öncelikle ayraç kullanım fazlalığı var, kodunuzu şu şekilde düzeltelim:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on $*:text:/[!.]hediye\s+\S/SAi:#: { if $2 { msg $chan 4 $nick 1Tarafından 4 $2 1Nickine 1Hediye Yollandı. Hediyesi:4 $read(hed.txt) } }

2. string varsa çalışacaktır.

-

Süre ekleyeceksiniz, bunu mIRC Scripting'de bir çok şekilde yapabiliriz.. Bazılarını anlatalım;

1.'si Değişken kullanımı: Değişkenlerde "u" anahtarıyla değişkene süre aktarımı yapılabilir. Örneğin,

"/set -u60 %değişken değer" kullanımı yapacak olursak, değişkenimiz 60 saniye boyunca işlem görecektir. Daha sonra silinmeye yüz tutacaktır.

-

2. si: Hash tablolarında yine "u" anahtarıyla Tablomuza belirli bir süreye dahili olacak şekilde item ekleyebiliriz. Örneğin,

"/hadd -mu60 SuLh evet evet" gibi bir kullanımda SuLh tablosuna 60 saniyelik bir evet itemi ekledik. 60 saniye sonra bu itemi bir daha göremeyeceğiz.

-

Evet bunları geçtikten sonra, mantık olarak 60 saniyelik bir değişken/item kullanımı yapıp, bunu bir if sorgusuyla süre limiti olarak kullanabiliriz.

Kodumuza önce bir değişken ataması yapalım.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on $*:text:/[!.]hediye\s+\S/SAi:#: { if $2 { msg $chan 4 $nick 1Tarafından 4 $2 1Nickine 1Hediye Yollandı. Hediyesi:4 $read(hed.txt) | set -u60 %hediye kullanıldı } }

Evet kod kullanıldığı anda %hediye değişkenini 60 saniyelik bir sürece soktuk. Şimdi yapmamız gereken "olayımız başlamadan önce" bir koşul ataması yapıp 60 saniye geçip geçmediğini sorgulatmak.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on $*:text:/[!.]hediye\s+\S/SAi:#: { if %hediye { msg $chan Bu komutu 1 dakikalık zaman dilimleri içinde kullanabilirsiniz. } elseif !$2 { msg $chan Herhangi bir nick belirtmediniz.. } else { msg $chan 4 $nick 1Tarafından 4 $2 1Nickine 1Hediye Yollandı. Hediyesi:4 $read(hed.txt) | set -u60 %hediye kullanıldı } }

if %hediye yaptığımız koşul bize %hediye değişkeninin o an olup olmadığını sorgulatacaktır. Varsa zaten süre bitmemiştir..

Bunu hash tabloyla da aynı şekilde yapabiliriz.
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on $*:text:/[!.]hediye\s+\S/SAi:#: { if $hget(hediye,evet) { msg $chan Bu komutu 1 dakikalık zaman dilimleri içinde kullanabilirsiniz. } elseif !$2 { msg $chan Herhangi bir nick belirtmediniz.. } else { msg $chan 4 $nick 1Tarafından 4 $2 1Nickine 1Hediye Yollandı. Hediyesi:4 $read(hed.txt) | hadd -m hediye evet evet } }

Burada da itemimizin olup olmadığını sorgulatacak, ve aynı şekilde varsa zaten süre geçmemiş olacak, kodun kullanılmasına izin vermeyecektir..

---------------------------------

Eğer isteğiniz nickten nicke saniye limiti kullanmaksa, onun yolu da var elbet. değişken ismini %hediyeNick şeklinde yapabiliriz ve bunu sorgulatabiliriz ve/veya hash tablomuza nicki ekleyebiliriz..

Eğer %değişken içerisinde kullanacaksak, şu şekilde bir yol izleyebiliriz..

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on $*:text:/[!.]hediye\s+\S/SAi:#: { if $($+(%,hediye,$nick),2) { msg $chan Bu komutu 1 dakikalık zaman dilimleri içinde kullanabilirsiniz. } elseif !$2 { msg $chan Herhangi bir nick belirtmediniz.. } else { msg $chan 4 $nick 1Tarafından 4 $2 1Nickine 1Hediye Yollandı. Hediyesi:4 $read(hed.txt) | set -u60 %hediye $+ $nick kullanıldı } }

-

Hash tabloya da şu şekilde item ekleyebiliriz.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on $*:text:/[!.]hediye\s+\S/SAi:#: { if $hget(hediye,$nick) { msg $chan Bu komutu 1 dakikalık zaman dilimleri içinde kullanabilirsiniz. } elseif !$2 { msg $chan Herhangi bir nick belirtmediniz.. } else { msg $chan 4 $nick 1Tarafından 4 $2 1Nickine 1Hediye Yollandı. Hediyesi:4 $read(hed.txt) | hadd -m hediye $nick evet } }


------

Test etme imkanım olmadı, umarım yardımcı olabilmişimdir.

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet reklamver