;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Public Skill Lookup ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;; on *:text:,p*:#: { if ($skills($right($1,-2))) { if ($sock(plookup)) .sockclose plookup set %chan $chan set %nick $nick if (!$2-) { set %stats.nick $readini(setnick.ini,RSN,$mask($fulladdress,3)) } else { set %stats.nick $replace($2-,$chr(32),-) } sockopen plookup parsers.o-ss.net 80 } } on *:SOCKOPEN:plookup: { sockwrite -nt $sockname GET /stats.php?user= $+ %stats.nick HTTP/1.1 sockwrite -nt $sockname Host: parsers.o-ss.net sockwrite -nt $sockname $crlf } on *:SOCKREAD:plookup: { if ($sockerr) { msg %chan Socket Error: $sockname $+ . Error code: $sockerr $+ . Please inform an admin of this error message. halt } else { var %read sockread %read if ($+(,%stats.skill,) iswm %read && *Not* !iswm %read ) { tokenize 32 %read set %result 10User: 7 $+ %stats.nick $+  10 $+ $chr(124) Skill: $+ 7 $1 10 $+ $chr(124) Level: $+ 7 $3 10 $+ $chr(124) Rank: $+ 7 $2 10 $+ $chr(124) Exp: $+ 7 $4  msg %chan %result unset %chan unset %nick unset %stats.nick sockclose plookup } elseif (*Not* iswm %read ) { msg %chan 10The user7 %stats.nick 10does not appear in the highscores. unset %chan unset %nick unset %stats.nick sockclose plookup } } } ;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Private Skill Lookup ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;; on *:text:,*:#: { if ($skills($right($1,-1))) { if ($sock(lookup)) .sockclose lookup set %chan $chan set %nick $nick if (!$2-) { set %stats.nick $readini(setnick.ini,RSN,$mask($fulladdress,3)) } else { set %stats.nick $replace($2-,$chr(32),-) } sockopen lookup parsers.o-ss.net 80 } } on *:SOCKOPEN:lookup: { sockwrite -nt $sockname GET /stats.php?user= $+ %stats.nick HTTP/1.1 sockwrite -nt $sockname Host: parsers.o-ss.net sockwrite -nt $sockname $crlf } on *:SOCKREAD:lookup: { if ($sockerr) { notice %nick Socket Error: $sockname $+ . Error code: $sockerr $+ . Please inform an admin of this error message. halt } else { var %read sockread %read if ($+(,%stats.skill,) iswm %read && *Not* !iswm %read ) { tokenize 32 %read set %result 10User: 7 $+ %stats.nick $+  10 $+ $chr(124) Skill: $+ 7 $1 10 $+ $chr(124) Level: $+ 7 $3 10 $+ $chr(124) Rank: $+ 7 $2 10 $+ $chr(124) Exp: $+ 7 $4  notice %nick %result unset %chan unset %nick unset %stats.nick sockclose lookup } elseif (*Not* iswm %read ) { notice %nick 10The user7 %stats.nick 10does not appear in the highscores. unset %chan unset %nick unset %stats.nick sockclose lookup } } } ;;;;;;;;;;;;;;; ;;; Aliases ;;; ;;;;;;;;;;;;;;; alias -l skills { if ($regex($1,/^at(t|k|tack)$/Si)) set %stats.skill Attack* elseif ($regex($1,/^def(ence)?$$/Si)) set %stats.skill Defence* elseif ($regex($1,/^str(ength)?$/Si)) set %stats.skill Strength* elseif ($regex($1,/^hp|hit(s|points?)?$/Si)) set %stats.skill Hitpoints* elseif ($regex($1,/^range(r|d|ing)?$/Si)) set %stats.skill Ranged* elseif ($regex($1,/^Pray(er)?$$/Si)) set %stats.skill Prayer* elseif ($regex($1,/^mag(e|ic)$$/Si)) set %stats.skill Magic* elseif ($regex($1,/^cook(ing)?$/Si)) set %stats.skill Cooking* elseif ($regex($1,/^wc|wood(cut(ting)?)?$/Si)) set %stats.skill Woodcutting* elseif ($regex($1,/^fletch(ing)?$/Si)) set %stats.skill Fletching* elseif ($regex($1,/^fish(ing)?$/Si)) set %stats.skill Fishing* elseif ($regex($1,/^(fire|fm)(make?(ing)?|ing)?$/Si)) set %stats.skill Firemaking* elseif ($regex($1,/^craft(ing)?$/Si)) set %stats.skill Crafting* elseif ($regex($1,/^(smith|smelt)(ing)?$/Si)) set %stats.skill Smithing* elseif ($regex($1,/^min(e|ing)?$/Si)) set %stats.skill Mining* elseif ($regex($1,/^herb(law|lore)?$/Si)) set %stats.skill Herblore* elseif ($regex($1,/^agil(ity)?$/Si)) set %stats.skill Agility* elseif ($regex($1,/^(th(ei|ie)[fv](e|ing)?)$/Si)) set %stats.skill Thieving* elseif ($regex($1,/^slay(er|ing)?$/Si)) set %stats.skill Slayer* elseif ($regex($1,/^farm(er|ing)?$/Si)) set %stats.skill Farming* elseif ($regex($1,/^(rc|runecraft)(er|ing)?$/Si)) set %stats.skill Runecraft* elseif ($regex($1,/^(hunt)(er|ing)?$/si)) set %stats.skill Hunter* elseif ($regex($1,/^(con)(struc?tion)?$/si)) set %stats.skill Construction* }