rendered paste bodyon $*:TEXT:/^[!](set)?(def|name|rsn)/Si:#:{
if ($2) {
if ($len($2-) <= 12) {
notice $nick 10[04Defname10]: Defname for04 $address($nick,3) 10set to:04 $2-
writeini defname.ini name $address($nick,3) $2-
}
else { notice $nick 10[04Defname10]: The runescape name can only be 041210 letters long! }
}
else { notice $nick 10[04Defname10]: You need to enter a defname to set! }
}
on $*:TEXT:/^[!@.](rs)?stats/Si:#:{
if ($len($2-) <= 12) {
var %ticks $ticks
set $+(%,prefix.,%ticks) $iif(@* iswm $1,msg $chan,notice $nick)
sockopen $+(st.,%ticks) hiscore.runescape.com 80
set $+(%,erm.,%ticks) $iif(!$2,$iif($readini(defname.ini,name,$address($nick,3)),$v1,$nick),$regsubex($replace($2-,$chr(32),_),/\b(\w)/g,$upper(\1))))
}
else { notice $nick 10[04Stats10]: The runescape name can only be 041210 letters long! }
}
on *:SOCKOPEN:st.*:{
sockmark $sockname 0
sockwrite -nt $sockname GET /index_lite.ws?player= $+ %erm. [ $+ [ $remove($sockname,st.) ] ] HTTP/1.1
sockwrite -nt $sockname Host: hiscore.runescape.com
sockwrite -nt $sockname connection: close
sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:st.*:{
if ($sockerr) { echo -a $sockerr | halt }
else {
var %read, %stats.inc = $sock($sockname).mark, %sn = $remove($sockname, st.)
sockread %read
while ($sockbr) {
if (Sorry, the page you were looking for was not found. isin %read) {
$($+(%, prefix., %sn), 2) 10[04Stats10]:04 %erm. [ $+ [ %sn ] ] 10was not found in the runescape hiscores.
return
}
elseif (*,*,* iswm %read) {
inc %stats.inc
writeini stats.ini %sn %stats.inc $replace(%read, -1, 0)
}
sockread %read
}
sockmark $sockname %stats.inc
}
}
on *:SOCKCLOSE:st.*:{
var %stats.inc $sock($sockname).mark, %sn $remove($sockname, st.)
if (%stats.inc) {
var %x 1, %output
while ($readini(stats.ini, %sn, %x)) {
%output = %output $stat(%sn, %x)
inc %x
}
$($+(%, prefix., %sn), 2) 10[04 $+ %erm. [ $+ [ %sn ] ] $+ 10]: $+ $gettok(%output, 1-19, 124)
$iif($gettok(%output, 20-25, 124), $($+(%, prefix., %sn), 2) 10[04 $+ %erm. [ $+ [ %sn ] ] $+ 10]: $+ $gettok(%output, 20-25, 124))
remini stats.ini %sn
}
unset %erm. [ $+ [ %sn ] ] %prefix. [ $+ [ %sn ] ]
}
alias stat {
if ($2 == 1) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Overall04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 2) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Att04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 3) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Def04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 4) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Str04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 5) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 HP04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 6) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Range04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 7) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Pray04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 8) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Magic04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 9) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Cooking04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 10) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Woodcutting04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 11) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Fletch04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 12) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Fishing04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 13) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Firemaking04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 14) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Crafting04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 15) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Smithing04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 16) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Mining04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 17) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Herblore04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 18) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Agility04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 19) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Thieving04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 20) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Slayer04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 21) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Farming04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 22) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Runecrafting04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 23) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Hunter04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 24) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Construction04 $gettok($readini(stats.ini,$1,$2),2,44) } }
if ($2 == 25) { if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 Summoning04 $gettok($readini(stats.ini,$1,$2),2,44) } }
}