on $*:TEXT:/^[@!.](def|set)(name|rsn) */Si:#: { var %Saystyle.s = $iif($left($1,1) == @,.msg $chan,.notice $nick) if ($2) { writeini rsn.ini $address($nick,3) rsn $capwords($replace($2-,$chr(32),_,-,_)) %saystyle.s Your default RuneScape name is now $capwords($replace($2-,$chr(32),_,-,_)) $+ . This RSN is associated with the address $address($nick,3) $+ . } if (!$2) { writeini rsn.ini $address($nick,3) rsn $capwords($nick) %saystyle.s Your default RuneScape name is now $capwords($nick) $+ . This RSN is associated with the address $address($nick,3) $+ . } } on $*:TEXT:/^[@!.](name|rsn) */Si:#: { var %Saystyle.s = $iif($left($1,1) == @,.msg $chan,.notice $nick) if ($2 && $rsn($2)) { %saystyle.s 7 $+ $capwords($2) $+ 's rsn is7 $rsn($2-) } if ($2 && !$rsn($2)) { %saystyle.s No RSN for $2- } if (!$2 && $rsn($nick)) { %saystyle.s 7 $+ $capwords($nick) $+ 's rsn is7 $rsn($nick) } if (!$2 && !$rsn($nick)) { %saystyle.s No RSN for $nick } } on *:TEXT:*:#: { if ($smart($right($1,-1)) == stats || $smart($right($1,-1)) == combat || $smart($right($1,-1)) == compare || $smart($right($1,-1)) == duel) { halt } if (($left($1,1) != $chr(64)) && ($left($1,1) != $chr(33)) && ($left($1,1) != $chr(46))) { Halt } if (!$right($1,-1)) { halt } var %class2 = $+($r(0,9),$r(0,9),$r(0,9),$r(0,9),$r(0,9),$r(0,9)) var %valid $remove($1,!,@,.) if ($smart(%valid) != nomatch) { hadd -m $+(a,%class2) skill $smart(%valid) if ($left($2,1) != $chr(35)) { if (!$3 && $2 != @) { if ($readini(rsn.ini,$address($replace($remove($2,@),$chr(32),_),3),rsn)) { var %nick = $readini(rsn.ini,$address($replace($remove($2,@),$chr(32),_),3),rsn) } if (!$readini(rsn.ini,$address($replace($remove($2,@),$chr(32),_),3),rsn)) { var %nick = $capwords($replace($remove($2,@),$chr(32),_,-,_)) } } if ($left($3,1) == $chr(35)) { if ($readini(rsn.ini,$address($replace($remove($2,$+($chr(32),@)),$chr(32),_),3),rsn)) { var %nick = $readini(rsn.ini,$address($replace($remove($2,$+($chr(32),@)),$chr(32),_),3),rsn) } if (!$readini(rsn.ini,$address($replace($remove($2,$+($chr(32),@)),$chr(32),_),3),rsn)) { var %nick = $capwords($replace($remove($2,$+($chr(32),@)),$chr(32),_,-,_)) } hadd -m $+(a,%class2) goal $calc($replace($remove($3,$chr(35)),k,*1000,m,*1000000)) } if ($left($3,1) != $chr(35)) { if ($readini(rsn.ini,$address($replace($remove($2-,$+($chr(32),@)),$chr(32),_),3),rsn)) { var %nick = $readini(rsn.ini,$address($replace($remove($2-,$+($chr(32),@)),$chr(32),_),3),rsn) } if (!$readini(rsn.ini,$address($replace($remove($2-,$+($chr(32),@)),$chr(32),_),3),rsn)) { var %nick = $capwords($replace($remove($2-,$+($chr(32),@)),$chr(32),_,-,_)) } } } if ($left($2,1) == $chr(35)) { if ($readini(rsn.ini,$address($nick,3),rsn)) { var %nick = $readini(rsn.ini,$address($nick,3),rsn) } if (!$readini(rsn.ini,$address($nick,3),rsn)) { var %nick = $capwords($nick) } hadd -m $+(a,%class2) goal $calc( $replace( $remove($2,$chr(35)) ,k,*1000,m,*1000000) ) } if ($left($2,1) == $chr(64)) { if ($readini(rsn.ini,$address($nick,3),rsn)) { var %nick = $readini(rsn.ini,$address($nick,3),rsn) } if (!$readini(rsn.ini,$address($nick,3),rsn)) { var %nick = $capwords($nick) } } if (!$2) { if ($readini(rsn.ini,$address($nick,3),rsn)) { var %nick = $readini(rsn.ini,$address($nick,3),rsn) } if (!$readini(rsn.ini,$address($nick,3),rsn)) { var %nick = $capwords($nick) } } if ($2 == @ || $3 == @ || $4 == @) { hadd -m $+(a,%class2) list yes } hadd -m $+(a,%class2) nick %nick hadd -m $+(a,%class2) out $iif($left($1,1) == @,.msg $chan,.notice $nick) sockopen $+(stat.,$+(a,%class2)) hiscore.runescape.com 80 } if ($smart(%valid) = nomatch) { unset %saystyle.s } } on *:sockopen:stat.*: { sockwrite -n $sockname GET /lang/en/aff/runescape/overall.ws?table= $+ $smartno($hget($gettok($sockname,2,46),skill)) $+ &user= $+ $hget($gettok($sockname,2,46),nick) sockwrite -n $sockname Host: hiscore.runescape.com $+ $crlf $+ $crlf } on *:sockread:stat.*: { if ($sockerr) { $hget($gettok($sockname,2,46),out) There was a socket error. halt } var %stat .sockread %stat if (*#AA0022* iswm %stat && %stat.lvl && !%stat.exp) { .set %stat.exp $nohtml(%stat) if ($hget($gettok($sockname,2,46),skill) != Overall) { .set %stat.level $virtual($remove(%stat.exp,$chr(44))) } if ($hget($gettok($sockname,2,46),skill) == Overall) { .set %stat.level $remove(%stat.lvl,$chr(44)) } } if (*#AA0022* iswm %stat && %stat.name && !%stat.lvl) { .set %stat.lvl $nohtml(%stat) } if (*#AA0022* iswm %stat && %stat.rank && !%stat.name) { .set %stat.name $nohtml(%stat) } if (*#AA0022* iswm %stat && !%stat.rank) { .set %stat.rank $nohtml(%stat) } } on *:Sockclose:stat.*: { if (!%stat.exp) { $hget($gettok($sockname,2,46),out) User $hget($gettok($sockname,2,46),nick) not found } else { if (!$hget($gettok($sockname,2,46),goal)) { $hget($gettok($sockname,2,46),out) User:7 $hget($gettok($sockname,2,46),nick)  $+ $chr(124) Skill:7 $hget($gettok($sockname,2,46),skill) $hget($gettok($sockname,2,46),out) Rank:7 %stat.rank  $+ $chr(124) Lvl:7 %stat.lvl (07 $+ %stat.level $+ ) $chr(124) Exp:7 %stat.exp $& $xp2lvl } if ($hget($gettok($sockname,2,46),goal)) { $hget($gettok($sockname,2,46),out) User:7 $hget($gettok($sockname,2,46),nick)  $+ $chr(124) Skill:7 $hget($gettok($sockname,2,46),skill) $hget($gettok($sockname,2,46),out) Rank:7 %stat.rank  $+ $chr(124) Lvl:7 %stat.lvl (07 $+ %stat.level $+ ) $chr(124) Exp:7 %stat.exp $& $xp2goal } if ($tracked($hget($gettok($sockname,2,46),nick)) == tracked) { if ($calc($remove(%stat.exp,$chr(44)) - $readini(today.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),xp))) > 0) { var %today.xp = $+(03,$bytes($calc($remove(%stat.exp,$chr(44)) - $readini(today.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),xp))),db)) $+(xp,$chr(44)) } if ($calc($remove(%stat.lvl,$chr(44)) - $readini(today.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),lvl))) > 0) { var %today.lvl = $+(03,$bytes($calc($remove(%stat.lvl,$chr(44)) - $readini(today.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),lvl))),db)) $+(lvls,$chr(44)) } if ($calc($readini(today.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))) < 0) { var %today.rank = $+(04,$bytes($calc($readini(today.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))),db)) ranks } if ($calc($readini(today.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))) > 0) { var %today.rank = $+(03,+,$bytes($calc($readini(today.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))),db)) ranks } if (%today.xp || %today.rank) { var %today.title = Today: } if ($calc($remove(%stat.exp,$chr(44)) - $readini(week.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),xp))) > 0) { var %week.xp = $+(03,$bytes($calc($remove(%stat.exp,$chr(44)) - $readini(week.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),xp))),db)) $+(xp,$chr(44)) } if ($calc($remove(%stat.lvl,$chr(44)) - $readini(week.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),lvl))) > 0) { var %week.lvl = $+(03,$bytes($calc($remove(%stat.lvl,$chr(44)) - $readini(week.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),lvl))),db)) $+(lvls,$chr(44)) } if ($calc($readini(week.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))) < 0) { var %week.rank = $+(04,$bytes($calc($readini(week.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))),db)) ranks } if ($calc($readini(week.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))) > 0) { var %week.rank = $+(03,+,$bytes($calc($readini(week.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))),db)) ranks } if (%week.xp || %week.rank) { var %week.title = $chr(124) Week: } if ($calc($remove(%stat.exp,$chr(44)) - $readini(month.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),xp))) > 0) { var %month.xp = $+(03,$bytes($calc($remove(%stat.exp,$chr(44)) - $readini(month.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),xp))),db)) $+(xp,$chr(44)) } if ($calc($remove(%stat.lvl,$chr(44)) - $readini(month.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),lvl))) > 0) { var %month.lvl = $+(03,$bytes($calc($remove(%stat.lvl,$chr(44)) - $readini(month.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),lvl))),db)) $+(lvls,$chr(44)) } if ($calc($readini(month.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))) < 0) { var %month.rank = $+(04,$bytes($calc($readini(month.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))),db)) ranks } if ($calc($readini(month.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))) > 0) { var %month.rank = $+(03,+,$bytes($calc($readini(month.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))),db)) ranks } if (%month.xp || %month.rank) { var %month.title = $chr(124) Month: } if ($calc($remove(%stat.exp,$chr(44)) - $readini(year.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),xp))) > 0) { var %year.xp = $+(03,$bytes($calc($remove(%stat.exp,$chr(44)) - $readini(year.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),xp))),db)) $+(xp,$chr(44)) } if ($calc($remove(%stat.lvl,$chr(44)) - $readini(year.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),lvl))) > 0) { var %year.lvl = $+(03,$bytes($calc($remove(%stat.lvl,$chr(44)) - $readini(year.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),lvl))),db)) $+(lvls,$chr(44)) } if ($calc($readini(year.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))) < 0) { var %year.rank = $+(04,$bytes($calc($readini(year.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))),db)) ranks } if ($calc($readini(year.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))) > 0) { var %year.rank = $+(03,+,$bytes($calc($readini(year.ini,$hget($gettok($sockname,2,46),nick),$+($hget($gettok($sockname,2,46),skill),rank)) - $remove(%stat.rank,$chr(44))),db)) ranks } if (%year.xp || %year.rank) { var %year.title = $chr(124) Year: } if (%year.xp || %year.rank) { $hget($gettok($sockname,2,46),out) %today.title %today.xp %today.lvl %today.rank %week.title %week.xp %week.lvl %week.rank %month.title %month.xp %month.lvl %month.rank %year.title %year.xp %year.lvl %year.rank } } } if ($hget($gettok($sockname,2,46),list) == yes && $first(1) > 0) { $hget($gettok($sockname,2,46),out) Required for07 $bytes(%xp,db) $hget($gettok($sockname,2,46),skill) Exp: $&  $+ $first(1) 07 $+ $bytes($round($calc(%xp /$first(2)),0),db) $&  $+ $secon(1) 07 $+ $bytes($round($calc(%xp /$secon(2)),0),db) $&  $+ $third(1) 07 $+ $bytes($round($calc(%xp /$third(2)),0),db) $&  $+ $forth(1) 07 $+ $bytes($round($calc(%xp /$forth(2)),0),db) } unset %stat.* unset %skill unset %today.* unset %week.* unset %month.* unset %year.* unset %xp } alias first { return $gettok($readini($mircdirparam\itemto.ini,$hget($gettok($sockname,2,46),skill),1),$1,124) } alias secon { return $gettok($readini($mircdirparam\itemto.ini,$hget($gettok($sockname,2,46),skill),2),$1,124) } alias third { return $gettok($readini($mircdirparam\itemto.ini,$hget($gettok($sockname,2,46),skill),3),$1,124) } alias forth { return $gettok($readini($mircdirparam\itemto.ini,$hget($gettok($sockname,2,46),skill),4),$1,124) } alias xp2lvl { var %less99 = $calc(($remove(%stat.exp,$chr(44)) /13034431)*100) if (%skill != Overall && $remove(%stat.exp,$chr(44)) <= 199999999) { if ($virtual($remove(%stat.exp,$chr(44))) <= 125) { var %xp2lvl = $calc((($remove(%stat.exp ,$chr(44))-$readini(exp.ini,lvl,%stat.level ))/($readini(exp.ini,lvl,$calc(%stat.level +1))-$readini(exp.ini,lvl,%stat.level )))*100)) set %xp $calc($readini(exp.ini,lvl,$calc(%stat.level +1)) - $remove(%stat.exp,$chr(44))) return (07 $+ $round(%less99,2) $+ % of 99)  $+ $chr(124) Exp till $calc(%stat.level +1) $+ :7 $bytes(%xp,db) $& ( $+ 07 $+ $round(%xp2lvl,2) $+ % of $calc(%stat.level +1) $+ ) } if ($virtual($remove(%stat.exp,$chr(44))) == 126) { var %xp2lvl = $calc((($remove(%stat.exp ,$chr(44))-$readini(exp.ini,lvl,%stat.level ))/(200000000-$readini(exp.ini,lvl,%stat.level )))*100)) set %xp $calc(200000000-$remove(%stat.exp,$chr(44))) return (07 $+ $round(%less99,2) $+ % of 99)  $+ $chr(124) Exp till max $+ :7 $bytes($calc(200000000-$remove(%stat.exp,$chr(44))),db) $& ( $+ 07 $+ $round(%xp2lvl,2) $+ % of max $+ ) } } } alias xp2goal { var %less99 = $calc(($remove(%stat.exp,$chr(44)) /13034431)*100) if ($hget($gettok($sockname,2,46),goal) < 127) { var %xp2lvl = $calc(($remove(%stat.exp ,$chr(44))/$readini(exp.ini,lvl,$hget($gettok($sockname,2,46),goal)))*100) set %xp $calc($readini(exp.ini,lvl,$hget($gettok($sockname,2,46),goal)) - $remove(%stat.exp,$chr(44))) if (%skill != Overall && %skill != Duel) { return (07 $+ $round(%less99,2) $+ % of 99)  $+ $chr(124) Exp till $hget($gettok($sockname,2,46),goal) $+ :7 $bytes($calc($readini(exp.ini,lvl,$hget($gettok($sockname,2,46),goal)) - $remove(%stat.exp,$chr(44))),db) $& ( $+ 07 $+ $round(%xp2lvl,2) $+ % of $hget($gettok($sockname,2,46),goal) $+ ) } } if ($hget($gettok($sockname,2,46),goal) > 126) { var %xp2lvl = $calc(($remove(%stat.exp,$chr(44))/ $hget($gettok($sockname,2,46),goal))*100) set %xp $calc($hget($gettok($sockname,2,46),goal) - $remove(%stat.exp,$chr(44))) if (%skill != Duel) { if ($hget($gettok($sockname,2,46),goal) < 1000000) { return (07 $+ $round(%less99,2) $+ % of 99)  $+ $chr(124) Exp till $+($bytes($round($calc($hget($gettok($sockname,2,46),goal) /1000),1),db),k) $+ :7 $bytes($calc($hget($gettok($sockname,2,46),goal) - $remove(%stat.exp,$chr(44))),db) $& ( $+ 07 $+ $round(%xp2lvl,2) $+ % of $+($bytes($round($calc($hget($gettok($sockname,2,46),goal) /1000),1),db),k) $+ ) } if ($hget($gettok($sockname,2,46),goal) > 999999) { return (07 $+ $round(%less99,2) $+ % of 99)  $+ $chr(124) Exp till $+($bytes($round($calc($hget($gettok($sockname,2,46),goal) /1000000),1),db),M) $+ :7 $bytes($calc($hget($gettok($sockname,2,46),goal) - $remove(%stat.exp,$chr(44))),db) $& ( $+ 07 $+ $round(%xp2lvl,2) $+ % of $+($bytes($round($calc($hget($gettok($sockname,2,46),goal) /1000000),1),db),M) $+ ) } } }