!burç <burcunuz> (Yeni sistem)

Che

New member
Kullanıcı
Katılım
6 Eyl 2016
Mesajlar
21
Tepkime puanı
0
Puanları
0
Cinsiyet
Erkek
Genellikle yazılan burç kodlarında, çalışma prensibi siteye bağlanıp yorumu alıp kullanıcıya yansıtmaktır ve bu işlevi her istekte tekrarlamak, ama bu sistem bana saçma geldi, çünkü günlük burç yorumu gün içerisinde aynıdır her defasında tekrar bağlanıp siteyle muhattap olmaya gerek yok. Yazdığım kod eğer o günün yorumları daha önceden alınmamışsa siteye bağlanıp tek seferde bütün yorumları alıyor ve isteyen kullanıcılara gönderiyor.

Kullanımı: !burç <burcunuz>

Not: Türkçe karekter duyarlıdır.
!burc koc gibi yazarsanız işlem yapmaz.

Kod:
on *:sockopen:burç*:{
  var %s = sockwrite -n $sockname
  %s GET /burclar/ $+ $gettok($sockname,2,$asc(+)) $+ -burcu.html HTTP/1.1
  %s Host: burc.web.tr | %s
}
on *:sockread:burç*:{
  var %burcyorum
  sockread %burcyorum
  if </p></div> isin %burcyorum {
    $iif(!$read(burç.txt,w,$chr(91) $+ $gettok($sockname,2,$asc(+)) $+ $chr(93)),write burç.txt $chr(91) $+ $gettok($sockname,2,$asc(+)) $+ $chr(93))
write burç.txt $utfdecode($htmlfree(%burcyorum)) } }

On *:text:!burç*:#:{ 
  inc -u5 $+(%,play,+,$nick)
  if $($+(%,play,+,$nick),2) == 3 { ignore -u60 $nick | msg # 5 saniye içinde 3 defa istekte bulunduğun için tarafımdan 60 saniye ignore edildin. | halt } 
  if (!%burçlar) set %burçlar Koç|Boğa|İkizler|Yengeç|Aslan|Başak|Terazi|Akrep|Yay|Oğlak|Kova|Balık
  if !$2 { msg $chan Burç adı girmediniz. Doğru kullanım: !burç $+(<,%burçlar,>) | halt }
  if !$istok($+(%burçlar,|,ikizler),$2,124) { msg $chan Burç adını yanlış girdiniz. Doğru kullanım: !burç $+(<,%burçlar,>) | halt }
  if $date != $read(burç.txt,1) { msg # Bugünün yorumları alınıyor. | burçlarıal | var %yenigün 1 }
  msg $chan Burcun yorumu özelinize gönderilecek, lütfen bekleyin $nick $+ .
  msg $nick Seçtiğiniz burç $qt($gettok(%burçlar,$findtok(%burçlar,$iif($2 == ikizler,İkizler,$2),124),124)) | msg $nick -
  $iif(%yenigün,.timer $+ $ticks 1 6) yorumat $nick $2
}
alias yorumat { if $read(burç.txt,w,$+($chr(91),$lower($replace($2,ç,c,ğ,g,ı,i,ç,c,ş,s,İ,i)),$chr(93))) { 
    var %t $read(burç.txt,$calc($readn + 1))), %p 2,%e $numtok(%t,46)
while %p <= $calc(%e +1) { msg $1 $gettok(%t,$+($calc(%p -1),-,%p),46) $+ . | inc %p 2 } } }

alias burçlarıal {
  sockclose burç*
  if (!%burçlar) set %burçlar Koç|Boğa|İkizler|Yengeç|Aslan|Başak|Terazi|Akrep|Yay|Oğlak|Kova|Balık
  $iif($isfile(burç.txt),.remove burç.txt) | write burç.txt $date |  var %burc 1
while %burc <= 12 { sockopen $+(burç,+,$lower($replace($gettok(%burçlar,%burc,124),ç,c,ğ,g,ı,i,ç,c,ş,s,İ,i))) burc.web.tr 80 | inc %burc  } }

alias htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,&nbsp;,$chr(9)) | return %x }
 
Üst
Alt