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, ,&) | 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=}