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/)
-   -   $Sockcodda mantıksız. (https://www.ircforumlari.net/mirc-scripting-sorunlari/40310-sockcodda-mantiksiz.html)

moonshield 04 Kasım 2007 01:18

Sock Bot Kodda Sorun Var Acil Yardim pls.
 
Kod:

  if $2 == MODE {
    var %chan $3
    var %mode $4
    var %mnick $5
    if $4 == -v {
      if $3 == #operhelp {
        sw $sockname KICK $3 $5 : $+ $botfnick($1) tarafindan voice'iniz alindi. #OperHelp kanalında bekleme yapmak yasaktır hoş sohbetler dileriz ...
      }
    }
    if %chan == #operhelp {
      if *+* iswm $4 {
        if *q* iswm $4 || *a* iswm $4 || *o* iswm $4 {
          ;sw MNet SAJOIN $botfnick($1) #helpers
        }
      }
      if %mode == +v {
        sw $sockname privmsg #helpdesk : $+ %mnick usere $unick($1) "helpdesk" yardım vermektedir.
        if (%helpdeskvoice. [ $+ [ $unick($1) ] ]) {
          inc %helpdeskvoice. [ $+ [ $unick($1) ] ] 1
          goto yaz
        }
        eLse {
          set %helpdeskvoice. [ $+ [ $unick($1) ] ] 1
          goto yaz
        }
      }
      goto son
      :yaz
      write -s $+ $unick($1) helpdeskvoice.txt $unick($1) nicki   %helpdeskvoice. [ $+ [ $unick($1) ] ]  kez yardım verdi
      haLt
      :son
      haLt
    }
  }
  if $2 == MODE {
    var %chan $3
    var %mode $4
    var %mnick $5
    if $4 == -v {
      if $3 == #help {
        sw $sockname KICK $3 $5 : $+ $botfnick($1) tarafindan voice'iniz alindi. #Help kanalında bekleme yapmak yasaktır hoş sohbetler dileriz ...
      }
    }

¤02:01:43¤ <@Sysop_Helping> > V nicki 14 kez yardım verdi
¤02:01:43¤ <@Sysop_Helping> > ChanServ nicki 1 kez yardım verdi
¤02:01:43¤ <@Sysop_Helping> > Stuff nicki 1 kez yardım verdi
-----------------------------------------------------------------------
¤02:07:37¤ <@Sysop_Helping> > V nicki 1 kez yardım verdi
¤02:07:37¤ <@Sysop_Helping> > ChanServ nicki 1 kez yardım verdi
¤02:07:37¤ <@Sysop_Helping> > Stuff nicki 1 kez yardım verdi


Bu kodu nomercy için yaptım kod calısıyor ama bi sorun var ne yaptıysam düzeltemedim ve buraya attim kod voiceler düzenli tutmuyor 15 dk önce rapor cekiyorum Helpdesk_X 15 diyor bi süre sonra tekrar cekiorum 3 diyor neyden olabilir yardimci olursanız sevinirim.Bi kod daha var yine bunda da ne yaptıysam olmuyor chanserv harici op vereni kill atsin kill atiyor ama chanserv de atmiya calısıyor. Chanserv ve belirlediğim nicklere kill atmaması için bu koda ne yapmam gerekiyor. Botu cok güzel hale getirdim ama tek bu iki codda takıldım.

Kod:


if $2 == MODE {
if *serv !iswm $botfnick($1) {
if $3 == $read(opcek123.txt,w,$3) {
sw $sockname NAMES $3
}
if +*q* iswm $4 {
sw $sockname kill $botfnick($1) 2İzinsiz Op Vermek Yasaktir.
}
elseif +*a* iswm $4 {
sw $sockname kill $botfnick($1) 2İzinsiz Op Vermek Yasaktir.
}
elseif +*o* iswm $4 {
sw $sockname kill $botfnick($1) 2İzinsiz Op Vermek Yasaktir.
}
elseif +*h* iswm $4 {
sw $sockname kill $botfnick($1) 2İzinsiz Op Vermek Yasaktir.
}
}

Simdiden tesekkürler.

moonshield 05 Kasım 2007 11:48

Cevap: $Sockcodda mantıksız.
 
2. Kodu yaptım ama diğerini hala yapamadım yardimci olacak kimse yokmu arkadaşlar.
Kod:

  if $2 == MODE {
    var %izinsizop $3
    var %modeler $4
    var %herseyvatanicin  $5
    if *+*q* iswm $4 || *+*a* iswm $4 || *+*o* iswm $4 || *+*h* iswm $4 {
      if $3 == $read(opcek123.txt,w,$3) {
        if Supervisor_* !iswm $botfnick($1) && Chanserv !iswm $botfnick($1) && *Ethem* !iswm $botfnick($1) && *kurtcobain* !iswm $botfnick($1) && *Mnet* !iswm $botfnick($1) && *Helping* !iswm $botfnick($1) && *Controlbot* !iswm $botfnick($1) && *Services* !iswm $botfnick($1) { 
          sw $sockname KILL $botfnick($1) 2İzinsiz Op Vermek Yasaktir. [MNeT SecuRity]
          sw $sockname os raw mode %izinsizop -o %herseyvatanicin
        } 
      }
    }
  }


XcLusive 05 Kasım 2007 13:31

Yanıt: $Sockcodda mantıksız.
 
if %mode == +v {
sw $sockname privmsg #helpdesk : $+ %mnick usere $unick($1) "helpdesk" yardım vermektedir.
if (%helpdeskvoice. [ $+ [ $unick($1) ] ]) {
inc %helpdeskvoice. [ $+ [ $unick($1) ] ] 1
goto yaz
}

kodlarının altında

eLse {
set %helpdeskvoice. [ $+ [ $unick($1) ] ] 1
goto yaz
}

bu kodu silip tekrar denemeni öneririm. çünki nick voice verdiği kişinin voicesini alırsa voice sayasını tekrar 1 yapıyor sıfırlanma sebebi bu olsa gerek.
servicesleri atlatmak içinde

if (serv isin $botfnick($1)) { :komut }

gibi birşeyler kullanabilirsin yada cs den voice/devoice'yi kaldırdığın zaman cs olayıda çözülür sanırım.

moonshield 05 Kasım 2007 21:44

Cevap: $Sockcodda mantıksız.
 
set %helpdeskvoice. [ $+ [ $unick($1) ] ] 1

set inc yaptım düzeldi galiba... Çalışınca oluyormuş :D

XcLusive 05 Kasım 2007 23:17

Cevap: $Sockcodda mantıksız.
 
biraz uğraşmak gerek :)

moonshield 06 Kasım 2007 23:02

Cevap: $Sockcodda mantıksız.
 
Sözümü geri aliyorum düzelmedi senin dediğini yaptım kayıt yapmıyor bu defada. üstadlar bi yardim ederse olur bu iş, sacmalık var ama neresinde hala bulamadım.

<@Sysop_Helping> > Helpdesk_Kocaeli nicki 7 kez yardım verdi
<@Sysop_Helping> > Helpdesk_Level nicki 9 kez yardım verdi
<@Sysop_Helping> > Helpdesk_uSta nicki 1 kez yardım verdi

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

10 sn sonraki rapor. 10 snde levelin yaptığı tek işlem bi usere daha baktı.

<@Sysop_Helping> > Helpdesk_Kocaeli nicki 7 kez yardım verdi
<@Sysop_Helping> > Helpdesk_Level nicki 1 kez yardım verdi
<@Sysop_Helping> > Helpdesk_uSta nicki 1 kez yardım verdi

L4roXyL 07 Kasım 2007 00:20

Cevap: $Sockcodda mantıksız.
 
Bunu yapmanın en iyi yolu hash tablosu kullanmaktır, moonshield.,
Sana örnek bir alias yazıcağım mantığını açıklıyacağım, bundan yola çıkarak istediğini yapabileceksin.

on *:start: { if $isfile(vnick.db) { hmake vnick 100 | hload -i vnick vnick.db } | else { hmake vnick 100 | hsave -i vnick vnick.db } }
;mIRC açılışında, vnick isimli tabloyu yükler. Yani dolayısı ile veriler silinmez devamlı kalıcı olur.
alias cvp { sockwrite -n socket-ismi $1- }
;işimizi basitleştirmek için bir alias oluşturuyoruz.

alias qq {
;alias ismi qq
if $sock(socket-ismi) {
;socket bağlantının adı socket-ismi ise;
if $2 == mode && $3 == #operhelp {
;eğer 2. kelime mode ise ve kanal #operhelp kanalı ise;
if $count($nick($3,$ayır($1)).pnick,@,&,~,%) >= 1 && $4 == +v && $count($nick($3,$5).pnick,@,%,&,~) == 0 {
;eğer kanal'da, @,&,~,% prefix'ine sahip olan bir nick, kanal'da herhangi bir yetkiye sahip olmayan bir nick'e +v(voice) verirse;
hinc -m vnick $ayır($1) 1 | hsave -i vnick vnick.db
;voice veren nick'i vnick isminda bir tabloya kayıt et ve değer olarak 1 arttır. Artı olarak vnick tablosunu, mIRC ana klasörüne vnick.db olarak kayıt et.
}
}

if $2 == privmsg {
;eğer 2. kelime privmsg ise;
if $ayır($1) == founder-nick && $3 == #operhelp && $remove($4,$chr(58)) == !rapor {
;text'i gönderen founder-nick ise ve kanal #operhelp kanal'ı ise ve son olarak gönderilen text !rapor ise; while yardımı ile vnick tablosundaki tüm değerleri #operhelp kanalına göster;
var %1 = 1,%2 = $hget(vnick,0).item
while %1 <= %2 {
cvp privmsg #operhelp Nick: $hget(vnick,%1).item - Verdiği voice sayısı: $hget(vnick,%1).data
inc %1
}
}
}
}

}

Umarım anlamışsındır.

moonshield 07 Kasım 2007 00:37

Cevap: $Sockcodda mantıksız.
 
bunu yaparım anlattığın gibi ama söyle birşey var ben sadece help & operhelp için yapmadım bu kodu globalkanalların help kanallari içinde yaptım yani bu dediğini yapmaya kalkarsak baya uzun işi elimizdeki mevcut kottaki sorunu bulup düzeltebilirsek cok daha iyi olur biliyorsun en ufak bi hata sorun cıkartıyor onu düzelt yap diyene kadar zaman kaybına neden oluyor bu verdiğim koddaki sorunu bulamazmıyız anlamsız bişi olduğu belli ama nedir bulamıyorum.

L4roXyL 07 Kasım 2007 00:44

Cevap: $Sockcodda mantıksız.
 
Ben senin verdiğin kod'dan açıkcası birşey anlamadım :)
Ama sana şöyle birşey soracağım; senin şimdi tam olarak istediğin nedir?
Belirlediğin kanallarda voice veren nickleri ve kaç adet voice verdiklerini öğrenmek'mi? Tam olarak kısaca ve düz şekilde açıklarsan birşeyler yapabilirim.


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

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net