bir arkadaş için yazdığım oldukça basit fakat kullanışlı iki fonksiyon buraya da koyıyım dedim,
bekle fonksiyonu:
[function bekle]
serv.newitem i_waiterr
new.p <p>
new.timerd <argv[0]>
new.attr attr_decay
new.tag.ownerr <src.uid>
new.tag.actionn <argv[1]>
[itemdef i_waiterr]
id i_memory
on @timer
ref1 <tag.ownerr>
if <ref1>
ref1.<tag.actionn>
endif
kullanımı: timerfın timerd versiyonudur
timerf 5,sysmessage asd / 5 saniye beklerken
bekle 5,sysmessage asd / 0.5 saniye bekler
tekrarla fonksiyonu:
[function tekrarla]
serv.newitem i_waiter
new.p <p>
new.attr attr_decay
new.tag.ownerr <src.uid>
new.tag.timetype <argv[0]>
new.tag.timee <argv[2]>
new.tag.loopnumber <argv[3]>
new.tag.actionn <argv[4]>
if <argv[1]> == 1
new.timerd 1
else
if <argv[0]> == 0
new.timerd <argv[2]>
else
new.timer <argv[2]>
endif
endif
[itemdef i_waiter]
id i_memory
on @create
tag.curnumber 0
on @timer
ref1 <tag.ownerr>
if <dtag.curnumber> < <dtag.loopnumber>
if <ref1>
ref1.<tag.actionn>
endif
tag.curnumber ++
else
remove
endif
if <dtag.timetype> == 0
timerd <dtag.timee>
else
timer <dtag.timee>
endif
return 1
kullanımı: sırasıyla süre cinsi(0 = timerd, diğer = timer), doğrudan başlama(1 ise tekrarlamaya beklemeden başlar), tekrarlar arasındaki bekleme süresi, tekrar sayısı, gerçekleşicek olay
örnek 1:
tekrarla 0,1,7,15,sysmessage asd
ilki doğrudan kalan 14 tanesi 0.7şer saniye aralıkla sol tarafta asd yazar
örnek 2:
tekrarla 1,0,2,3,invis
baştan itibaren 2 şer saniyede bir 3 defa invisi açıp kapar
Bu konu Brownie tarafından düzenlendi(2013-06-23 20:39, 11 yıl önce)