All pastes #210001 Raw Edit

Mine

public text v1 · immutable
#210001 ·published 2006-10-19 13:28 UTC
rendered paste body
}

/* 
Coded by Pc_Dark 
OSS Team - #OSS 
IRC.SwiftIRC.net 
!pest <Stat> <RSN> 
@pest <stat> <rsn> 
*/ 
on $*:TEXT:/^[!@.](pc|pest) */Si:#: { 
  ;;; Check if it's a valid skill, sockopen, and set vars. ;;; 
  if ($getskill($2)) { 
    /var %x = 1 
    /while ($sock(pc. $+ %x)) { 
      /inc %x 
    } 
    if (#* iswm $4) { 
      /notice $nick Syntax: !Pest <Skill> <RSN>  - Alternative: !Pest <Skill> <Level To Get> <RSN> 
      /halt 
    } 
    if (#* iswm $3) { 
      /set %level. $+ %x $right($3,-1) 
    } 
    ;;; Set Vars ;;; 
    /set %target. $+ %x $iif($left($1,1) == @,msg $chan,.notice $nick) 
    /set %rsn. $+ %x $iif(*#* !iswm $3,$replace($3-,$chr(32),+),$replace($4-,$chr(32),+)) 
    /set %skill. $+ %x $getskill($2) 
    /sockopen pc. $+ %x www.o-ss.net 80 
    /halt 
  } 
  /notice $nick Specify a valid skill to look up.  EX: !pest attack Pc_Darkness 
} 
alias -l cleanup { 
  ;;; Clean up the socket, unset vars, close it ;;; 
  /sockclose $1 
  /unset %level. $+ $right($1,1) 
  /unset %target. $+ $right($1,1) 
  /unset %rsn. $+ $right($1,1) 
  /unset %skill. $+ $right($1,1) 
} 
on *:sockopen:pc.*: { 
  ;;; Go to the file ;;; 
  /var %x = $right($sockname,1) 
  if ($sockerr > 0) /return 
  /sockwrite -nt $sockname GET $+(/parsers/skills.php?user=,%rsn. [ $+ [ %x ] ],&skill=,%skill. [ $+ [ %x ] ]) HTTP/1.1 
  /sockwrite -nt $sockname Host: www.o-ss.net 
  /sockwrite -nt $sockname $crlf $crlf 
} 
on *:sockread:pc.*: { 
  ;;; Get the data, tokenize, and do checks to output. ;;; 
  if ($sockerr) /return 
  /var %x = $right($sockname,1) 
  /var %read | /sockread %read 
  /tokenize 32 %read 
  if (*</TITLE>* iswm $1-) { %target. [ $+ [ %x ] ] $replace(%rsn. [ $+ [ %x ] ],+,$chr(32)) Does Not Feature in the Hi-Scores for %skill. [ $+ [ %x ] ] $+ . | /cleanup $sockname | /halt } 
  if ($3 == does) { %target. [ $+ [ %x ] ] $replace(%rsn. [ $+ [ %x ] ],+,$chr(32)) Does Not feature in the Hi-Scores. | /cleanup $sockname | /halt } 
  if ($0 == 4) { %target. [ $+ [ %x ] ] Pest control points needed to get level $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc(($2)+1)) in %skill. [ $+ [ %x ] ] $+ : $iif(%level. [ $+ [ %x ] ],$pestget(%skill. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($xp(%level. [ $+ [ %x ] ])-($remove($3,$chr(44))))),$pestget(%skill. [ $+ [ %x ] ],$calc(($2)+1),$calc($xp($calc($2 + 1))- $remove($3,$chr(44))))) | /cleanup $sockname } 
} 
alias -l /getskill { 
  ;;; Regex to return skills ;;; 
  if ($regex($1,/^over(all)?/Si)) return overall 
  elseif ($regex($1,/^at(t|k|tack)?/Si)) return attack 
  elseif ($regex($1,/^def(en[cs]e)?/Si)) return defence 
  elseif ($regex($1,/^hp|hit(s|points?)?/Si)) return hitpoints 
  elseif ($regex($1,/^range(r|d|ing)?/Si)) return ranged 
  elseif ($regex($1,/^Pray(er)?/Si)) return prayer 
  elseif ($regex($1,/^mag(e|ic)?/Si)) return magic 
  elseif ($regex($1,/^str(ength)?/Si)) return strength 
} 
alias /pest { 
  ;;; Pest alias to retrive skill points per ticket ;;; 
  /var %type = $iif($1 == prayer,12,6) 
  /return $ceil($calc(($2)*($2)/(%type))) 
} 
alias /pestget { 
  ;;; Gets amount of tickets. ;;; 
  /var %skill = $1 
  /var %exp = $remove($3,$chr(44)) 
  /var %level = $2 
  /var %gstring = $pest(%skill,%level) 
  /return $bytes($ceil($calc((%exp)/(%gstring))),b) 
} 
alias /xp { 
  ;;; Calculates XP to level ;;; 
  /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 
  } 
  /return $int(%xp)