; ; alias dostat { hadd -m $+(stats,.,1) nick $replace($1-,$chr(32),+) hadd -m $+(stats,.,1) cskill Overall sockopen stats.1 hiscore.runescape.com 80 } on *:sockopen:stats.*: { if ($sockerr) { halt } sockwrite -nt $sockname GET /hiscorepersonal.ws?user1= $+ $hget($sockname,nick) HTTP/1.1 sockwrite -nt $sockname Host: hiscore.runescape.com $crlf $+ $crlf } on *:sockread:stats.*: { var %r | sockread %r if (* iswm %r) { if ( iswm %r) { hdel $sockname cskill | hadd $sockname cskill $regsubex(%r,/((?:.+)src="(?:http://www.runescape.com/img/hiscores/skill_icon_(.*)1\.gif|http://www.runescape.com/img/hiscores/(.*))"(?:.+))/Si,\2) } else { var %line = $hget($sockname,$hget($sockname,cskill)) $regsubex(%r,/^(([0-9,]+))$/Si,\2) hdel $sockname $hget($sockname,cskill) hadd $sockname $hget($sockname,cskill) %line } } } on *:SOCKCLOSE:stats.*:{ var %a = 0 while (%a < 23) var %a = %a + 1, %skill = $skill(%a), %line = %line $iif($hget($sockname,%skill),%skill $+ : $gettok($v1,2,32)) echo -a Stats for: $hget($sockname,nick) Overall: $gettok($hget($sockname,overall),2,32) echo -a %line hfree $sockname } alias -l skill { if (($1 == 0) || ($regex($1,/^Over(?:all)?$/Si))) return Overall if (($1 == 1) || ($regex($1,/^At(?:ta)?c?k$/Si))) return Attack if (($1 == 2) || ($regex($1,/^Def(?:en[sc]e)$/Si))) return Defence if (($1 == 3) || ($regex($1,/^Str(?:ength)?$/Si))) return Strength if (($1 == 4) || ($regex($1,/^H(?:its?|p(?:oints)?)$/Si))) return Hitpoints if (($1 == 5) || ($regex($1,/^Ranged?$/Si))) return Ranged if (($1 == 6) || ($regex($1,/^Pray(?:er)?$/Si))) return Prayer if (($1 == 7) || ($regex($1,/^Mag(?:e|ic)$/Si))) return Magic if (($1 == 8) || ($regex($1,/^Cook(?:ing?)?$/Si))) return Cooking if (($1 == 9) || ($regex($1,/^W(?:ood)?c(?:ut)?(?:ing?)?$/Si))) return Woodcutting if (($1 == 10) || ($regex($1,/^Fletch(?:ing)?$/Si))) return Fletching if (($1 == 11) || ($regex($1,/^Fish(?:ing)?$/Si))) return Fishing if (($1 == 12) || ($regex($1,/^F(?:(?:ire)?m(?:ak(?:e|ing))?)$/Si))) return Firemaking if (($1 == 13) || ($regex($1,/^Craft(?:ing?)?$/Si))) return Crafting if (($1 == 14) || ($regex($1,/^Smith(?:ing?)?$/Si))) return Smithing if (($1 == 15) || ($regex($1,/^Min(?:e|ing?)$/Si))) return Mining if (($1 == 16) || ($regex($1,/^Herb(?:y|i?(?:lor)?e)?$/Si))) return Herblore if (($1 == 17) || ($1 == Agility)) return Agility if (($1 == 18) || ($regex($1,/^Thie[fv](?:e|ing)?$/Si))) return Thieving if (($1 == 19) || ($regex($1,/^Slay(?:er)?$/Si))) return Slayer if (($1 == 20) || ($regex($1,/^Farm(?:ing)?$/Si))) return Farming if (($1 == 21) || ($regex($1,/^R(?:une)?C(?:raft(?:ing)?)?$/Si))) return Runecraft if (($1 == 22) || ($regex($1,/^Hunt(?:er|ing)?$/Si))) return Hunter if (($1 == 23) || ($regex($1,/^Con(?:struct(?:ion)?)?$/Si))) return Construction }