All pastes #756278 Raw Edit

Stuff

public text v1 · immutable
#756278 ·published 2007-10-31 10:56 UTC
rendered paste body
[script]
n0=on $*:TEXT:$(/^(?>\Q $+ $me $+ \E,? ?)?([!.@])/Si):#:{
n1=  tokenize 32 $iif($me isin $1,$deltok($1-,1,32),$1-) 
n2=  if ($right($1,-1) == rank) {
n3=    if ($3) {
n4=      if ($skill($2)) {
n5=        hadd -m $+(rank.,$nick) skill $skill($2)
n6=      }
n7=      else { $iif(@ isin $1,msg $chan,notice $nick) $c1([!@]Rank SKILL 1-1000000) | halt
n8=      }
n9=      if ($3 isnum 1-1000000) {
n10=        hadd -m $+(rank.,$nick) rank $3
n11=      }
n12=      else { $iif(@ isin $1,msg $chan,notice $nick) $c1([!@]Rank SKILL 1-1000000) | halt
n13=      }
n14=    }
n15=    else { $iif(@ isin $1,msg $chan,notice $nick) $c1([!@]Rank SKILL 1-1000000) | halt
n16=    }
n17=    hadd -m $+(rank.,$nick) disp $iif($globs($chan),notice $nick,$iif(@ isin $left($1,1),msg $chan,notice $nick))
n18=    sockopen $+(rank.,$nick) hiscore.runescape.com 80
n19=  }
n20=  elseif ($regex($1,/^[!@](combatonjoin|cmbonjoin|checkcmb|checkreq|joinreq)/Si)) {
n21=    if ($nick isop $chan) {
n22=      if ($2 == on) { writeini cmbj.ini $network $chan on | notice $nick $c1(Combat check) $c2(on join is) 9ON }
n23=      if ($2 == off) { writeini cmbj.ini $network $chan off | notice $nick $c1(Combat check) $c2(on join is) 4OFF }
n24=    }
n25=  }
n26=  elseif ($rstyle($right($1,-1))) { 
n27=    unset %full
n28=    hadd -m $+(rsh.,$nick) disp $iif($globs($chan),notice $nick,$iif(@ isin $left($1,1),msg $chan,notice $nick))
n29=    hadd -m $+(rsh.,$nick) style $rstyle($right($1,-1))
n30=    $iif($hget($+(rsh.,$nick),goal),hdel $+(rsh.,$nick) goal) | $iif($hget($+(rsh.,$nick),pgoal),hdel $+(rsh.,$nick) pgoal)   
n31=    if ($hget($+(rsh.,$nick),style) == single) { hdel $+(rsh.,$nick) mons | hadd -m $+(rsh.,$nick) skill $skill($right($1,-1)) | if ($chr(35) isin $2) || (- isin $2) { hadd -m $+(rsh.,$nick) goal $right($2,2)) } | if (@ isin $3) { hadd -m $+(rsh.,$nick) mons $replace($3-,$chr(32),-,@,$null) } | elseif (@ isin $4) { hadd -m $+(rsh.,$nick) mons $replace($4-,$chr(32),-,@,$null) } | elseif (@ isin $2) { hadd -m $+(rsh.,$nick) mons $replace($4-,$chr(32),-,@,$null) } }
n32=    if ($hget($+(rsh.,$nick),style) == pest) { hadd -m $+(rsh.,$nick) pskill $skill($2) | hadd -m $+(rsh.,$nick) pgoal $iif($chr(35) isin $3,$right($3,2)) }
n33=    if ($hget($+(rsh.,$nick),style) == stats) { if (-e isin $2) { hadd -m $+(rsh.,$nick) type Exp } | elseif (-r isin $2) { hadd -m $+(rsh.,$nick) type Rank } | else { hadd -m $+(rsh.,$nick) type Level } }
n34=    if ($chr(35) isin $2) || (- isin $2) || ($skill($2)) || (@ isin $2) { tokenize 32 $deltok($1-,2,32) }
n35=    if ($chr(35) isin $2) || (@ isin $2) { tokenize 32 $deltok($1-,2-,32) }
n36=    if (@ isin $3) { tokenize 32 $deltok($1-,3-,32) }
n37=    if (@ isin $4) { tokenize 32 $deltok($1-,4-,32) }
n38=    /username $iif($2,$2-) 
n39=    if (!$hget($+(rsh.,$nick),user)) { $iif($globs($chan),notice $nick,$iif(@ isin $left($1,1),msg $chan,notice $nick)) No Username Given | halt }
n40=    sockopen $+(rsh.,$nick) hiscore.runescape.com 80
n41=  }
n42=  elseif ($right($1,-1) == compare) || ($right($1,-1) == comp) {
n43=    unset %full
n44=    if ($4) {
n45=      hadd -m $+(compare.,$nick) skill $skill($2)
n46=      hadd -m $+(compare.,$nick) user1 $3
n47=      hadd -m $+(compare.,$nick) user2 $4
n48=    }
n49=    elseif (!$4) {
n50=      $iif(@ isin $1,msg $chan,notice $nick) $c1(Its !compare SKILL USER-1 USER-2)
n51=      halt
n52=    }
n53=    hadd -m $+(compare.,$nick) disp $iif($globs($chan),notice $nick,$iif(@ isin $left($1,1),msg $chan,notice $nick))
n54=    sockopen $+(compare.,$nick) hiscore.runescape.com 80
n55=  }
n56=  elseif ($regex($1,/[!@](defname|setname|setrsn|defrsn)/Si)) {
n57=    if ($chr(36) isin $1-) { notice $nick You Cannot Use $ In Runescape... | halt }
n58=    elseif ($len($2) <= 12) { writeini rsn.ini rsn $address($nick,2) $replace($2-,$chr(32),$chr(43))
n59=      notice $nick $+($c1([),$c2($2-),$c1(])) $c1(Added and saved under host) $+($c1([),$c2($address($nick,2)),$c1(])) 
n60=    }
n61=  }
n62=}
n63=on *:sockopen:rsh.*: {  
n64=  if ($sockerr) { halt }  
n65=  sockwrite -nt $sockname GET /hiscorepersonal.ws?user1= $+ $hget($sockname,user) HTTP/1.1  
n66=  sockwrite -nt $sockname Host: hiscore.runescape.com $crlf $+ $crlf
n67=}
n68=on *:sockread:rsh.*: { if ($sockerr) { halt } | else { var %rshread | sockread %rshread 
n69=    if (*does not feature in* iswm %rshread) { $hget($sockname,disp) $c1(User Cannot Be Found) | hadd -m $sockname nf nf | halt } 
n70=    if (*<td align="left">* iswm %rshread) {
n71=      var %read2 | sockread %read2
n72=      set %full $+(%full,$chr(32),$htmlfree(%read2))
n73=      var %read | sockread %read
n74=      if (%read == </td>) set %full $remove(%full,$htmlfree(%read2))
n75=    }
n76=    if (*<td align="right">* iswm %rshread) {
n77=      set %full $+(%full,$chr(32),$htmlfree(%rshread))
n78=    }  
n79=    if (*</body>* iswm %rshread) {
n80=      if ($hget($sockname,style) == stats) {
n81=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n82=        if (attack isin %full) { set %cmb.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) }
n83=        if (strength isin %full) { set %cmb.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) }
n84=        if (defence isin %full) { set %cmb.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) }
n85=        if (prayer isin %full) { set %cmb.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) }
n86=        if (ranged isin %full) { set %cmb.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) }
n87=        if (magic isin %full) { set %cmb.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) }
n88=        if (hitpoints isin %full) { set %cmb.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) }
n89=        var %z
n90=        if ($hget($sockname,type) == Level) { set %z 3 } 
n91=        elseif ($hget($sockname,type) == Exp) { set %z 4 }
n92=        elseif ($hget($sockname,type) == Rank) { set %z 2 }
n93=        var %y
n94=        var %v
n95=        var %fuller = $remove(%full,skillranklevelxp)
n96=        var %x = 1
n97=        if ($numtok(%fuller,32) >= 44) {
n98=          while (%x <= $numtok(%full,32)) { 
n99=            if (!$statskill($gettok(%fuller,%x,32))) { 
n100=            set %y $+(%y,$chr(32),$c1($gettok(%fuller,%x,32)),:,$chr(32),$c2($gettok(%full,$calc(%x + %z),32))) }
n101=            elseif ($cmbskill($gettok(%fuller,%x,32))) { set %v $+(%v,$chr(32),$c1($gettok(%fuller,%x,32)),:,$chr(32),$c2($gettok(%full,$calc(%x + %z),32))) }
n102=          inc %x 4 }
n103=          $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Overall:) $iif(overall isin %full,$c2($gettok(%full,$calc($findtok(%full,overall,32) + 2),32)),$c2(N\A)) $c1(Rank:) $iif(overall isin %full,$c2($gettok(%full,$calc($findtok(%full,overall,32) + 1),32)),$c2(N\A)) $c1(Combat:) $c2($iif($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic),$v1,N/A)) $c1(Stats:)
n104=          $iif(%v,$hget($sockname,disp) %v)       
n105=          $hget($sockname,disp) $left(%y,-5)
n106=        } 
n107=        else {
n108=          while (%x <= $numtok(%full,32)) { 
n109=            set %y $+(%y,$chr(32),$c1($gettok(%fuller,%x,32)),:,$chr(32),$c2($gettok(%full,$calc(%x + %z),32))) 
n110=          inc %x 4 }
n111=          $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Overall:) $iif(overall isin %full,$c2($gettok(%full,$calc($findtok(%full,overall,32) + 2),32)),$c2(N\A)) $c1(Rank:) $iif(overall isin %full,$c2($gettok(%full,$calc($findtok(%full,overall,32) + 1),32)),$c2(N\A)) $c1(Combat:) $c2($iif($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic),$v1,N/A)) $c1(Stats:)
n112=          $hget($sockname,disp) $left(%y,-5)
n113=        }     
n114=        unset %full
n115=        unset %cmb.*
n116=      }
n117=      elseif ($hget($sockname,style) == combat) {
n118=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n119=        if (attack isin %full) { set %cmb.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) }
n120=        if (strength isin %full) { set %cmb.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) }
n121=        if (defence isin %full) { set %cmb.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) }
n122=        if (prayer isin %full) { set %cmb.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) }
n123=        if (ranged isin %full) { set %cmb.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) }
n124=        if (magic isin %full) { set %cmb.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) }
n125=        if (hitpoints isin %full) { set %cmb.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) }
n126=        $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Combat:) $c2($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic))
n127=        $hget($sockname,disp) $iif(%cmb.attack,$c1(Attack:) $c2(%cmb.attack)) $iif(%cmb.strength,$c1(Stength:) $c2(%cmb.strength)) $iif(%cmb.defence,$c1(Defence:) $c2(%cmb.defence)) $iif(%cmb.hitpoints,$c1(Hitpoints:) $c2(%cmb.hitpoints)) $iif(%cmb.ranged,$c1(Ranged:) $c2(%cmb.ranged)) $iif(%cmb.prayer,$c1(Prayer:) $c2(%cmb.prayer)) $iif(%cmb.magic,$c1(Magic:) $c2(%cmb.magic))
n128=        var %combat = $remove($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic),melee,mage,range,based,[,])
n129=        var %supercombat = $cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic)
n130=        var %temp = $abs($calc($int($calc(%combat +1)) - %combat)), $& 
n131=          %a.lvl = $ceil($calc(%temp / .32707)), %s.lvl = $ceil($calc(%temp / .324)), $& 
n132=          %d.lvl = $ceil($calc(%temp / .25)), $&
n133=          %m.lvl = $ceil($calc(%temp / .487)), $& 
n134=          %r.lvl = $ceil($calc(%temp / .487)), $&
n135=          %p.lvl = $ceil($calc(%temp / .124))
n136=        if (mage isin %supercombat) { var %lvl.base = $c1(Magic:) $c2($+([,%m.lvl,])) $c1(Defence:) $c2($+([,%d.lvl,])) $c1(Hp:) $c2($+([,%d.lvl,])) $c1(Prayer:) $c2($+([,%p.lvl,])) }
n137=        elseif (range isin %supercombat) { var %lvl.base = $c1(Ranged:) $c2($+([,%r.lvl,])) $c1(Defence:) $c2($+([,%d.lvl,])) $c1(Hp:) $c2($+([,%d.lvl,])) $c1(Prayer:) $c2($+([,%p.lvl,])) }
n138=        elseif (melee isin %supercombat) { var %lvl.base = $c1(Attack:) $c2($+([,%a.lvl,])) $c1(Strength:) $c2($+([,%s.lvl,])) $c1(Defence:) $c2($+([,%d.lvl,])) $c1(Hp:) $c2($+([,%d.lvl,])) $c1(Prayer:) $c2($+([,%p.lvl,])) }
n139=        $hget($sockname,disp) %lvl.base
n140=        unset %cmb.*
n141=      }
n142=      elseif ($hget($sockname,style) == single) {
n143=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n144=        if ($hget($sockname,skill) isin %full) { set %sing.lvls $gettok(%full,$findtok(%full,$hget($sockname,skill),32) - $calc($findtok(%full,$hget($sockname,skill),32) + 3),32)      
n145=          $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Skill:) $c2($hget($sockname,skill))  $iif($hget($sockname,skill) != overall,$c1(% of lvl 99:) $c2($round($calc(($remove($gettok(%sing.lvls,4,32),$chr(44)) / 13034431) * 100),2)) $+ $chr(37),)
n146=          $hget($sockname,disp) $c1(Level:) $c2($gettok(%sing.lvls,3,32)) $c1(Rank:) $c2($gettok(%sing.lvls,2,32)) $c1(Experience:) $c2($gettok(%sing.lvls,4,32)) $iif($hget($sockname,skill) != overall,$c1(Experience to $iif($hget($sockname,goal),$+($c1([),$c2($hget($sockname,goal)),$c1(])),next level:)) $c2($acalc($iif($hget($sockname,goal),$xp($v1),$xp2next($gettok(%sing.lvls,3,32))) - $gettok(%sing.lvls,4,32)))) $iif($cmbskill($hget($sockname,skill)),$c1(Pest Control Tickets To Level:) $c2($bytes($floor($calc($calc($iif($hget($sockname,goal),$xp($hget($sockname,goal)),$xp2next($gettok($remove(%sing.lvls,$chr(44)),3,32))) - $gettok($remove(%sing.lvls,$chr(44)),4,32)) / $pc($gettok($remove(%sing.lvls,$chr(44)),3,32)))),b)) $+ $+($c1($chr(40)),$c2($pc($gettok($remove(%sing.lvls,$chr(44)),3,32))),$c1($chr(41))))
n147=          if ($hget($sockname,skill) = overall) { halt }           
n148=          var %x = $xstart($hget($sockname,skill)) 
n149=          while (%x <= $calc($xstart($hget($sockname,skill)) + 9)) { 
n150=            set %item $+(%item,$chr(32),$iif($gettok($readini(info.ini,$hget($sockname,skill),n $+ %x),1,61) isin $hget($sockname,mons),$c1(~!~) $c2($gettok($readini(info.ini,$hget($sockname,skill),n $+ %x),1,61)) $c1(~!~),$c1($gettok($readini(info.ini,$hget($sockname,skill),n $+ %x),1,61))),$chr(58),$chr(32),$c2($remove($bcalc($bcalc($iif($hget($sockname,goal),$xp($v1),$xp2next($gettok(%sing.lvls,3,32))) - $gettok(%sing.lvls,4,32)) / $gettok($readini(info.ini,$hget($sockname,skill),n $+ %x),2,61)),$chr(32))))
n151=          inc %x }     
n152=          $hget($sockname,disp) $+($c1([),$c2(For Target),$c1(])) %item          
n153=          unset %item
n154=        }
n155=        else { $hget($sockname,disp) $c1(User not found for that skill!) | hdel $sockname nf | unset %full 
n156=        }
n157=      }
n158=      elseif ($hget($sockname,style) == pest) { 
n159=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n160=        if ($hget($sockname,pskill) isin %full) { set %pest.lvls $gettok(%full,$findtok(%full,$hget($sockname,pskill),32) - $calc($findtok(%full,$hget($sockname,pskill),32) + 3),32)
n161=          $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Skill:) $c2($hget($sockname,pskill)) $c1(Level:) $c2($gettok(%pest.lvls,3,32)) $c1(Pestcontrol Tickets To $iif($hget($sockname,pgoal),$c2($hget($sockname,pgoal) $+ $c1(:)),Next Level:)) $c2($bytes($floor($calc($calc($iif($hget($sockname,pgoal),$xp($hget($sockname,pgoal)),$xp2next($gettok($remove(%pest.lvls,$chr(44)),3,32))) - $gettok($remove(%pest.lvls,$chr(44)),4,32)) / $pc($gettok($remove(%pest.lvls,$chr(44)),3,32)))),b)) $+ $+($c1($chr(40)),$c2($pc($gettok($remove(%pest.lvls,$chr(44)),3,32))),$c1($chr(41)))
n162=        }
n163=        else { $hget($sockname,disp) $c1(User not found for that skill!) | hdel $sockname nf | unset %full }
n164=      }
n165=      elseif ($hget($sockname,style) == duel) {
n166=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n167=        if (attack isin %full) { set %duel.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) }
n168=        if (strength isin %full) { set %duel.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) }
n169=        if (defence isin %full) { set %duel.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) }
n170=        if (prayer isin %full) { set %duel.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) }
n171=        if (ranged isin %full) { set %duel.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) }
n172=        if (magic isin %full) { set %duel.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) }
n173=        if (hitpoints isin %full) { set %duel.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) }
n174=        $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $iif(%duel.attack,$c1(Attack:) $c2(%duel.attack)) $iif(%duel.strength,$c1(Stength:) $c2(%duel.strength)) $iif(%duel.defence,$c1(Defence:) $c2(%duel.defence)) $iif(%duel.hitpoints,$c1(Hitpoints:) $c2(%duel.hitpoints)) $iif(%duel.ranged,$c1(Ranged:) $c2(%duel.ranged)) $iif(%duel.prayer,$c1(Prayer:) $c2(%duel.prayer)) $iif(%duel.magic,$c1(Magic:) $c2(%duel.magic))  
n175=        unset %duel.*      
n176=      } 
n177=      elseif ($hget($sockname,style) == cmb) {
n178=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n179=        if (overall isin %full) { set %cmb.overall $gettok(%full,$calc($findtok(%full,overall,32) + 3),32) } | else { $hget($sockname,disp) $c1(Cannot Be Calculated NO OVERALL) | halt } 
n180=        if (attack isin %full) { set %cmb.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) }
n181=        if (strength isin %full) { set %cmb.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) }
n182=        if (defence isin %full) { set %cmb.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) }
n183=        if (prayer isin %full) { set %cmb.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) }
n184=        if (ranged isin %full) { set %cmb.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) }
n185=        if (magic isin %full) { set %cmb.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) }
n186=        if (hitpoints isin %full) { set %cmb.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) }
n187=        if (attack isin %full) { set %xp.attack $gettok(%full,$calc($findtok(%full,attack,32) + 3),32) }
n188=        if (strength isin %full) { set %xp.strength $gettok(%full,$calc($findtok(%full,strength,32) + 3),32) }
n189=        if (defence isin %full) { set %xp.defence $gettok(%full,$calc($findtok(%full,defence,32) + 3),32) }
n190=        if (prayer isin %full) { set %xp.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 3),32) }
n191=        if (ranged isin %full) { set %xp.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 3),32) }
n192=        if (magic isin %full) { set %xp.magic $gettok(%full,$calc($findtok(%full,magic,32) + 3),32) }
n193=        if (hitpoints isin %full) { set %xp.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 3),32) }
n194=        $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Combat Level:) $c2($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic))
n195=        $hget($sockname,disp) $iif(%cmb.attack,$c1(Attack:) $c2(%cmb.attack)) $iif(%cmb.strength,$c1(Stength:) $c2(%cmb.strength)) $iif(%cmb.defence,$c1(Defence:) $c2(%cmb.defence)) $iif(%cmb.hitpoints,$c1(Hitpoints:) $c2(%cmb.hitpoints)) $iif(%cmb.ranged,$c1(Ranged:) $c2(%cmb.ranged)) $iif(%cmb.prayer,$c1(Prayer:) $c2(%cmb.prayer)) $iif(%cmb.magic,$c1(Magic:) $c2(%cmb.magic))
n196=        $hget($sockname,disp) $c1(Percentage:) $c2($floor($calc(($remove(%xp.attack + %xp.strength + %xp.defence + %xp.hitpoints + %xp.ranged + %xp.magic + %xp.prayer,$chr(44))) / $remove(%cmb.overall,$chr(44)) * 100))) $+ % $c1(Out Of:) $c2(%cmb.overall)
n197=        unset %cmb.* | unset %xp.*    
n198=      } 
n199=      elseif ($hget($sockname,style) == closest) {
n200=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n201=        var %yx = 2
n202=        var %xy
n203=        while (%yx <= $len(%full)) {
n204=          set %xy $+(%xy,$chr(32),$gettok(%full,%yx,32),$chr(32),$xp2next($gettok(%full,$calc(%yx + 2),32),$gettok(%full,$calc(%yx + 3),32)))
n205=        inc %yx 4 }
n206=        var %u = 1
n207=        var %t 
n208=        var %i = $islowest($remove(%xy,$+($chr(32),0),$gettok(%xy,$findtok(%xy,overall,32),32),$gettok(%xy,$calc($findtok(%xy,overall,32) + 1),32),a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z))
n209=        $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Closest Is:) $c2($gettok(%xy,$calc($findtok(%xy,%i,32) - 1),32)) $c1(With:) $c2($bytes(%i,b)) $c1(Xp To Level:) $c2($calc($gettok(%full,$calc($findtok(%full,$gettok(%xy,$calc($findtok(%xy,%i,32) - 1),32),32) + 2),32) + 1))
n210=        unset %full
n211=      }
n212=      elseif ($hget($sockname,style) == furthest) {
n213=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n214=        var %yx = 2
n215=        var %xy
n216=        while (%yx <= $len(%full)) {
n217=          set %xy $+(%xy,$chr(32),$gettok(%full,%yx,32),$chr(32),$xp2next($gettok(%full,$calc(%yx + 2),32),$gettok(%full,$calc(%yx + 3),32)))
n218=        inc %yx 4 }
n219=        var %u = 1
n220=        var %t 
n221=        var %i = $isfurthest($remove(%xy,$+($chr(32),0),$gettok(%xy,$findtok(%xy,overall,32),32),$gettok(%xy,$calc($findtok(%xy,overall,32) + 1),32),a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z))
n222=        $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Furthest Is:) $c2($gettok(%xy,$calc($findtok(%xy,%i,32) - 1),32)) $c1(With:) $c2($bytes(%i,b)) $c1(Xp To Level:) $c2($calc($gettok(%full,$calc($findtok(%full,$gettok(%xy,$calc($findtok(%xy,%i,32) - 1),32),32) + 2),32) + 1))
n223=        unset %full
n224=      }
n225=      elseif ($hget($sockname,style) == p2p) {
n226=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n227=        if (herblore isin %full) { set %p2p.herblore $gettok(%full,$calc($findtok(%full,herblore,32) + 2),32) }
n228=        if (construction isin %full) { set %p2p.construction $gettok(%full,$calc($findtok(%full,construction,32) + 2),32) }
n229=        if (fletching isin %full) { set %p2p.fletching $gettok(%full,$calc($findtok(%full,fletching,32) + 2),32) }
n230=        if (agility isin %full) { set %p2p.agility $gettok(%full,$calc($findtok(%full,agility,32) + 2),32) }
n231=        if (thieving isin %full) { set %p2p.thieving $gettok(%full,$calc($findtok(%full,thieving,32) + 2),32) }
n232=        if (slayer isin %full) { set %p2p.slayer $gettok(%full,$calc($findtok(%full,slayer,32) + 2),32) }
n233=        if (farming isin %full) { set %p2p.farming $gettok(%full,$calc($findtok(%full,farming,32) + 2),32) }
n234=        if (hunter isin %full) { set %p2p.hunter $gettok(%full,$calc($findtok(%full,hunter,32) + 2),32) }
n235=        if (overall isin %full) { set %p2p.overall $gettok(%full,$calc($findtok(%full,overall,32) + 2),32) }
n236=        $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Pay To Play Stats:)
n237=        $hget($sockname,disp) $iif(%p2p.overall,$c1(Overall:) $c2(%p2p.overall)) $iif(%p2p.fletching,$c1(Fletching:) $c2(%p2p.fletching)) $iif(%p2p.Herblore,$c1(Herblore:) $c2(%p2p.herblore)) $iif(%p2p.agility,$c1(Agility:) $c2(%p2p.agility)) $iif(%p2p.Thieving,$c1(Thieving:) $c2(%p2p.thieving)) $iif(%p2p.Slayer,$c1(Slayer:) $c2(%p2p.slayer)) $iif(%p2p.Farming,$c1(Farming:) $c2(%p2p.farming)) $iif(%p2p.Hunter,$c1(Hunter:) $c2(%p2p.hunter)) $iif(%p2p.construction,$c1(Construction:) $c2(%p2p.construction))
n238=        unset %p2p.*      
n239=      }
n240=      elseif ($hget($sockname,style) == f2p) {
n241=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n242=        if (cooking isin %full) { set %f2p.cooking $gettok(%full,$calc($findtok(%full,cooking,32) + 2),32) }
n243=        if (woodcutting isin %full) { set %f2p.woodcutting $gettok(%full,$calc($findtok(%full,woodcutting,32) + 2),32) }
n244=        if (fishing isin %full) { set %f2p.fishing $gettok(%full,$calc($findtok(%full,fishing,32) + 2),32) }
n245=        if (firemaking isin %full) { set %f2p.firemaking $gettok(%full,$calc($findtok(%full,firemaking,32) + 2),32) }
n246=        if (crafting isin %full) { set %f2p.crafting $gettok(%full,$calc($findtok(%full,crafting,32) + 2),32) }
n247=        if (smithing isin %full) { set %f2p.smithing $gettok(%full,$calc($findtok(%full,smithing,32) + 2),32) }
n248=        if (mining isin %full) { set %f2p.mining $gettok(%full,$calc($findtok(%full,mining,32) + 2),32) }
n249=        if (runecraft isin %full) { set %f2p.runecraft $gettok(%full,$calc($findtok(%full,runecraft,32) + 2),32) }
n250=        if (overall isin %full) { set %f2p.overall $gettok(%full,$calc($findtok(%full,overall,32) + 2),32) }
n251=        if (attack isin %full) { set %f2p.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) }
n252=        if (strength isin %full) { set %f2p.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) }
n253=        if (defence isin %full) { set %f2p.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) }
n254=        if (prayer isin %full) { set %f2p.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) }
n255=        if (ranged isin %full) { set %f2p.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) }
n256=        if (magic isin %full) { set %f2p.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) }
n257=        if (hitpoints isin %full) { set %f2p.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) }
n258=        $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Free To Play Stats:)
n259=        $hget($sockname,disp) $iif(%f2p.overall,$c1(Overall:) $c2(%f2p.overall)) $iif(%f2p.attack,$c1(Attack:) $c2(%f2p.attack)) $iif(%f2p.strength,$c1(Strength:) $c2(%f2p.strength)) $iif(%f2p.defence,$c1(Defence:) $c2(%f2p.defence)) $iif(%f2p.hitpoints,$c1(Hitpoints:) $c2(%f2p.hitpoints)) $iif(%f2p.Ranged,$c1(Ranged:) $c2(%f2p.ranged)) $iif(%f2p.prayer,$c1(Prayer:) $c2(%f2p.prayer)) $iif(%f2p.Magic,$c1(Magic:) $c2(%f2p.magic)) $iif(%f2p.cooking,$c1(Cooking:) $c2(%f2p.cooking)) $iif(%f2p.woodcutting,$c1(Woodcutting:) $c2(%f2p.woodcutting)) $iif(%f2p.Fishing,$c1(Fishing:) $c2(%f2p.fishing)) $iif(%f2p.firemaking,$c1(Firemaking:) $c2(%f2p.firemaking)) $iif(%f2p.crafting,$c1(Crafting:) $c2(%f2p.crafting)) $iif(%f2p.Smithing,$c1(Smithing:) $c2(%f2p.smithing)) $iif(%f2p.mining,$c1(Mining:) $c2(%f2p.mining)) $iif(%f2p.Runecraft,$c1(Runecraft:) $c2(%f2p.Runecraft))
n260=        unset %f2p.*      
n261=      }
n262=      elseif ($hget($sockname,style) == join) {
n263=        if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt }
n264=        if (overall isin %full) { set %cmb.overall $gettok(%full,$calc($findtok(%full,overall,32) + 3),32) } | else { $hget($sockname,disp) $c1(Cannot Be Calculated NO OVERALL) | halt } 
n265=        if (attack isin %full) { set %cmb.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) }
n266=        if (strength isin %full) { set %cmb.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) }
n267=        if (defence isin %full) { set %cmb.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) }
n268=        if (prayer isin %full) { set %cmb.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) }
n269=        if (ranged isin %full) { set %cmb.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) }
n270=        if (magic isin %full) { set %cmb.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) }
n271=        if (hitpoints isin %full) { set %cmb.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) }
n272=        if (attack isin %full) { set %xp.attack $gettok(%full,$calc($findtok(%full,attack,32) + 3),32) }
n273=        if (strength isin %full) { set %xp.strength $gettok(%full,$calc($findtok(%full,strength,32) + 3),32) }
n274=        if (defence isin %full) { set %xp.defence $gettok(%full,$calc($findtok(%full,defence,32) + 3),32) }
n275=        if (prayer isin %full) { set %xp.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 3),32) }
n276=        if (ranged isin %full) { set %xp.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 3),32) }
n277=        if (magic isin %full) { set %xp.magic $gettok(%full,$calc($findtok(%full,magic,32) + 3),32) }
n278=        if (hitpoints isin %full) { set %xp.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 3),32) }
n279=        $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Combat Level:) $c2($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic)) $c1(Attack + Strength:)  $c2($calc(%cmb.attack + %cmb.strength)) $iif(%cmb.attack,$c1(Attack:) $c2(%cmb.attack)) $iif(%cmb.strength,$c1(Stength:) $c2(%cmb.strength)) $iif(%cmb.defence,$c1(Defence:) $c2(%cmb.defence)) $iif(%cmb.hitpoints,$c1(Hitpoints:) $c2(%cmb.hitpoints)) $iif(%cmb.ranged,$c1(Ranged:) $c2(%cmb.ranged)) $iif(%cmb.prayer,$c1(Prayer:) $c2(%cmb.prayer)) $iif(%cmb.magic,$c1(Magic:) $c2(%cmb.magic))
n280=        unset %cmb.*     
n281=      }
n282=    }
n283=  }
n284=}
n285=alias pc {
n286=  var %x $calc($1 ^ 2)
n287=  var %y $floor($calc(%x / 6))
n288=  return %y 
n289=}
n290=alias CmbLevel { 
n291=  set %defence $calc($3 * 100) 
n292=  set %hitpoints $calc($4 * 100) 
n293=  set %prayer $5 
n294=  if ($and(%prayer,1) == 1) { 
n295=    set %prayer $calc((%prayer -1) * 50) 
n296=  } 
n297=  Else if ($and(%prayer,1) == 0) { 
n298=    set %prayer $calc(%prayer * 50) 
n299=  } 
n300=  set %basecombat $calc((%defence + %hitpoints + %prayer) / 400) 
n301=  set %attack $calc($1 * 130) 
n302=  set %strength $calc($2 * 130) 
n303=  set %ranged $6 
n304=  set %mage $7 
n305=  if ($and(%ranged,1) == 1) { 
n306=    set %ranged $calc((%ranged - 1 + %ranged * 2) * 65) 
n307=  } 
n308=  Else if ($and(%ranged,1) == 0) { 
n309=    set %ranged $calc(%ranged * 195) 
n310=  } 
n311=  if ($and(%mage,1) == 1) { 
n312=    set %mage $calc((%mage - 1 + %mage * 2) * 65) 
n313=  } 
n314=  Else if ($and(%mage,1) == 0) { 
n315=    set %mage $calc(%mage * 195) 
n316=  } 
n317=  set %meleecb $calc((%attack + %strength) / 400) 
n318=  set %rangedcb $calc(%ranged / 400) 
n319=  set %magecb $calc(%mage / 400) 
n320=
n321=  if ((%meleecb > %rangedcb) && (%meleecb > %magecb)) { 
n322=    return $calc(%meleecb + %basecombat) [Melee Based] 
n323=  } 
n324=  if ((%rangedcb > %meleecb) && (%rangedcb > %magecb)) { 
n325=    Return $calc(%rangedcb + %basecombat) [Range Based] 
n326=  } 
n327=  if ((%magecb > %rangedcb) && (%magecb > %meleecb)) { 
n328=    Return $calc(%magecb + %basecombat) [Mage Based] 
n329=  } 
n330=  unset %defence 
n331=  unset %hitpoints 
n332=  unset %prayer 
n333=  unset %basecombat 
n334=  unset %attack 
n335=  unset %strength 
n336=  unset %ranged 
n337=  unset %mage 
n338=  unset %meleecb 
n339=  unset %rangedcb 
n340=  unset %magecb 
n341=} 
n342=alias Skill {
n343=  If ($regex($1,/^(st|(skill)?total|overall)$/Si)) return Overall
n344=  Elseif ($regex($1,/^at(t|k|tack)$/Si)) return Attack
n345=  Elseif ($regex($1,/^st(r|re|rength)$/Si)) return Strength
n346=  Elseif ($regex($1,/^de(f|fence)$/Si)) return Defence
n347=  Elseif ($regex($1,/^h(its|p|itpoints)$/Si)) return Hitpoints
n348=  Elseif ($regex($1,/^pra(y|yer)$/Si)) return Prayer
n349=  Elseif ($regex($1,/^mag(e|ic)$/Si)) return Magic
n350=  Elseif ($regex($1,/^rang(e|ed)$/Si)) return Ranged
n351=  Elseif ($regex($1,/^agi(l|lity)$/Si)) return Agility
n352=  Elseif ($regex($1,/^h(erb|erblore)$/Si)) return Herblore
n353=  Elseif ($regex($1,/^thie(f|ve|ving)$/Si)) return Thieving
n354=  Elseif ($regex($1,/^r(c|unecraft|unecrafting)$/Si)) return Runecraft
n355=  Elseif ($regex($1,/^craf(t|ting)$/Si)) return Crafting
n356=  Elseif ($regex($1,/^smit(h|hing)$/Si)) return Smithing
n357=  Elseif ($regex($1,/^min(e|ing)$/Si)) return Mining
n358=  Elseif ($regex($1,/^fis(h|hing)$/Si)) return Fishing
n359=  Elseif ($regex($1,/^coo(k|king)$/Si)) return Cooking
n360=  Elseif ($regex($1,/^f(m|ire|iremaking)$/Si)) return Firemaking
n361=  Elseif ($regex($1,/^w(c|oodcut|oodcutting)$/Si)) return Woodcutting
n362=  Elseif ($regex($1,/^sla(y|yer)$/Si)) return Slayer
n363=  Elseif ($regex($1,/^far(m|ming)$/Si)) return Farming
n364=  Elseif ($regex($1,/^fletc(h|hing)$/Si)) return Fletching
n365=  Elseif ($regex($1,/^hun(ter|t|ting)$/Si)) return Hunter
n366=  Elseif ($regex($1,/^(cons|construct|construction|poh)$/Si)) return Construction
n367=}
n368=alias xp2Next { var %xp = $remove($2,$chr(44)), %nextxp = $xp($calc($1 + 1)) | return $calc(%nextxp - %xp) }
n369=alias xp { var %x = 1, %level = $calc($1 - 1), %xp = 0 | while (%x <= %level) { var %TempXp = $calc((%x + 300 * 2^(%x / 7)) /4) | inc %xp %TempXp | inc %x } | return $int(%xp) }
n370=alias cmbskill {
n371=  if ($regex($1,/^at(t|k|tack)$/Si)) return Attack
n372=  Elseif ($regex($1,/^st(r|re|rength)$/Si)) return Strength
n373=  Elseif ($regex($1,/^de(f|fence)$/Si)) return Defence
n374=  Elseif ($regex($1,/^h(its|p|itpoints)$/Si)) return Hitpoints
n375=  Elseif ($regex($1,/^pra(y|yer)$/Si)) return Prayer
n376=  Elseif ($regex($1,/^mag(e|ic)$/Si)) return Magic
n377=  Elseif ($regex($1,/^rang(e|ed)$/Si)) return Range
n378=}
n379=alias rstyle {
n380=  if ($1 == pest) { return pest }
n381=  elseif ($1 == pc) { return pest }
n382=  elseif ($1 == cmb) { return combat }
n383=  elseif ($1 == combat) { return combat }
n384=  elseif ($1 == stats) { return stats }
n385=  elseif ($1 == rsstats) { return stats }
n386=  elseif ($1 == duel) { return duel }
n387=  elseif ($skill($1)) { return single }
n388=  elseif ($1 == combat%) { return cmb }
n389=  elseif ($1 == cmb%) { return cmb }
n390=  elseif ($1 == closest) { return $v2 }
n391=  elseif ($1 == next) { return closest }
n392=  elseif ($1 == furthest) { return furthest }
n393=  elseif ($1 == p2p) { return p2p }
n394=  elseif ($1 == f2p) { return f2p }
n395=  elseif ($1 == join) { return join }
n396=}
n397=alias bcalc { 
n398=  tokenize 32 $remove($1-,$chr(44),$chr(32)) 
n399=  var %matches $regex($1-,/L(\d\d?)/gi), %i = 1, %calculate = $1- 
n400=  while (%i <= %matches) { 
n401=    var %calculate = $replace(%calculate,L $+ $regml(%i),$LevelsAndXp($regml(%i))) 
n402=    inc %i 
n403=  } 
n404=  if (k isin %calculate) { 
n405=    var %x = 1, %total = $pos(%calculate,k,0) 
n406=    while (%x <= %total) { 
n407=      var %kpos = $pos(%calculate,k,%x), %kstartpos = $calc(%kpos - 1), %klen = 1 
n408=      while ($mid(%calculate,%kstartpos,1) isin 1234567890.) && (%kstartpos > 0) { dec %kstartpos | inc %klen } 
n409=      var %calculate = $iif(%kstartpos >= 0,$left(%calculate,%kstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%kstartpos == 0,0,%kstartpos +1)),%klen) $+ $chr(41) $+ $right(%calculate,- $+ %kpos) 
n410=      inc %x 
n411=    } 
n412=  } 
n413=  if (m isin %calculate) { 
n414=    var %x = 1, %total = $pos(%calculate,m,0) 
n415=    while (%x <= %total) { 
n416=      var %mpos = $pos(%calculate,m,%x), %mstartpos = $calc(%mpos - 1), %mlen = 1 
n417=      while ($mid(%calculate,%mstartpos,1) isin 1234567890.) && (%mstartpos > 0) { dec %mstartpos | inc %mlen } 
n418=      var %calculate = $iif(%mstartpos >= 0,$left(%calculate,%mstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%mstartpos == 0,0,%mstartpos +1)),%mlen) $+ $chr(41) $+ $right(%calculate,- $+ %mpos) 
n419=      inc %x 
n420=    } 
n421=  } 
n422=  var %calculate $replace($remove(%calculate,$chr(44),$chr(61)),x,*,k,*1000,m,*1000000) 
n423=  var %answer = $bytes($floor($calc(%calculate)),db)) 
n424=  return %answer 
n425=} 
n426=alias xstart {
n427=  if ($1 == attack) { return 1 }
n428=  elseif ($1 == strength) { return 25 }
n429=  elseif ($1 == defence) { return 13 }
n430=  elseif ($1 == hitpoints) { return 37 }
n431=  elseif ($1 == ranged) { return 49 }
n432=  elseif ($1 == magic) { return 97 }
n433=  elseif ($1 == prayer) { return 61 }
n434=  elseif ($1 == cooking) { return 73 }
n435=  elseif ($1 == fishing) { return 119 }
n436=  elseif ($1 == firemaking) { return 109 }
n437=  elseif ($1 == woodcutting) { return 85 }
n438=  elseif ($1 == construction) { return 271 }
n439=  elseif ($1 == slayer) { return 220 }
n440=  elseif ($1 == thieving) { return 207 }
n441=  elseif ($1 == agility) { return 193 }
n442=  elseif ($1 == herblore) { return 180 }
n443=  elseif ($1 == crafting) { return 143 }
n444=  elseif ($1 == runecraft) { return 232 }
n445=  elseif ($1 == farming) { return 247 }
n446=  elseif ($1 == hunter) { return 259 }
n447=  elseif ($1 == mining) { return 168 }
n448=  elseif ($1 == smithing) { return 155 }
n449=  elseif ($1 == fletching) { return 131 }
n450=}
n451=alias ranknum { 
n452=  if ($1 == attack) { return 1 }
n453=  elseif ($1 == overall) { return 0 }
n454=  elseif ($1 == strength) { return 3 }
n455=  elseif ($1 == defence) { return 2 }
n456=  elseif ($1 == hitpoints) { return 4 }
n457=  elseif ($1 == ranged) { return 5 }
n458=  elseif ($1 == magic) { return 7 }
n459=  elseif ($1 == prayer) { return 6 }
n460=  elseif ($1 == cooking) { return 8 }
n461=  elseif ($1 == fishing) { return 11 }
n462=  elseif ($1 == firemaking) { return 12 }
n463=  elseif ($1 == woodcutting) { return 9 }
n464=  elseif ($1 == construction) { return 23 }
n465=  elseif ($1 == slayer) { return 19 }
n466=  elseif ($1 == thieving) { return 18 }
n467=  elseif ($1 == agility) { return 17 }
n468=  elseif ($1 == herblore) { return 16 }
n469=  elseif ($1 == crafting) { return 13 }
n470=  elseif ($1 == runecraft) { return 21 }
n471=  elseif ($1 == farming) { return 20 }
n472=  elseif ($1 == hunter) { return 22 }
n473=  elseif ($1 == mining) { return 15 }
n474=  elseif ($1 == smithing) { return 14 }
n475=  elseif ($1 == fletching) { return 10 }
n476=}
n477=alias islowest {
n478=  var %y $sorttok($remove($1-,$chr(44)),32,nr)
n479=  return $gettok(%y,$numtok(%y,32),32)
n480=}
n481=alias isfurthest {
n482=  var %y $sorttok($remove($1-,$chr(44)),32,nr)
n483=  return $gettok(%y,1,32)
n484=}
n485=alias statskill {
n486=  if ($regex($1,/^ov(erall)$/Si)) return Overall
n487=  Elseif ($regex($1,/^at(t|k|tack)$/Si)) return Attack
n488=  Elseif ($regex($1,/^st(r|re|rength)$/Si)) return Strength
n489=  Elseif ($regex($1,/^de(f|fence)$/Si)) return Defence
n490=  Elseif ($regex($1,/^h(its|p|itpoints)$/Si)) return Hitpoints
n491=  Elseif ($regex($1,/^pra(y|yer)$/Si)) return Prayer
n492=  Elseif ($regex($1,/^mag(e|ic)$/Si)) return Magic
n493=  Elseif ($regex($1,/^rang(e|ed)$/Si)) return Ranged
n494=}
n495=alias htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,&nbsp,&amp;) | return %x }  
n496=on *:sockopen:compare.*: {  
n497=  if ($sockerr) { halt }  
n498=  sockwrite -nt $sockname GET /compare.ws?user1= $+ $hget($sockname,user1) $+ &user2= $+ $hget($sockname,user2) HTTP/1.1  
n499=  sockwrite -nt $sockname Host: hiscore.runescape.com $crlf $+ $crlf
n500=}
n501=on *:sockread:compare.*: { if ($sockerr) { halt } | else { var %compread | sockread %compread  
n502=    if (*does not feature in* iswm %compread) {  if ($hget($sockname,nodisp) == no) { halt } | $hget($sockname,disp) $c1(One Or More Users Cannot Be Found) | hadd -m $sockname nodisp no }
n503=    if (*<td align="left">* iswm %compread) {
n504=      var %read2 | sockread %read2
n505=      .set %full $+(%full,$chr(32),$htmlfree(%read2))
n506=      var %xread | sockread %xread | var %yread | sockread %yread
n507=      if (*not ranked* iswm %yread) { .set %full $remove(%full,$htmlfree(%read2))
n508=      }
n509=    }
n510=    if (*<td align="right">* iswm $remove(%compread,<td align="center">)) {
n511=      .set %full $+(%full,$chr(32),$htmlfree(%compread))
n512=    } 
n513=    if (*</body>* iswm %compread) {
n514=      if ($hget($sockname,nodisp) == no) { hdel $sockname nodisp | halt }
n515=      if ($hget($sockname,skill) isin %full) {
n516=        $hget($sockname,disp) $c1(Name:) $c2($hget($sockname,user1)) $c1(Is Level:) $c2($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 1),32)) $c1(With:) $c2($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 2),32)) $c1(Xp) $chr(124) $c1(Name:) $c2($hget($sockname,user2)) $c1(Is Level:) $c2($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 4),32)) $c1(With:) $c2($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 5),32)) $c1(Xp)
n517=        $hget($sockname,disp) $c2($iif($remove($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 2),32),$chr(44)) < $remove($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 5),32),$chr(44)),$hget($sockname,user2),$hget($sockname,user1))) $c1(Wins $+ $chr(44) By) $remove($c2($acalc($remove($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 2),32),$chr(44)) - $remove($gettok(%full,$acalc($findtok(%full,$hget($sockname,skill),32) + 5),32),$chr(44)))),$chr(45)) $c1(Xp $+ $chr(44) And By) $remove($c2($acalc($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 4),32) - $gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 1),32))),$chr(45)) $c1(Levels)            
n518=        unset %full
n519=        unset %fullx
n520=      }
n521=    }
n522=  }
n523=} 
n524=on *:sockopen:rank.*: {  
n525=  if ($sockerr) { halt }  
n526=  sockwrite -nt $sockname GET /overall.ws?table= $+ $ranknum($hget($sockname,skill)) $+ &rank= $+ $hget($sockname,rank) HTTP/1.1  
n527=  sockwrite -nt $sockname Host: hiscore.runescape.com $crlf $+ $crlf
n528=}
n529=on *:sockread:rank.*: { if ($sockerr) { halt } | else { var %rankread | sockread %rankread  
n530=    if (*<span style="color:#AA0022;">* iswm %rankread) {
n531=      set %rankend $+(%rankend,$chr(32),$replace($htmlfree(%rankread),$chr(32),$chr(45)))
n532=    }
n533=    if (*<font color="#AA0022">* iswm %rankread) { 
n534=      set %rankxp $htmlfree(%rankread)
n535=    }
n536=    if (*</body>* iswm %rankread) {
n537=      $hget($sockname,disp) $c1(Rank:) $c2($hget($sockname,rank)) $c1(In The Skill Of:) $c2($hget($sockname,skill)) $c1(Is:) $c2($replace($gettok(%rankend,2,32),$chr(45),$chr(32))) $c1(At Level:) $c2($gettok(%rankend,3,32)) $c1(With:) $c2(%rankxp) $c1(Xp)
n538=      unset %rankend    
n539=      unset %rankxp
n540=    }
n541=  } 
n542=}
n543=alias Acalc { 
n544=  tokenize 32 $remove($1-,$chr(44),$chr(32)) 
n545=  var %matches $regex($1-,/L(\d\d?)/gi), %i = 1, %calculate = $1- 
n546=  while (%i <= %matches) { 
n547=    var %calculate = $replace(%calculate,L $+ $regml(%i),$LevelsAndXp($regml(%i))) 
n548=    inc %i 
n549=  } 
n550=  if (k isin %calculate) { 
n551=    var %x = 1, %total = $pos(%calculate,k,0) 
n552=    while (%x <= %total) { 
n553=      var %kpos = $pos(%calculate,k,%x), %kstartpos = $calc(%kpos - 1), %klen = 1 
n554=      while ($mid(%calculate,%kstartpos,1) isin 1234567890.) && (%kstartpos > 0) { dec %kstartpos | inc %klen } 
n555=      var %calculate = $iif(%kstartpos >= 0,$left(%calculate,%kstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%kstartpos == 0,0,%kstartpos +1)),%klen) $+ $chr(41) $+ $right(%calculate,- $+ %kpos) 
n556=      inc %x 
n557=    } 
n558=  } 
n559=  if (m isin %calculate) { 
n560=    var %x = 1, %total = $pos(%calculate,m,0) 
n561=    while (%x <= %total) { 
n562=      var %mpos = $pos(%calculate,m,%x), %mstartpos = $calc(%mpos - 1), %mlen = 1 
n563=      while ($mid(%calculate,%mstartpos,1) isin 1234567890.) && (%mstartpos > 0) { dec %mstartpos | inc %mlen } 
n564=      var %calculate = $iif(%mstartpos >= 0,$left(%calculate,%mstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%mstartpos == 0,0,%mstartpos +1)),%mlen) $+ $chr(41) $+ $right(%calculate,- $+ %mpos) 
n565=      inc %x 
n566=    } 
n567=  } 
n568=  var %calculate $replace($remove(%calculate,$chr(44),$chr(61)),x,*,k,*1000,m,*1000000) 
n569=  var %answer = $bytes($calc(%calculate),db) 
n570=  return %answer 
n571=}
n572=on *:JOIN:#: { 
n573=  if ($cmbj($chan)) {
n574=    unset %full
n575=    hadd -m $+(rsh.,$nick) user $iif($readini(rsn.ini,rsn,$address($nick,2)),$v1,$nick)
n576=    hadd -m $+(rsh.,$nick) disp msg $chan
n577=    hadd -m $+(rsh.,$nick) style join
n578=    sockopen $+(rsh.,$nick) hiscore.runescape.com 80
n579=  }
n580=}
n581=alias cmbj { if ($readini(cmbj.ini,$network,$1) == on) { return true } | else return $false }
n582=alias username { 
n583=  if ($chr(38) isin $1) {
n584=    hadd -m $+(rsh.,$nick) user $readini(rsn.ini,rsn,$address($right($1,-1),2))
n585=  }
n586=  elseif (!$1) { 
n587=    hadd -m $+(rsh.,$nick) user $iif($readini(rsn.ini,rsn,$address($nick,2)),$v1,$replace($nick,$chr(45),$chr(43)))
n588=  }
n589=  elseif ($1) {
n590=    hadd -m $+(rsh.,$nick) user $replace($1-,$chr(32),$chr(43))
n591=  }
n592=}