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/)
-   -   Korumayı otomatik açtırma (https://www.ircforumlari.net/mirc-scripting-sorunlari/371620-korumayi-otomatik-actirma.html)

Emrax 15 Aralık 2010 17:22

Korumayı otomatik açtırma
 
Kolay gelsin arkadaşlar. Elimde

#Emrx on
KODLAR
#Emrx end

şeklinde bir koruma var. Ancak ben bu #Emrx on olayını kanala olan girişe göre açtırmak istiyorum. Yani 2 kodu birbirine bağlamak. Örneğin; #gorki kanalına 1 saniyede 8 kişi girince enable #Emrx olsun ve koruma açılsın ve #gorki kanalına açıldı desin. 3 dakika sonra da otomatik kapansın ve #gorki kanalına koruma kapandı desin. Kendim uğraştım.

PHP- Kodu:

on *:join:#gorki:{
  
inc -u1 %jflood [ $+ [ $chan ] ] 1
  
if %jflood [ $+ [ $chan ] ] >= {
.
enable #Emrx 
.msg #gorki #gorki kanalına toplu giriş olduğu için koruma otomatik olarak açılmıştır.
.timer 1 180 disable #Emrx 
.timer 1 182 msg #gorki 3 dakika dolduğu için koruması kapatılmıştır.
}


ama olmadı sanırım. Çünkü sürekli msg atıyor kanala açıldı açıldı diye. O sırada kanala girenler oluyor yine hızlı ondan olabilir. Ama koruma on ken yazı yazmasın açıldı diye.

Difuzyon 15 Aralık 2010 21:29

Cevap: Korumayı otomatik açtırma
 
Kod:

on *:join:#gorki:{
  inc -u1 %jflood [ $+ [ $chan ] ] 1
  if %jflood [ $+ [ $chan ] ] >= 8 && !$timer(EmraxKoruma) {
    .enable #Emrx
    .msg #gorki #gorki kanalına toplu giriş olduğu için koruma otomatik olarak açılmıştır.
    .timerEmraxKoruma 1 180 .disable #Emrx $(|) msg #gorki 3 dakika dolduğu için koruma kapatılmıştır.
  }
}

Zamanlayıcıya(timer) isim vererek ve "bu isimde bir zamanlayıcı yoksa" sorgusunu dahil ederek problemin aşılmış olur.

Emrax 15 Aralık 2010 22:49

Cevap: Korumayı otomatik açtırma
 
[22:45:20] <Emrax> #gorki kanalına toplu giriş olduğu için koruması otomatik olarak açılmıştır.
[22:45:20] <Emrax> 3 dakika dolduğu için koruma kapatılmıştır.

diyor ve kod açık kalıyor :s halbuki timer da yok.
EDİT:


.timerEmraxKoruma 1 180 .disable #Emrx | msg #gorki 3 dakika dolduğu için koruma kapatılmıştır.

bu kısımı;

.timerEmraxKoruma 1 180 .disable #Emrx | timer 1 181 msg #gorki 3 dakika dolduğu için koruma kapatılmıştır.


olarak yaptım. Sanırım msg ye timer eklemeyince oldu gibi deneyeceğim tekrar.

EDİT2: Şimdi oldu :) Teşekkürler hocam.

Difuzyon 15 Aralık 2010 22:59

Cevap: Korumayı otomatik açtırma
 
Komut olarak uygulamaya kalktığımızda :
/timerEmraxKoruma 1 180 .disable #Emrx | msg #gorki 3 dakika dolduğu için koruma kapatılmıştır.
1 haznede 2 işlemi aynı süre sonunda görüyor.

Oysaki event içerisinde kullandığımızda aradaki | seperatörü timer komutundan sonra "bağımsız olarak yeni bir komut" olarak görüyor.Bu durumu aşmak için timer satırındaki | seperatörünü $(|) olarak değiştiriyoruz.
Böylelikle event içerisinde timer dizinine 2 işlemi dahil etmek için $(|) kullanmamız gerektiğini de öğrenmiş olduk,bu bilgiyi de paylaşmak istedim.

Emrax 16 Aralık 2010 00:27

Cevap: Korumayı otomatik açtırma
 
En son anlattığınız konu için çok teşekkür ederim hocam.. Tekrar teşekkürler. Gerçekten kullanacağım zaman olacak


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

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