IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Sorunları (https://www.ircforumlari.net/mirc-scripting-sorunlari/)
-   -   Zamanlayıcı hakkında. (https://www.ircforumlari.net/mirc-scripting-sorunlari/171150-zamanlayici-hakkinda.html)

Lord_Raiden 07 Ocak 2009 18:59

Zamanlayıcı hakkında.
 
Şimdi bazı kodlarda işime yarıyor örneğin bir bot yazıyorum mIRCBot özele geldimi karşılama yapıyor ama munzurun birisi bunu arka arkaya tekrarlayınca zline yiyor.

öğrenmek istediğim şey konunun mantıgını kavramak sadece yaşadıgım sorun için değil.

Yapmak istediğim bir kodda kodu kullanacak userin en fazla 2 defa tekrar etmesi 3'ncüye ignore alması gibi birşey.

Konuyu buraya açtım ama verilen anlatım cevabına göre mIRC Derslerine de alabilirsiniz bence yararlı bir konu.

Üzerinde özellikle durulup mantıgı kavratılırsa sevinirim. -eu 500 gibimsi şeylere yabancı değilim ama tam bir anlatım olursa herkez için faydalı olur.

Teşekkürler

detay 07 Ocak 2009 19:44

Cevap: Zamanlayıcı hakkında.
 
Simdi dedigin seyi yapmanin bircok yolu var bunlar;
1- Hash table kullanarak ;
özele herhangi biri geldiginde, hinc le tabloyu 1 artirdik -m kullandik ki hmake ile ugrasmayalim nede olsa gecici.. tablo adi ozel, item $nick data da artirilan sayi yani özele gelme sayisi.. sonrada if döngüsünde $hget(tablo,item) ile datayi cagirdik yani artirilan veriyi..

Kod:

on *:open:*:?:hinc -mu3 ozel $nick 1 | if $hget(ozel,$nick) > 2 { ignore -pu600 $nick }
2 - inc %var ile
Kod:

on *:open:*:?:inc -u3 $+(%ozel,.,$nick) 1 | if $($+(%ozel,.,$nick),2) > 2 { ignore -pu .. }
burda da mantık ayni tek fark inc kullanmak -u ile süreyi ayarladik $+(%ozel,.,$nick) ile sadece o nicke ait olan deger atadik örn %ozel.detay 1 gibi. sonrada bu deger 2 yi gecerse ignore etmesini sagladik.
3. yontem de timer ve inc kullanarak ama bence tamamen gereksiz hash tablosu kullanmak varken.. daha baska yontemi varmidir suan icin aklima gelmiyor ama konu ana hatlariyla boyle.
* kodlar hep 3 snde 3. kez özel acilmasina gore yapildi bu sayi artirilabilir


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 21:19.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk