on *:text:*:#ox,#pyro,#rsdr:{ if ($left($1,1) !isin @!.) { halt } var %sckid = $right($ticks,6) table $right($1,-1) %sckid if ( $($+(%,public.,$chan),2) == 1 ) { set $+(%,stats.display.,%sckid) $iif($left($1,1) == @,msg $chan,notice $nick) } else { set $+(%,stats.display.,%sckid) $iif($left($1,1) == @,notice $nick,notice $nick) } if ( $right($1,-1) == compare ) { if (!$2) { notice $nick 10Please use proper syntax: 4!compare [User2]10 Use _ for spaces. Thank you. clean %sckid } table $2 %sckid if ( !%stats.stat. [ $+ [ %sckid ] ] ) && ( %stats.style. [ $+ [ %sckid ] ] != combat ) { notice $nick 4 $+ $2 10is not a valid skill. clean %sckid } if ( %stats.style. [ $+ [ %sckid ] ] == combat ) { set %stats.style. [ $+ [ %sckid ] ] compare set %stats.compare. [ $+ [ %sckid ] ] combat } if ( %stats.stat. [ $+ [ %sckid ] ] ) { set %stats.style. [ $+ [ %sckid ] ] compare } if (!$3) { notice $nick 10Please use proper syntax: 4!rank 10 Thank you. clean %sckid } if ($len($3) > 12) { notice $nick 10The username4 $3 10is too long! clean %sckid } if ($len($4) > 12) { notice $nick 10The username4 $4 10is too long! clean %sckid } if (!$4) { if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) { set %stats.lookup.name1. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) set %stats.lookup.name2. $+ %sckid $3 set %stats.style. [ $+ [ %sckid ] ] compare sockopen stats. [ $+ [ %sckid ] ] hiscore.runescape.com 80 } else { set %stats.lookup.name1. $+ %sckid $nick set %stats.lookup.name2. $+ %sckid $3 set %stats.style. [ $+ [ %sckid ] ] compare sockopen stats. [ $+ [ %sckid ] ] hiscore.runescape.com 80 } } else { set %stats.lookup.name1. $+ %sckid $3 set %stats.lookup.name2. $+ %sckid $4 set %stats.style. [ $+ [ %sckid ] ] compare sockopen stats. [ $+ [ %sckid ] ] hiscore.runescape.com 80 } } elseif ( %stats.style. [ $+ [ %sckid ] ] == stat ) { if (!$2) { if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) { set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) set %stats.style. [ $+ [ %sckid ] ] stat } else { set %stats.lookup. $+ %sckid $nick set %stats.style. [ $+ [ %sckid ] ] stat } } elseif ( $left($2,1) == $chr(35) ) { if ( $replace($2,$chr(35),$null) !isnum 2-99 ) { notice $nick 10Please use proper syntax: 4!skill 10 Remember, must be in #99 format. clean %sckid } if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) { set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) set %stats.style. [ $+ [ %sckid ] ] stat set %stats.goal. $+ %sckid $replace($2,$chr(35),$null) } else { set %stats.lookup. $+ %sckid $nick set %stats.style. [ $+ [ %sckid ] ] stat set %stats.goal. $+ %sckid $replace($2,$chr(35),$null) } } elseif ($len($2) > 12) { notice $nick 10The username4 $2 10is too long! clean %sckid } elseif ( $left($3,1) == $chr(35) ) { if ( $replace($3,$chr(35),$null) !isnum 2-99 ) { notice $nick 10Please use proper syntax: 4!skill 10 Remember, must be in #99 format and names must have a _ instead of spaces. clean %sckid } set %stats.lookup. $+ %sckid $2 set %stats.style. [ $+ [ %sckid ] ] stat set %stats.goal. $+ %sckid $replace($3,$chr(35),$null) } else { set %stats.lookup. $+ %sckid $2 set %stats.style. [ $+ [ %sckid ] ] stat } } elseif ( %stats.style. [ $+ [ %sckid ] ] == overall ) { if (!$2) { if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) { set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) set %stats.style. [ $+ [ %sckid ] ] overall sockopen stats. [ $+ [ %sckid ] ] hiscore.runescape.com 80 halt } else { set %stats.lookup. $+ %sckid $nick set %stats.style. [ $+ [ %sckid ] ] overall sockopen stats. [ $+ [ %sckid ] ] hiscore.runescape.com 80 halt } } if ($len($2-) > 12) { notice $nick 10The username4 $2- 10is too long! clean %sckid } else { set %stats.lookup. $+ %sckid $replace($2-,$chr(32),_) set %stats.style. [ $+ [ %sckid ] ] overall sockopen stats. [ $+ [ %sckid ] ] hiscore.runescape.com 80 halt } } elseif ( %stats.style. [ $+ [ %sckid ] ] == combat ) { if (!$2) { if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) { set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) set %stats.style. [ $+ [ %sckid ] ] combat } else { set %stats.lookup. $+ %sckid $nick set %stats.style. [ $+ [ %sckid ] ] combat } if ($len($2-) > 12) { notice $nick 10The username4 $2- 10is too long! clean %sckid } } set %stats.lookup. $+ %sckid $replace($2-,$chr(32),_) set %stats.style. [ $+ [ %sckid ] ] combat } elseif ($right($1,-1) == stats) { if (!$2) { if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) { set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) set %stats.style. $+ %sckid astats } else { set %stats.lookup. $+ %sckid $nick set %stats.style. $+ %sckid astats } if ($len($2-) > 12) { notice $nick 10The username4 $2- 10is too long! clean %sckid } } set %stats.lookup. $+ %sckid $replace($2-,$chr(32),_) set %stats.style. $+ %sckid astats } elseif ($right($1,-1) == rank) { if (!$2) { notice $nick 10Please use proper syntax: 4!rank 10 Thank you. clean %sckid } if (!$3) { notice $nick 10Please use proper syntax: 4!rank 10 Thank you. clean %sckid } if ($replace($3,$chr(44),$null) !isnum 1-1000000 ) { notice $nick 10Please use a valid rank number. clean %sckid } table $2 %sckid if ( %stats.stat. [ $+ [ %sckid ] ] ) { //echo ( !%stats.stat. [ $+ [ %sckid ] ] ) notice $nick 4 $+ $2 10is not a valid skill. clean %sckid } set %stats.lookup. $+ %sckid $3 set %stats.style. $+ %sckid rank sockopen stats. [ $+ [ %sckid ] ] hiscore.runescape.com 80 halt } elseif ($right($1,-1) == setrsn) && ($2) { if ($len($2-) > 12) { notice $nick 10The username4 $3- 10is too long! clean %sckid } writeini DefRSN.ini RSNs $mask($fulladdress,3) $replace($2-,$chr(32),-) .notice $nick 10 You're default RSN for the host4 $mask($fulladdress,3) 10has been set to4 $2- clean %sckid } elseif ($right($1,-1) == setname) && ($2) { if ($len($2-) > 12) { notice $nick 10The username4 $3- 10is too long! clean %sckid } writeini DefRSN.ini RSNs $mask($fulladdress,3) $replace($2-,$chr(32),-) .notice $nick 10 You're default RSN for the host4 $mask($fulladdress,3) 10has been set to4 $2- clean %sckid } elseif ($right($1,-1) == defname) && ($2) { if ($len($2-) > 12) { notice $nick 10The username4 $3- 10is too long! clean %sckid } writeini DefRSN.ini RSNs $mask($fulladdress,3) $replace($2-,$chr(32),-) notice $nick 10 You're default RSN for the host4 $mask($fulladdress,3) 10has been set to4 $2- clean %sckid } else { clean %sckid } } on *:SOCKOPEN:stats.*: { if ( %stats.style. [ $+ [ $right($sockname,6) ] ] == overall ) { sockwrite -nt $sockname GET lang/en/aff/runescape/overall.ws?table=0&user= $+ %stats.lookup. [ $+ [ $right($sockname,6) ] ] HTTP/1.1 sockwrite -nt $sockname Host: hiscore.runescape.com } elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == rank ) { sockwrite -nt $sockname GET overall.ws?table= $+ %table. [ $+ [ $right($sockname,6) ] ] $+ &rank= $+ %stats.lookup. [ $+ [ $right($sockname,6) ] ] HTTP/1.1 sockwrite -nt $sockname Host: hiscore.runescape.com } elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == compare ) { sockwrite -nt $sockname GET /compare.ws?user1= $+ %stats.lookup.name1. [ $+ [ $right($sockname,6) ] ] $+ &user2= $+ %stats.lookup.name2. [ $+ [ $right($sockname,6) ] ] HTTP/1.1 sockwrite -nt $sockname Host: hiscore.runescape.com } elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == stat ) { http://hiscore.runescape.com/hiscorepersonal.ws?user1=ineedaman222 } sockwrite -nt $sockname $crlf } on *:SOCKREAD:stats.*: { if ($sockerr) { notice $nick there was an error with the stats lookup. } else { var %sockreader sockread %sockreader if ( %stats.style. [ $+ [ $right($sockname,6) ] ] == compare ) { if (!%stats.done. [ $+ [ $right($sockname,6) ] ]) { if ( %stats.stat. [ $+ [ $right($sockname,6) ] ] iswm %sockreader ) { inc %stats.found. [ $+ [ $right($sockname,6) ] ] } if ( %stats.found. [ $+ [ $right($sockname,6) ] ] == 1) { if (*Not Ranked* iswm %sockreader ) { %stats.display. [ $+ [ $right($sockname,6) ] ] 10Stats of:4 %stats.lookup.name1. [ $+ [ $right($sockname,6) ] ] 10not found. inc %stats.done. [ $+ [ $right($sockname,6) ] ] inc %stats.done. [ $+ [ $right($sockname,6) ] ] } if (* iswm %sockreader ) { tokenize 62 %sockreader inc %r. [ $+ [ $right($sockname,6) ] ] 1 set %stats.user1. $+ %r. [ $+ [ $right($sockname,6) ] ] $replace($2,* iswm %sockreader ) { tokenize 62 %sockreader inc %r. [ $+ [ $right($sockname,6) ] ] 1 set %stats.user2. $+ %r. [ $+ [ $right($sockname,6) ] ] $replace($2, %stats.user2.5 ) { %stats.display. [ $+ [ $right($sockname,6) ] ] 4 $+ %stats.lookup.name1. [ $+ [ $right($sockname,6) ] ] 10is4 $calc($replace(%stats.user1.2,$chr(44),$null) - $replace(%stats.user2.5,$chr(44),$null)) 10levels and4 $calc($replace(%stats.user1.3,$chr(44),$null) - $replace(%stats.user2.6,$chr(44),$null)) 10EXP higher then4 %stats.lookup.name2. [ $+ [ $right($sockname,6) ] ] } else { %stats.display. [ $+ [ $right($sockname,6) ] ] 4 $+ %stats.lookup.name2. [ $+ [ $right($sockname,6) ] ] 10is4 $calc($replace(%stats.user2.5,$chr(44),$null) - $replace(%stats.user1.2,$chr(44),$null)) 10levels and4 $calc($replace(%stats.user2.6,$chr(44),$null) - $replace(%stats.user1.3,$chr(44),$null)) 10EXP higher then4 %stats.lookup.name1. [ $+ [ $right($sockname,6) ] ] } inc %stats.done. [ $+ [ $right($sockname,6) ] ] } } elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == rank ) { if ( $+ $($+(%,number.,$right($sockname,6)),2) == 5) { %stats.display. [ $+ [ $right($sockname,6) ] ] User: %y.2 Rank %y.1 Level: %y.3 EXP: %y.4 inc %number. [ $+ [ $right($sockname,6) ] ] } if ( *** iswm %sockreader ) { if (!$($+(%,number.,$right($sockname,6)),2) ) { set %number. [ $+ [ $right($sockname,6) ] ] 1 } if ( ,$null,,$null) inc %number. [ $+ [ $right($sockname,6) ] ] } } if ( * iswm %sockreader ) { set %y. $+ $($+(%,number.,$right($sockname,6)),2) $replace(%sockreader,,$null,,$null) inc %number. [ $+ [ $right($sockname,6) ] ] } } elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == overall ) { if ( $+ $($+(%,number.,$right($sockname,6)),2) == 4) { %stats.display. [ $+ [ $right($sockname,6) ] ] User: %stats.lookup. [ $+ [ $right($sockname,6) ] ] Rank: %y.1 Level: %y.2 Exp: %y.3 inc %number. [ $+ [ $right($sockname,6) ] ] } if (* iswm %sockreader ) { if (!$($+(%,number.,$right($sockname,6)),2) ) { set %number. [ $+ [ $right($sockname,6) ] ] 1 } set %y. $+ $($+(%,number.,$right($sockname,6)),2) $replace(%sockreader,,$null,,$null) inc %number. [ $+ [ $right($sockname,6) ] ] } if ( * iswm %sockreader ) { set %y. $+ $($+(%,number.,$right($sockname,6)),2) $replace(%sockreader,,$null,,$null) inc %number. [ $+ [ $right($sockname,6) ] ] } } } } alias -l clean { unset %stats.display. [ $+ [ $1 ] ] unset %stats.compare. [ $+ [ $1 ] ] unset %stats.style. [ $+ [ $1 ] ] unset %stats.lookup.name1. [ $+ [ $1 ] ] unset %stats.lookup.name2. [ $+ [ $1 ] ] halt } alias -l table { if ( $regex($1,/^(st|(skill)?total|overall)$/Si) ) { set %stats.stat. $+ $2 Overall | set %stats.style. $+ $2 overall } elseif ( $regex($1,/co?mb(at)?/Si) ) { set %stats.style. $+ $2 combat } elseif ( $regex($1,/^at(t|k|tack)$/Si) ) { set %stats.stat. $+ $2 Attack | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^def(en[cs]e)?$$/Si) ) { set %stats.stat. $+ $2 Defence | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^str(ength)?$/Si) ) { set %stats.stat. $+ $2 Strength | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^hp|hit(s|points?)?$/Si) ) { set %stats.stat. $+ $2 Hitpoints | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^range(r|d|ing)?$/Si) ) { set %stats.stat. $+ $2 Ranged | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^Pray(er)?$$/Si) ) { set %stats.stat. $+ $2 Prayer | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^mag(e|ic)$$/Si) ) { set %stats.stat. $+ $2 Magic | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^cook(ing)?$/Si) ) { set %stats.stat. $+ $2 Cooking | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^wc|wood(cut(ting)?)?$/Si) ) { set %stats.stat. $+ $2 Woodcutting | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^fletch(ing)?$/Si) ) { set %stats.stat. $+ $2 Fletching | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^fish(ing)?$/Si) ) { set %stats.stat. $+ $2 Fishing | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^(fire|fm)(make?(ing)?|ing)?$/Si) ) { set %stats.stat. $+ $2 Firemaking | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^craft(ing)?$/Si) ) { set %stats.stat. $+ $2 Crafting | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^(smith|smelt)(ing)?$/Si) ) { set %stats.stat. $+ $2 Smithing | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^mine(ing)?$/Si) ) { set %stats.stat. $+ $2 Mining | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^herb(law|lore)?$/Si) ) { set %stats.stat. $+ $2 Herblore | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^agil(ity)?$/Si) ) { set %stats.stat. $+ $2 Agility | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^(th(ei|ie)[fv](e|ing)?)$/Si) ) { set %stats.stat. $+ $2 Thieving | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^slay(er|ing)?$/Si) ) { set %stats.stat. $+ $2 Slayer | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^farm(er|ing)?$/Si) ) { set %stats.stat. $+ $2 Farming | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^(rc|runecraft)(er|ing)?$/Si) ) { set %stats.stat. $+ $2 Runecraft | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^(hunt)(er|ing)?$/Si) ) { set %stats.stat. $+ $2 Hunter | set %stats.style. $+ $2 stat } elseif ( $regex($1,/^(construct)(ion|ing)?$/Si) ) { set %stats.stat. $+ $2 Construction | set %stats.style. $+ $2 stat } }