Tekil Mesaj gösterimi
  #1  
Alt 11 Temmuz 2009, 17:45
CoCoRiCo - ait Kullanıcı Resmi (Avatar)
CoCoRiCo CoCoRiCo isimli Üye şimdilik offline konumundadır
Meraklı Zır Cahil 🤓👽
 Chief 

mS Puan: 571
mS Derece: CoCoRiCo ÇalışkanCoCoRiCo ÇalışkanCoCoRiCo ÇalışkanCoCoRiCo ÇalışkanCoCoRiCo ÇalışkanCoCoRiCo Çalışkan
 
Üyelik tarihi: 10 Temmuz 2009
Bulunduğu yer: \xml:http\
Yaş: 43
Mesajlar: 138
Konular: 22
Eklentiler: 0
Alınan Teşekkür: 88
Yapılan Teşekkür: 20
Exclamation Debug Scripting

Hemen, hemen herkesin bildiği Debug; serverlar tarafından gelen ve kullanıcılar tarafından
giden mesajların betimlenmemiş saf halini görebildigimiz bir tanımdır..

Buradan çok etkili bir şekilde Socket mantığı kullanarak çok hızlı çalışan scriptler
yapmam mümkün, socket'lerde bilindigi gibi $me $server gibi temel tanımlar çalışmaz
fakat debug ile yazılan scriptlerde bu mümkün.. Event'larla pek ihtiyaç kalmayacak
bir özellik\güzellikte Debug ile script yazmak mümkün.

Debug temelde:
Kod:
Outputs raw server messages, both incoming and outgoing, to a debug.log file, or a custom @window.


/debug -n @moo, opens a custom @window minimized
/debug -c off, turns off debugging and closes the associated custom @window
/debug -pt, wraps or timestamps messages
/debug N @moo, uses color N for messages

The -i switch calls the specified identifier before a debug line is logged. The return value of the identifier is used as the debug line.

The $debug identifier returns the name of debug file or @window
seklinde bunları bize sunar elbetteki biz bunlardan faydalanağız. Kücük tipik bir Debug Scripting öğneği yazalım.
Kod:
alias dget { 
  ;<debug> <anahtar> <tablo> <alias>

  .DEBUG -i debug getd 

  ;degug komutu ile "i"(injeck) anahtarını kullanarak
  ; verilerin okunması için  bir tabloya gönderdik ve bu tablodan 
  ; alias'ımızla cekiyoruz.. 

}
alias getd  {
  ; salt olarak gelen bölünmemiş verileri $1-$2 gibi okumanın münkün olmabilmesi için
  ; token ile ayırmamız gerek ayırma biçimini boşluk olarak bildigimiz 32 karakteri ile yapıyoruz
  ; bu script için 32 ideal farklı amaçlar doğrultusunda $asc(@) gibi de ayırma biçimi yapabilir.

  TOKENIZE 32 $1-
  ;simdi gelen veriyi ayrı bi pencerede inceleyelim

  $iif(!$window(@DBg), window -fen @DBg verdana 10,echo @DBg $1-)

  ;burada bilmemiz gereken önemli husus..
  ; <- :irc.syrix.net 329 Baxi #test 1247320647
  ; $1_$2________$3_$4__$5___$6 
  ; ayırdıgımız sekli ile bu sekilde hücrelenen verilere görünen hersey dahildir. 
  ; bu sekilde cagırdıgımızda $1 "<-" bu veriyi ifade eder.


  ;### JOIN EVENT
  ;join giden
  if $3 === JOIN  && #* iswmcs $4 {  echo 3 -s --->>  $4 Kanalına giriliyor..  } 
  ;part giden
  if $3 === PART  &&  #* iswmcs $4 && @ !isin $2 {   echo 5 -s <<---  $4 Kanalı terk ediliyor..  } 

  ;on join
  if $+(*<-*:,$me,!*@*JOIN*:#*) iswmcs $1- {  echo 10 -s --->  $gettok($1-,-1,32) -  Kanalına girdiniz. }
  ;on part
  if $+(<-*:,$me,!*@*PART*#*) iswm $1- {  echo 14 -s <<---  $gettok($1-,-1,32) -  kanalı terk edildi. }
}
Umarım iyi bir örnek olmuştur. Olabildigince basit yapmaya çalıştım herkes bilgi
seviyesine göre daha iyi seyler yapacaktır eminim bircok avantajı var fakat
dezavantajlarıda var bilincli kullanımla mutlaka daha etkin işler cıkar...
Alıntı ile Cevapla
Sponsored Links
 
1 2 13 14 16 17 18 19 21 22 23 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 49 50 51 52 54 55 56 57 58 59 60 61 62 63 67 68 69 70 71 72 73 74 75 76