on $*:text:/^((\[[a-z]{2}\])?Generic )?[@`.,!]*/Si:#GenericDev,#theclan: { if ($hget(disabled,$chan)) && ($1 != $me) halt if ($1 == $me) tokenize 32 $2- if ($1 != $me) && ($skilltrigger($remove($1,$left($1,1)),check) != yes) halt if (!$2) $iif($left($1,1) == @,msg $chan,notice $nick) 14You must specify a04 Username14 to lookup! if ($2) { if ($len($2-) > 12) notice $nick 14Usernames must be under a length of 12 characters if ($len($2-) < 12) { inc %statsid 1 set -u60 %StatsType [ $+ [ %statsid ] ] skill set -u60 %skill [ $+ [ %statsid ] ] $skilltrigger($remove($1,$left($1,1))) set -u60 %StatsName [ $+ [ %statsid ] ] $replace($2-,$chr(32),$chr(95),$chr(35),$chr(45)) set -u60 %statsnick [ $+ [ %statsid ] ] $nick set -u60 %statschan [ $+ [ %statsid ] ] $chan set -u60 %statsmsg [ $+ [ %statsid ] ] $iif($left($1,1) == @,msg $chan,notice $nick) sockopen $+(rsstats,%statsid) hiscore.runescape.com 80 } } } alias xp { var %x = 1, %level = $calc($1 - 1), %xp = 0 while (%x <= %level) { var %TempXp = $calc($floor($calc(%x + 300 * 2 ^ (%x / 7))) / 4) inc %xp %TempXp inc %x } if ($prop == format) $bytes($int(%xp),b) else return $int(%xp) } alias xp2next { var %lvl = $1, %xp = $remove($2,$chr(44)), %nextlvl = $calc(%lvl + 1), %nextxp = $xp(%nextlvl) if (%lvl >= 99) return - elseif ($prop == format) return $bytes($calc(%nextxp - %xp),b) else return $calc(%nextxp - %xp) } ____________________________________________________________________________________________________ on $*:text:/^((\[[a-z]{2}\])?Generic )?[@`.,!]stats */Si:#GenericDev,#theclan: { if ($hget(disabled,$chan)) && ($1 != $me) halt if ($1 == $me) tokenize 32 $2- if ($1 != $me) && ($remove($1,$left($1,1)) != stats) halt if (!$2) $iif($left($1,1) == @,msg $chan,notice $nick) 14You must specify a04 Username14 to lookup! if ($2) { if ($len($2-) > 12) notice $nick 14Usernames must be under a length of 12 characters if ($len($2) < 12) { inc %statsid 1 set -u60 %StatsType [ $+ [ %statsid ] ] Stats set -u60 %StatsName [ $+ [ %statsid ] ] $replace($2-,$chr(32),$chr(95),$chr(35),$chr(45)) set -u60 %statsnick [ $+ [ %statsid ] ] $nick set -u60 %statschan [ $+ [ %statsid ] ] $chan set -u60 %statsmsg [ $+ [ %statsid ] ] $iif($left($1,1) == @,msg $chan,notice $nick) sockopen $+(rsstats,%statsid) hiscore.runescape.com 80 } } } on *:SOCKOPEN:Rsstats*:{ sockwrite -n $sockname GET /hiscorepersonal.ws?user1= $+ %StatsName [ $+ [ $right($sockname,-7) ] ] HTTP/1.1 sockwrite -n $sockname Host: hiscore.runescape.com $+ $str($crlf,2) } on *:SOCKREAD:rsstats*:{ var %stats.read sockread %stats.read if (does not feature in the hiscores isin %Stats.read) { %statsmsg [ $+ [ $right($sockname,-7) ] ] $+(04,%StatsName [ $+ [ $right($sockname,-7) ] ]) 14Did not appear in the highscores. set -u60 %nubstats [ $+ [ $right($sockname,-7) ] ] yes } if ($regex(%Stats.read,/(Overall|Attack|Defence|Strength|Hitpoints|Woodcutting|Fletching|Hunter|Construction|Fishing|Cooking|Prayer|Magic|Ranged|Firemaking|Crafting|Smithing|Herblore|Mining|Agility|Thieving|Slayer|Farming|RuneCraft) */iS) == 1) && ( isin %stats.read && isin %stats.read) && ($remove($htmlfree(%stats.read),$chr(44)) isnum)) || (Not Ranked isin $htmlfree(%stats.read)) { if (Not Ranked isin $htmlfree(%stats.read)) { if (%Statname == Overall) { set %Overall [ $+ [ $right($sockname,-7) ] ] - } if (%statname == Attack) { %message [ $+ [ $right($sockname,-7) ] ] = $+(14,%statname,$chr(58),04,$chr(32),-) set -u60 %attack [ $+ [ $right($sockname,-7) ] ] 1 } if (%statname != Attack && %statname != Overall) { %data = %message [ $+ [ $right($sockname,-7) ] ] $+(14,%statname,$chr(58),04,$chr(32),-) %message [ $+ [ $right($sockname,-7) ] ] = %data } set -u60 $+(%,%statname,$right($sockname,-7)) 1 } if (%id [ $+ [ %statname ] $+ [ $right($sockname,-7) ] ] == 2) { set -u30 $+(%,xp,%statname,$right($sockname,-7)) $htmlfree(%stats.read) } if (%id [ $+ [ %statname ] $+ [ $right($sockname,-7) ] ] == 1) { set -u30 $+(%,%statname,$right($sockname,-7)) $htmlfree(%stats.read) if (%statname == attack) { %message [ $+ [ $right($sockname,-7) ] ] = $+(14,%statname,$chr(58),04,$chr(32),$htmlfree(%stats.read)) } if (%statname != attack && %STatname != Overall) { %data = %message [ $+ [ $right($sockname,-7) ] ] $+(14,%statname,$chr(58),04,$chr(32),$htmlfree(%stats.read)) %message [ $+ [ $right($sockname,-7) ] ] = %data } inc %id [ $+ [ %statname ] $+ [ $right($sockname,-7) ] ] 1 } if (!%id [ $+ [ %statname ] $+ [ $right($sockname,-7) ] ]) { set -u30 $+(%,rank,%statname,$right($sockname,-7)) $htmlfree(%stats.read) set -u10 %id [ $+ [ %statname ] $+ [ $right($sockname,-7) ] ] 1 } } } on *:sockclose:Rsstats*: { if (%nubstats [ $+ [ $right($sockname,-7) ] ]) halt else { var %def = $calc(%defence [ $+ [ $right($sockname,-7) ] ] * 100) var %hp = $calc(%hitpoints [ $+ [ $right($sockname,-7) ] ] * 100) var %base = $calc(($calc(%defence [ $+ [ $right($sockname,-7) ] ] * 100) + $calc(%hitpoints [ $+ [ $right($sockname,-7) ] ] * 100) + $iif($regex($right(%prayer [ $+ [ $right($sockname,-7) ] ],1),[02468]),$calc(%prayer [ $+ [ $right($sockname,-7) ] ] * 50),$calc((%prayer [ $+ [ $right($sockname,-7) ] ] - 1) * 50))) / 400) var %melee = $calc(($calc(%attack [ $+ [ $right($sockname,-7) ] ] * 130) + $calc(%strength [ $+ [ $right($sockname,-7) ] ] * 130)) / 400) var %ranger = $calc($iif($regex($right(%ranged [ $+ [ $right($sockname,-7) ] ],1),[02468]),$calc(%ranged [ $+ [ $right($sockname,-7) ] ] * 195),$calc((%ranged [ $+ [ $right($sockname,-7) ] ] * 195) - 65)) / 400) var %mage = $calc($iif($regex($right(%magic [ $+ [ $right($sockname,-7) ] ],1),[02468]),$calc(%magic [ $+ [ $right($sockname,-7) ] ] * 195),$calc((%magic [ $+ [ $right($sockname,-7) ] ] * 195) - 65)) / 400) if (%melee > %ranger) && (%melee > %mage) { var %style = Melee var %combat = $calc(%melee + %base) } if (%ranger > %melee) && (%ranger > %mage) { var %style = Ranger var %combat = $calc(%ranger + %base) } if (%mage > %melee) && (%mage > %ranger) { var %style = Mage var %combat = $calc(%mage + %base) } else { var %style = Melee var %combat = $calc(%melee + %base) } if (%StatsType [ $+ [ $right($sockname,-7) ] ] == Stats) { %statsmsg [ $+ [ $right($sockname,-7) ] ] 14Stats for04 $replace(%StatsName [ $+ [ $right($sockname,-7) ] ],$chr(95),$chr(32)) 14- Overall14:04 %Overall [ $+ [ $right($sockname,-7) ] ] 14Combat:04 %combat %statsmsg [ $+ [ $right($sockname,-7) ] ] %message [ $+ [ $right($sockname,-7) ] ] unset %message [ $+ [ $right($sockname,-7) ] ] unset %id* [ $+ [ $right($sockname,-7) ] ] } if (%StatsType [ $+ [ $right($sockname,-7) ] ] == cmb) { %statsmsg [ $+ [ $right($sockname,-7) ] ] 14Name:04 $replace(%StatsName [ $+ [ $right($sockname,-7) ] ],$chr(95),$chr(32)) 14Combat:04 %combat 14(04 $+ %Style Based14) %statsmsg [ $+ [ $right($sockname,-7) ] ] 14Att:04 %Attack [ $+ [ $right($sockname,-7) ] ] 14Def:04 %Defence [ $+ [ $right($sockname,-7) ] ] 14Str:04 %Strength [ $+ [ $right($sockname,-7) ] ] 14Hits:04 %hitpoints [ $+ [ $right($sockname,-7) ] ] 14Range:04 %ranged [ $+ [ $right($sockname,-7) ] ] 14Pray:04 %Prayer [ $+ [ $right($sockname,-7) ] ] 14Mage:04 %magic [ $+ [ $right($sockname,-7) ] ] } if (%StatsType [ $+ [ $right($sockname,-7) ] ] == skill) { %skill = %skill [ $+ [ $right($sockname,-7) ] ] %statsmsg [ $+ [ $right($sockname,-7) ] ] 14 $+ %skill [ $+ [ $right($sockname,-7) ] ] for04 $replace(%StatsName [ $+ [ $right($sockname,-7) ] ],$chr(95),$chr(32)) $+ 14: %statsmsg [ $+ [ $right($sockname,-7) ] ] 14Rank:04 %rank [ $+ [ %skill ] $+ [ $right($sockname,-7) ] ] 14Level:04 $($+(%,%skill,$right($sockname,-7)),2) 14XP:04 $($+(%,xp,%skill,$right($sockname,-7)),2) 14XP To Next Level:04 $bytes($xp2next($($+(%,%skill,$right($sockname,-7)),2),$($+(%,xp,%skill,$right($sockname,-7)),2)),db) } if (%StatsType [ $+ [ $right($sockname,-7) ] ] == Percent) { %cmbxp = $calc($do($($+(%,xp,Attack,$right($sockname,-7)),2)) + $do($($+(%,xp,Strength,$right($sockname,-7)),2)) + $do($($+(%,xp,Defence,$right($sockname,-7)),2)) + $do($($+(%,xp,Hitpoints,$right($sockname,-7)),2)) + $do($($+(%,xp,Prayer,$right($sockname,-7)),2)) + $do($($+(%,xp,Ranged,$right($sockname,-7)),2)) + $do($($+(%,xp,magic,$right($sockname,-7)),2))) %noncmbxp = $calc($do($($+(%,xp,Overall,$right($sockname,-7)),2)) - %cmbxp) %statsmsg [ $+ [ $right($sockname,-7) ] ] 14Combat Percent for:04 $replace(%StatsName [ $+ [ $right($sockname,-7) ] ],$chr(95),$chr(32)) $+ 14: %statsmsg [ $+ [ $right($sockname,-7) ] ] 14Cmb Based XP:04 $bytes(%cmbxp,db) 14Non-Cmb Based XP:04 $bytes(%noncmbxp,db) 14Cmb Percent:04 $round($calc((%cmbxp / $do($($+(%,xp,Overall,$right($sockname,-7)),2)) )*100),2) $+ $chr(37) } if (%StatsType [ $+ [ $right($sockname,-7) ] ] == PestControl) { if (!%pcgoal [ $+ [ $right($sockname,-7) ] ]) { %nextlevel = $xp2next($do($($+(%,%skill,$right($sockname,-7)),2)),$($+(%,xp,%skill,$right($sockname,-7)),2)) %skill = %skill [ $+ [ $right($sockname,-7) ] ] %pcpoints = $pest($($+(%,%skill,$right($sockname,-7)),2),%skill,$calc($($+(%,%skill,$right($sockname,-7)),2) +1),%nextlevel) %statsmsg [ $+ [ $right($sockname,-7) ] ] 04 $+ $replace(%StatsName [ $+ [ $right($sockname,-7) ] ],$chr(95),$chr(32)) 14needs04 $calc($remove(%pcpoints,$left(%pcpoints,1)) +1) 14PestControl Points for04 $iif(%PcGoal [ $+ [ $right($sockname,-7) ] ],%PcGoal [ $+ [ $right($sockname,-7) ] ],$calc($do($($+(%,%skill,$right($sockname,-7)),2)) +1)) 14 $+ %skill [ $+ [ $right($sockname,-7) ] ] } if (%pcgoal [ $+ [ $right($sockname,-7) ] ]) { %nextlevel = $calc($xp(%pcgoal [ $+ [ $right($sockname,-7) ] ]) - $do($($+(%,xp,%skill,$right($sockname,-7)),2))) %skill = %skill [ $+ [ $right($sockname,-7) ] ] %pcpoints = $pest($do($($+(%,%skill,$right($sockname,-7)),2)),%skill,%pcgoal [ $+ [ $right($sockname,-7) ] ],%nextlevel)) %statsmsg [ $+ [ $right($sockname,-7) ] ] 04 $+ $replace(%StatsName [ $+ [ $right($sockname,-7) ] ],$chr(95),$chr(32)) 14needs04 $remove(%pcpoints,$left(%pcpoints,1)) 14PestControl Points for04 %pcgoal [ $+ [ $right($sockname,-7) ] ] 14 $+ %skill [ $+ [ $right($sockname,-7) ] ] } } } } alias -l htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, ) return %x } on $*:text:/^((\[[a-z]{2}\])?Generic )?[@`.,!](cmb|combat)*/Si:#GenericDev,#theclan: { if ($hget(disabled,$chan)) && ($1 != $me) halt if ($1 == $me) tokenize 32 $2- if ($remove($1,$left($1,1)) == cmb-est) halt if ($1 != $me) && ($regex($remove($1,$left($1,1)),/(cmb|combat|cmb%)/i) != 1) halt if (!$2) $iif($left($1,1) == @,msg $chan,notice $nick) 14You must specify a04 Username14 to lookup! if ($2) { if ($len($2-) > 12) notice $nick 14Usernames must be under a length of 12 characters if ($len($2) < 12) { inc %statsid 1 set -u60 %StatsType [ $+ [ %statsid ] ] $iif($right($1,1) == $chr(37),Percent,Cmb) set -u60 %StatsName [ $+ [ %statsid ] ] $replace($2-,$chr(32),$chr(95),$chr(35),$chr(45)) set -u60 %statsnick [ $+ [ %statsid ] ] $nick set -u60 %statschan [ $+ [ %statsid ] ] $chan set -u60 %statsmsg [ $+ [ %statsid ] ] $iif($left($1,1) == @,msg $chan,notice $nick) sockopen $+(rsstats,%statsid) hiscore.runescape.com 80 } } } alias SkillTrigger { if ($regex($1,/^(st|(skill)?total|overall)$/Si)) $iif($2,return yes,return Overall) elseif ($regex($1,/^at(t|k|tack)$/Si)) $iif($2,return yes,return Attack) elseif ($regex($1,/^def(en[cs]e)?$$/Si)) $iif($2,return yes,return Defence) elseif ($regex($1,/^str(ength)?$/Si)) $iif($2,return yes,return Strength) elseif ($regex($1,/^hp|hits(points)??$/Si)) $iif($2,return yes,return Hitpoints) elseif ($regex($1,/^range(r|d|ing)?$/Si)) $iif($2,return yes,return Ranged) elseif ($regex($1,/^Pray(er)?$$/Si)) $iif($2,return yes,return Prayer) elseif ($regex($1,/^mag(e|ic)$$/Si)) $iif($2,return yes,return Magic) elseif ($regex($1,/^cook(ing)?$/Si)) $iif($2,return yes,return Cooking) elseif ($regex($1,/^wc|wood(cut(ting)?)?$/Si)) $iif($2,return yes,return Woodcutting) elseif ($regex($1,/^fletch(ing)?$/Si)) $iif($2,return yes,return Fletching) elseif ($regex($1,/^fish(ing)?$/Si)) $iif($2,return yes,return Fishing) elseif ($regex($1,/^(fire|fm)(make?(ing)?|ing)?$/Si)) $iif($2,return yes,return Firemaking) elseif ($regex($1,/^craft(ing)?$/Si)) $iif($2,return yes,return Crafting) elseif ($regex($1,/^(smith|smelt)(ing)?$/Si)) $iif($2,return yes,return Smithing) elseif ($regex($1,/^(mine|Mining)$/Si)) $iif($2,return yes,return Mining) elseif ($regex($1,/^herb(law|lore)?$/Si)) $iif($2,return yes,return Herblore) elseif ($regex($1,/^agil(ity)?$/Si)) $iif($2,return yes,return Agility) elseif ($regex($1,/^(th(ei|ie)[fv](e|ing)?)$/Si)) $iif($2,return yes,return Thieving) elseif ($regex($1,/^slay(er|ing)?$/Si)) $iif($2,return yes,return Slayer) elseif ($regex($1,/^farm(er|ing)?$/Si)) $iif($2,return yes,return Farming) elseif ($regex($1,/^(rc|runecraft)(er|ing)?$/Si)) $iif($2,return yes,return Runecraft) elseif ($regex($1,/^cons(truct(ion)?)?$/Si)) $iif($2,return yes,return Construction) elseif ($regex($1,/^hunt(er|ing)?$/Si)) $iif($2,return yes,return Hunter) } alias -l do { return $remove($1,$chr(44)) } ____________________________________________________________________________________________________ alias pest { var %exp $iif($2 != Prayer,$calc(($1 ^2)/6),$calc(($1 ^2)/12)), %xp.diff $calc($exp($3) - $4), %point $calc(%xp.diff / %exp) if (%point >= 100) { var %point $calc(%xp.diff / ((%exp * 0.1)+ %exp)) } return $gettok(%point,1,46) } on $*:text:/^((\[[a-z]{2}\])?Generic )?[@`.,!](Pest|pc)*/Si:#GenericDev,#theclan: { if ($hget(disabled,$chan)) && ($1 != $me) halt if ($1 == $me) tokenize 32 $2- if ($1 != $me) && ($regex($remove($1,$left($1,1)),/(Pc|Pest)/i) != 1) halt if (!$2) $iif($left($1,1) == @,msg $chan,notice $nick) 14You must specify a04 Username14 to lookup! if ($2) { if ($len($2-) > 12) notice $nick 14Usernames must be under a length of 12 characters if ($len($2-) < 12) { inc %statsid 1 set -u60 %StatsType [ $+ [ %statsid ] ] PestControl set -u60 %StatsName [ $+ [ %statsid ] ] $replace($2-,$chr(32),$chr(95),$chr(35),$chr(45)) set -u60 %statsnick [ $+ [ %statsid ] ] $nick set -u60 %statschan [ $+ [ %statsid ] ] $chan set -u60 %statsmsg [ $+ [ %statsid ] ] $iif($left($1,1) == @,msg $chan,notice $nick) sockopen $+(rsstats,%statsid) hiscore.runescape.com 80 } } } ____________________________________________________________________________________________________ on $*:text:/^((\[[a-z]{2}\])?Generic )?[@`.,!](cmb|combat)*/Si:#GenericDev,#theclan: { if ($hget(disabled,$chan)) && ($1 != $me) halt if ($1 == $me) tokenize 32 $2- if ($1 != $me) && ($remove($1,$left($1,1)) != cmb-est) halt if (!$8) $iif($left($1,1) == @,msg $chan,notice $nick) 14Estimates of stats must be in the format of 04A-D-S-H-R-P-M14. if ($2) { var %a = $2 var %d = $3 var %s = $4 var %h = $5 var %r = $6 var %p = $7 var %m = $8 var %def = $calc($3 * 100) var %hp = $calc($5 * 100) var %base = $calc(($calc($3 * 100) + $calc($5 * 100) + $iif($regex($right($7,1),[02468]),$calc($7 * 50),$calc(($7 - 1) * 50))) / 400) var %melee = $calc(($calc($2 * 130) + $calc($4 * 130)) / 400) var %ranger = $calc($iif($regex($right($6,1),[02468]),$calc($6 * 195),$calc(($6 * 195) - 65)) / 400) var %mage = $calc($iif($regex($right($8,1),[02468]),$calc($8 * 195),$calc(($8 * 195) - 65)) / 400) if (%melee > %ranger) && (%melee > %mage) { var %style = Melee var %combat = $calc(%melee + %base) } if (%ranger > %melee) && (%ranger > %mage) { var %style = Ranger var %combat = $calc(%ranger + %base) } if (%mage > %melee) && (%mage > %ranger) { var %style = Mage var %combat = $calc(%mage + %base) } else { var %style = Melee var %combat = $calc(%melee + %base) } $iif($left($1,1) == @,msg $chan,notice $nick) 14Combat Estimate:04 %combat 14(04 $+ %Style Based14) $iif($left($1,1) == @,msg $chan,notice $nick) 14Att:04 $2 14Def:04 $3 14Str:04 $4 14Hits:04 $5 14Range:04 $6 14Pray:04 $7 14Mage:04 $8 } } alias pest { var %exp $iif($2 != Prayer,$calc(($1 ^2)/6),$calc(($1 ^2)/12)), %xp.diff $calc($exp($3) - $4), %point $calc(%xp.diff / %exp) if (%point >= 100) { var %point $calc(%xp.diff / ((%exp * 0.1)+ %exp)) } return $gettok(%point,1,46) } on $*:text:/^((\[[a-z]{2}\])?Generic )?[@`.,!](Pest|pc)*/Si:#GenericDev,#theclan: { if ($hget(disabled,$chan)) && ($1 != $me) halt if ($1 == $me) tokenize 32 $2- if ($1 != $me) && ($regex($remove($1,$left($1,1)),/(Pc|Pest)/i) != 1) halt if (!$3) $iif($left($1,1) == @,msg $chan,notice $nick) 14You must specify a04 Username14 to lookup! if ($3) { if ($len($3-) > 12) notice $nick 14Usernames must be under a length of 12 characters if ($len($3-) < 12) { inc %statsid 1 set -u60 %StatsType [ $+ [ %statsid ] ] PestControl set -u60 %StatsName [ $+ [ %statsid ] ] $replace($3-,$chr(32),$chr(95),$chr(35),$chr(45)) set -u60 %statsnick [ $+ [ %statsid ] ] $nick set -u60 %statschan [ $+ [ %statsid ] ] $chan set -u60 %statsmsg [ $+ [ %statsid ] ] $iif($left($1,1) == @,msg $chan,notice $nick) sockopen $+(rsstats,%statsid) hiscore.runescape.com 80 } } } ___________________________________________________________________________ alias pest { var %exp $iif($2 != Prayer,$calc(($1 ^2)/6),$calc(($1 ^2)/12)), %xp.diff $calc($exp($3) - $4), %point $calc(%xp.diff / %exp) if (%point >= 100) { var %point $calc(%xp.diff / ((%exp * 0.1)+ %exp)) } return $gettok(%point,1,46) } on $*:text:/^((\[[a-z]{2}\])?Generic )?[@`.,!](Pest|pc)*/Si:#GenericDev,#theclan: { if ($hget(disabled,$chan)) && ($1 != $me) halt if ($1 == $me) tokenize 32 $2- if ($1 != $me) && ($regex($remove($1,$left($1,1)),/(Pc|Pest)/i) != 1) halt if ($pctrigger($2,check) != yes) halt if (!$3) $iif($left($1,1) == @,msg $chan,notice $nick) 14You must specify a04 Username14 to lookup! if ($3) { if ($chr(35) == $left($3,1)) { if ($4) {a set -u60 %PcGoal [ $+ [ %statsid ] ] $remove($3,$left($3,1)) } if (!$4) { $iif($left($1,1) == @,msg $chan,notice $nick) 14You must specify a04 Username14 to lookup! halt } } if ($chr(35) == $left($3,1)) && ($4) set -u60 %PcGoal [ $+ [ %statsid ] ] $remove($3,$left($3,1)) if ($len($3-) > 12) notice $nick 14Usernames must be under a length of 12 characters if ($len($3-) < 12) { inc %statsid 1 set -u60 %StatsType [ $+ [ %statsid ] ] PestControl set -u60 %StatsName [ $+ [ %statsid ] ] $replace($iif($chr(35) isin $3,$4-,$3),$chr(32),$chr(95),$chr(35),$chr(45)) set -u60 %statsnick [ $+ [ %statsid ] ] $nick set -u60 %statschan [ $+ [ %statsid ] ] $chan set -u60 %skill [ $+ [ %statsid ] ] $pctrigger($2) set -u60 %statsmsg [ $+ [ %statsid ] ] $iif($left($1,1) == @,msg $chan,notice $nick) sockopen $+(rsstats,%statsid) hiscore.runescape.com 80 } } } alias PcTrigger { if ($regex($1,/^at(t|k|tack)$/Si)) $iif($2,return yes,return Attack) elseif ($regex($1,/^def(en[cs]e)?$$/Si)) $iif($2,return yes,return Defence) elseif ($regex($1,/^str(ength)?$/Si)) $iif($2,return yes,return Strength) elseif ($regex($1,/^hp|hits(points)??$/Si)) $iif($2,return yes,return Hitpoints) elseif ($regex($1,/^range(r|d|ing)?$/Si)) $iif($2,return yes,return Ranged) elseif ($regex($1,/^Pray(er)?$$/Si)) $iif($2,return yes,return Prayer) elseif ($regex($1,/^mag(e|ic)$$/Si)) $iif($2,return yes,return Magic) }