All pastes #566255 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-06-14 11:56 UTC
rendered paste body
  elseif (($StatsID($1)) || ($regex($1-,/^[!@.]p(est|c) .+/Si)) || ($regex($1-,/^[!@.][pf]2p/Si)) || ($regex($1-,/^[!@.](closest|furthest)/Si))) {
    if ((!$StatsID(! $+ $2)) && ($regex($1-,/^[!@.]p(est|c)/Si))) notice $nick $+($c1,[,$iif($2,$2,Nothing),$c2 is not a valid skill,$c1,])
    else {
      inc %sc
      var %name = $+(Stats.,%sc)
      var %pest = $iif($regex($1,/^[!@]p(est|c)$/Si),1,0)
      var %user = $iif($remove($regsubex($iif(%pest,$3-,$2-),/(#|-[tg])[0-9]+/S,),$gettok($1-,2,64),@,$chr(35)),$v1,$iif($readini(C:\program files\mircmight\defname.ini,Defname,$address($nick,2)),$v1,$nick))
      if ($regex(%user,/(^&.+|.+\*)/S)) var %user = $readini(C:\program files\mircmight\defname.ini,Defname,$address($remove(%user,*,&),2))
      if (!%user) notice $nick I am unable to get the host of that nick or that nick has no default name stored!
      else {
        hadd -m %name goal $iif($regex($iif(%pest,$3-,$2-),/(#|-[tg])([0-9]+)/S),$regml(2),00)
        hadd -m %name monster $iif($gettok($1-,2,64),$v1,00))
        hadd -m %name user %user
        hadd -m %name sendway $iif($regex($1,/^@/S),msg $chan,notice $nick)
        hadd -m %name skill $iif($regex($1-,/^[!@.]([pf]2p)/Si),$regml(1),$iif($regex($1-,/^[!@.](closest|furthest)/Si),$flc($regml(1)),$iif(%pest,P.) $+ $StatsID($iif(%pest,! $+ $2,$1))))
        sockopen %name hiscore.runescape.com 80
      }
    }
  }



on *:SOCKOPEN:Stats.*:{
  sockwrite -nt $sockname GET /hiscorepersonal.ws?user1= $+ $hr($hget($sockname,user)) HTTP/1.0
  sockwrite -nt $sockname Host: $+(hiscore.runescape.com,$str($crlf,2))
}
on *:SOCKREAD:Stats.*:{
  while ($sock($sockname).rq) {
    sockread &rst
    bwrite $sockname -1 -1 &rst
  }
  bread $sockname 0 $file($sockname).size &rst
  if ($bfind(&rst,1,</HTML>)) {
    if ($bfind(&rst,1,does not feature)) {
      $hget($sockname,sendway) $+($c1,[,$flc($hget($sockname,user)),$c2 does not feature in the highscores for,$c1 any skill])
    }
    elseif ($regex($hget($sockname,skill),/^P\.(.+)$/i)) {
      hadd -m $sockname result $htmlfree($replace($bvar(&rst,$bfind(&rst,$bfind(&rst,1,$regsubex($right($hget($sockname,skill),-2),/(.)/g,$+($asc(\1),$chr(32)))),<td align="right">),100).text,$chr(10),$chr(32)))
      if (($numtok($hget($sockname,result),32) < 3) || (<img class="miniimg"* iswm $hget($sockname,result))) $hget($sockname,sendway) $+($c1,[,$flc($hget($sockname,user)) $c2,does not feature in the highscores for,$c1 $remove($hget($sockname,skill),P.),])
      elseif ($gettok($hget($sockname,result),2,32) == 99) $hget($sockname,sendway) $+($c1,[,$remove($hget($sockname,skill),P.),$c2 for,$c1 $flc($hget($sockname,user)),$c2 is already level 99,$c1,])
      else {
        hadd -m $sockname rgoal $iif($hget($sockname,goal),$v1,$calc($gettok($hget($sockname,result),2,32) + 1))
        hadd -m $sockname tickets $calc($calc($getxp($hget($sockname,rgoal)) - $remove($gettok($hget($sockname,result),3,32),$chr(44))) / (($gettok($hget($sockname,result),2,32) * $gettok($hget($sockname,result),2,32)) / $iif($remove($hget($sockname,skill),P.) == Prayer,12,6)))
        $hget($sockname,sendway) $+($c1,[,$c2,$remove($hget($sockname,skill),P.) for,$c1 $flc($hget($sockname,user)),] [,$c2,Level:,$c1 $gettok($hget($sockname,result),2,32) |,$c2 Rank:,$c1 $gettok($hget($sockname,result),1,32) |,$c2 Exp:,$c1 $gettok($hget($sockname,result),3,32),$iif($gettok($hget($sockname,result),2,32) != 99,$+($chr(32),|,$c2 Exp till,$c1 $hget($sockname,rgoal),$c2,:,$c1 $bytes($calc($getxp($hget($sockname,rgoal)) - $remove($gettok($hget($sockname,result),3,32),$chr(44))),b) $chr(40),$c2,$round($calc(($remove($gettok($hget($sockname,result),3,32),$chr(44)) / $getxp($hget($sockname,rgoal))) * 100),2),$c1,%,$chr(41))),])
        $hget($sockname,sendway) $+($c1,[,$c2,Pest Control Tickets till level,$c1 $hget($sockname,rgoal),] [,$c2,Tickets (1):,$c1 $bytes($ceil($hget($sockname,tickets)),b) |,$c2 Tickets (100):,$c1 $bytes($ceil($calc($hget($sockname,tickets) * 0.9)),b),])
      }
    }
    elseif (!$regex($hget($sockname,skill),/^(Overall|Combatp?|[fp]2p|closest|furthest)$/i)) {
      hadd -m $sockname result $htmlfree($replace($bvar(&rst,$bfind(&rst,$bfind(&rst,1,$regsubex($hget($sockname,skill),/(.)/g,$+($asc(\1),$chr(32)))),<td align="right">),100).text,$chr(10),$chr(32)))
      hadd -m $sockname rgoal $iif($hget($sockname,goal),$v1,$calc($gettok($hget($sockname,result),2,32) + 1))
      if (($numtok($hget($sockname,result),32) < 3) || (<img class="miniimg"* iswm $hget($sockname,result))) $hget($sockname,sendway) $+($c1,[,$flc($hget($sockname,user)) $c2,does not feature in the highscores for,$c1 $hget($sockname,skill),])
      else {
        hadd -m $sockname goalxp $calc($getxp($hget($sockname,rgoal)) - $remove($gettok($hget($sockname,result),3,32),$chr(44)))
        $hget($sockname,sendway) $+($c1,[,$c2,$hget($sockname,skill) for,$c1 $flc($hget($sockname,user)),] [,$c2,Level:,$c1 $gettok($hget($sockname,result),2,32) |,$c2 Rank:,$c1 $gettok($hget($sockname,result),1,32) |,$c2 Exp:,$c1 $gettok($hget($sockname,result),3,32),$iif($gettok($hget($sockname,result),2,32) != 99,$+($chr(32),|,$c2 Exp to,$c1 $hget($sockname,rgoal),$c2,:,$c1 $bytes($hget($sockname,goalxp),b) $chr(40),$c2,$round($calc(($remove($gettok($hget($sockname,result),3,32),$chr(44)) / $getxp($hget($sockname,rgoal))) * 100),2),$c1,%,$chr(41))),])
        var %c 2
        while ($ini(C:\Program Files\mIRCMight\monster.ini,$hget($sockname,skill),%c)) {
          hadd -m $sockname mtl $hget($sockname,mtl) $+($c2,$flc($v1),:,$c1 $bytes($ceil($calc($hget($sockname,goalxp) / $readini(C:\Program Files\mIRCMight\monster.ini,$hget($sockname,skill),$v1))),b) |)
          inc %c
        }
        if ($gettok($hget($sockname,result),2,32) != 99) $hget($sockname,sendway) $+($c1,[,$c2,$readini(C:\Program Files\mIRCMight\monster.ini,$hget($sockname,skill),name) to,$c1 $hget($sockname,rgoal),] [,$c2,$left($hget($sockname,mtl),-2),$c1,])
      }
    }
    else {
      hadd -m $sockname overall $gettok($htmlfree($replace($bvar(&rst,$bfind(&rst,1,<a href="overall.ws?table=0&user=),300).text,$chr(10),$chr(32))),2-4,32)
      var %c 1,%k
      while ($bfind(&rst,%c,gif"></td>)) {
        inc %k
        if ($regex($gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 50)),150).text,$chr(10),$chr(32))),2,32),/^(fletch|herb|agil|thiev|slay|farm|cont|constr)/i)) {
          if (Not Ranked !isin $htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 50)),150).text,$chr(10),$chr(32)))) {
            hadd -m $sockname p2pxp $calc($hget($sockname,p2pxp) + $remove($gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32))),5,32),$chr(44)))
            hadd -m $sockname p2p $hget($sockname,p2p) $+($c2,$gettok($v2,2,32),:,$c1 $gettok($v2,4,32) |)
            hadd -m $sockname p2plv $calc($hget($sockname,p2plv) + $remove($gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32))),4,32),$chr(44)))
          }
        }
        if ($regex($gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32))),2,32),/^(att|def|str|hit|ran|pra|mag|coo|woo|fis|fir|craf|smi|min|run)/i)) {
          if (Not Ranked !isin $htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32)))) {
            hadd -m $sockname f2pxp $calc($hget($sockname,f2pxp) + $remove($gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32))),5,32),$chr(44)))
            hadd -m $sockname f2p $hget($sockname,f2p) $+($c2,$gettok($v2,2,32),:,$c1 $gettok($v2,4,32) |)
            hadd -m $sockname f2plv $calc($hget($sockname,f2plv) + $remove($gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32))),4,32),$chr(44)))
          }
        }
        if (%k isnum 1-7) {
          hadd -m $sockname cmb $hget($sockname,cmb) $iif(Not Ranked !isin $gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32))),1-4,32),$gettok($v2,4,32),$iif(%k == 4,10,1))
          hadd -m $sockname cmbp $calc($hget($sockname,cmbp) + $remove($gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32))),5,32),$chr(44)))
        }
        hadd -m $sockname allxp $calc($hget($sockname,allxp) + $remove($gettok($htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32))),5,32),$chr(44)))
        if (Not Ranked !isin $htmlfree($replace($bvar(&rst,$calc($bfind(&rst,%c,gif"></td>) + ($len($hget($sockname,user)) + 40)),150).text,$chr(10),$chr(32)))) {
          tokenize 32 $v2
          hadd -m $sockname stats $hget($sockname,stats) $+($c2,$2,:,$c1 $4 |)
          if ($4 != 99) hadd -m $sockname cf $hget($sockname,cf) $calc($getxp($calc($4 + 1)) - $remove($5,$chr(44))) $2
        }
        var %c = $bfind(&rst,%c,gif"></td>) + 10
      }
      if ($hget($sockname,skill) == Combatp) {
        $hget($sockname,sendway) $+($c1,[,$c2,Combat Percentage for,$c1 $flc($hget($sockname,user)),] [,$c2,Combat:,$c1 $bytes($hget($sockname,cmbp),b) Exp,$c1 $chr(40),$c2,$round($calc(($hget($sockname,cmbp) / $remove($iif($gettok($hget($sockname,overall),3,32),$v1,$bytes($hget($sockname,allxp),b)),$chr(44))) * 100),2),$c1,%,$chr(41) |,$c2 Non Combat:,$c1 $bytes($calc($remove($iif($gettok($hget($sockname,overall),3,32),$v1,$bytes($hget($sockname,allxp),b)),$chr(44)) - $hget($sockname,cmbp)),b) Exp,$c1 $chr(40),$c2,$calc(100 - $round($calc(($hget($sockname,cmbp) / $remove($iif($gettok($hget($sockname,overall),3,32),$v1,$bytes($hget($sockname,allxp),b)),$chr(44))) * 100),2)),$c1,%,$chr(41) |,$c2 Total:,$c1 $iif($gettok($hget($sockname,overall),3,32),$v1,$bytes($hget($sockname,allxp),b)) Exp])
      }
      elseif ($hget($sockname,skill) == Combat) {
        hadd -m $sockname skills Att Def Str Hits Ranged Pray Magic
        hadd -m $sockname combatt $cmb($hget($sockname,cmb))
        $hget($sockname,sendway) $+($c1,[,$c2,Combat for,$c1 $flc($hget($sockname,user)),] [,$c2,Combat:,$c1 $hget($sockname,combatt),] [,$left($regsubex($hget($sockname,cmb),/([0-9]+)/g,$+($c2,$gettok($hget($sockname,skills),\n,32),:,$c1 \1 |)),-2),])
        if ($floor($hget($sockname,combatt)) < 126) $hget($sockname,sendway) $+($c1,[,$c2,Levels to,$c1 $ceil($hget($sockname,combatt)) combat,] [,$iif($gettok($hget($sockname,combatt),2,32) == melee,$+($c2,Attack/Strength:,$c1 $cc1($hget($sockname,combatt)))),$iif($gettok($hget($sockname,combatt),2,32) == Ranged,$+($c2,Range:,$c1 $cc3($hget($sockname,combatt)))),$iif($gettok($hget($sockname,combatt),2,32) == magic,$+($c2,Magic:,$c1 $cc1($hget($sockname,combatt)))),$chr(32),|,$c2 Hitpoints/Defence:,$c1 $cc2($hget($sockname,combatt)) |,$c2 Prayer:,$c1 $cc4($hget($sockname,combatt)),])
      }
      elseif ($hget($sockname,skill) == overall) {
        $hget($sockname,sendway) $+($c1,[,$c2,Overall for,$c1 $flc($hget($sockname,user)),] [,$c2,Total:,$c1 $iif(!$hget($sockname,overall),Not Ranked,$+($gettok($hget($sockname,overall),2,32) |,$c2 Rank:,$c1 $gettok($hget($sockname,overall),1,32) |,$c2 Exp:,$c1 $gettok($hget($sockname,overall),3,32))),] [,$c2,Combat:,$c1 $cmb($hget($sockname,cmb)),$c1,])
        $hget($sockname,sendway) $+($c1,[,$left($hget($sockname,stats),-2),])
      }
      elseif ($hget($sockname,skill) == p2p) {
        if ($left($hget($sockname,p2p),-2)) {
          $hget($sockname,sendway) $+($c1,[,$c2,Member stats for,$c1 $flc($hget($sockname,user)),] [,$c2,Total level:,$c1 $iif(!$hget($sockname,overall),Not Ranked,$+($bytes($hget($sockname,p2plv),b),/,$bytes($gettok($hget($sockname,overall),2,32),b) $chr(40),$c2,$round($calc(($hget($sockname,p2plv) / $remove($gettok($hget($sockname,overall),2,32),$chr(44))) * 100),2),$c1,%,$chr(41) |,$c2 Exp:,$c1 $bytes($hget($sockname,p2pxp),b),/,$gettok($hget($sockname,overall),3,32) $chr(40),$c2,$round($calc(($hget($sockname,p2pxp) / $remove($gettok($hget($sockname,overall),3,32),$chr(44))) * 100),2),$c1,%,$chr(41))),])
          $hget($sockname,sendway) $+($c1,[,$left($hget($sockname,p2p),-2),])
        }
        else {
          $hget($sockname,sendway) $+($c1,[,$flc($hget($sockname,user)),$c2 doesn't have any Member skills in the,$c1 RuneScape Highscores,])
        }
      }
      elseif ($hget($sockname,skill) == f2p) {
        if ($left($hget($sockname,f2p),-2)) {
          $hget($sockname,sendway) $+($c1,[,$c2,Non Member stats for,$c1 $flc($hget($sockname,user)),] [,$c2,Total level:,$c1 $iif(!$hget($sockname,overall),Not Ranked,$+($bytes($hget($sockname,f2plv),b),/,$bytes($gettok($hget($sockname,overall),2,32),b) $chr(40),$c2,$round($calc(($hget($sockname,f2plv) / $remove($gettok($hget($sockname,overall),2,32),$chr(44))) * 100),2),$c1,%,$chr(41) |,$c2 Exp:,$c1 $bytes($hget($sockname,f2pxp),b),/,$gettok($hget($sockname,overall),3,32) $chr(40),$c2,$round($calc(($hget($sockname,f2pxp) / $remove($gettok($hget($sockname,overall),3,32),$chr(44))) * 100),2),$c1,%,$chr(41))),])
          $hget($sockname,sendway) $+($c1,[,$left($hget($sockname,f2p),-2),])
        }
        else {
          $hget($sockname,sendway) $+($c1,[,$flc($hget($sockname,user)),$c2 doesn't have any Non Member skills in the,$c1 RuneScape Highscores,])
        }
      }
      elseif ($hget($sockname,skill) == closest) {
        $hget($sockname,sendway) $+($c1,[,$c2,Closest skill for,$c1 $flc($hget($sockname,user)),] [,$c2,Skill:,$c1 $gettok($remove($sorttok($regsubex($hget($sockname,cf),/(\d+) (\S+)/g,\1 \2 .),46,n),.),2,32) |,$c2 Level:,$c1 $gettok($strip($hget($sockname,stats)),$calc($findtok($strip($hget($sockname,stats)),$gettok($remove($sorttok($regsubex($hget($sockname,cf),/(\d+) (\S+)/g,\1 \2 .),46,n),.),2,32) $+ :,1,32) + 1),32) |,$c2 Exp till $calc($gettok($strip($hget($sockname,stats)),$calc($findtok($strip($hget($sockname,stats)),$gettok($remove($sorttok($regsubex($hget($sockname,cf),/(\d+) (\S+)/g,\1 \2 .),46,n),.),2,32) $+ :,1,32) + 1),32) + 1),:,$c1 $bytes($gettok($remove($sorttok($regsubex($hget($sockname,cf),/(\d+) (\S+)/g,\1 \2 .),46,n),.),1,32),b),])
      }
      elseif ($hget($sockname,skill) == furthest) {
        $hget($sockname,sendway) $+($c1,[,$c2,Furthest skill for,$c1 $flc($hget($sockname,user)),] [,$c2,Skill:,$c1 $gettok($remove($sorttok($regsubex($hget($sockname,cf),/(\d+) (\S+)/g,\1 \2 .),46,nr),.),2,32) |,$c2 Level:,$c1 $gettok($strip($hget($sockname,stats)),$calc($findtok($strip($hget($sockname,stats)),$gettok($remove($sorttok($regsubex($hget($sockname,cf),/(\d+) (\S+)/g,\1 \2 .),46,nr),.),2,32) $+ :,1,32) + 1),32) |,$c2 Exp till $calc($gettok($strip($hget($sockname,stats)),$calc($findtok($strip($hget($sockname,stats)),$gettok($remove($sorttok($regsubex($hget($sockname,cf),/(\d+) (\S+)/g,\1 \2 .),46,nr),.),2,32) $+ :,1,32) + 1),32) + 1),:,$c1 $bytes($gettok($remove($sorttok($regsubex($hget($sockname,cf),/(\d+) (\S+)/g,\1 \2 .),46,nr),.),1,32),b),])
      }
    }
    .remove $sockname
    .hdel -sw $sockname *
    sockclose $sockname
  }
}