All pastes #570768 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-06-16 21:21 UTC
rendered paste body
  elseif ($regex($1,/^[!@.]rank/Si)) {
    inc %sc
    var %name = $+(rank.,%sc) 
    if (($regex($+(%name,rank),$2-,/\b([0-9]{1,8})\b/Si)) && ($StatsN(! $+ $remove($2-,$regml($+(%name,rank),1),$chr(32))) isnum)) {
      hadd -m %name rank $regml($+(%name,rank),1)
      hadd -m %name skill $StatsN(! $+ $remove($2-,$regml($+(%name,rank),1),$chr(32))))
      hadd -m %name sendway $iif($regex($1,/^@/Si),msg $chan,notice $nick)
      hadd -m %name skill2 $StatsID(! $+ $remove($2-,$regml($+(%name,rank),1),$chr(32))))
      sockopen %name hiscore.runescape.com 80
    }
    else {
      notice $nick $+($c1,[,$c2,Wrong syntax:,$c1 $1 skill rank])
    }
  }


on *:SOCKOPEN:rank.*:{
  sockwrite -nt $sockname GET /overall.ws?rank= $+ $hget($sockname,rank) $+ &table= $+ $hget($sockname,skill) $+ &scroll=true HTTP/1.1
  sockwrite -nt $sockname Host: $+(hiscore.runescape.com,$str($crlf,2))
}
on *:SOCKREAD:rank.*:{
  while ($sock($sockname).rq) {
    sockread &rank
    bwrite $sockname -1 -1 &rank
  }
  bread $sockname 0 $file($sockname).size &rank
  if ($bfind(&rank,1,</html>)) {
    $hget($sockname,sendway) $+($c1,[,$c2,Rank,$c1 $hget($sockname,rank) $c2,for,$c1 $hget($sockname,skill2),] [,$c2,Nick:,$c1 $flc($gettok($remove($bvar(&rank,$calc($bfind(&rank,1,?user1=) + 7),20).text,$chr(10)),1,34)) |,$c2 Level:,$c1 $gettok($regsubex($remove($bvar(&rank,$bfind(&rank,$calc($bfind(&rank,1,?user1=) + 7),</td>),20).text,$chr(10),$chr(44)),/>(\d{1,4})</,$+(",\1,")),2,34) |,$c2 Exp:,$c1 $gettok($remove($bvar(&rank,$calc($bfind(&rank,$calc($bfind(&rank,1,?user1=) + 7),<td class="right">) + 18),20).text,$chr(10)),1,60),])
    .remove $sockname
    .hdel -sw $sockname *
    sockclose $sockname
  }
}