All pastes #614521 Raw Edit

check plz

public text v1 · immutable
·published 2007-07-11 16:37 UTC
rendered paste body
on $*:TEXT:$(/^(?>\Q $+ $me $+ \E,? ?)?([!.@~].*)/Si):*:{ 
  /tokenize 32 $iif($me isin $1,$deltok($1-,1,32),$1-) 
  ;;; Check if it's a valid skill, sockopen, and set vars. ;;; 
  if ($+(*,$left($1,1),*) iswm !@.) { 
    if ($getskill($right($1,-1))) { 
      if ($right($1,-1) == define) { /halt } 
      /var %x = 1 
      /while ($sock(skills. $+ %x)) { 
        /inc %x 
      } 
      if (*#* iswm $1-) { 
        /set %level. $+ %x $right($2,-1) 
      } 
      if (!$2) { 
        if ($readini(rsns.ini, n, RSNs, $nick)) { /set %rsn. $+ %x $readini(rsns.ini, n, RSNs, $nick) } 
        if ($readini(rsns.ini, n, RSNs, $address($nick,3))) { /set %rsn. $+ %x $readini(rsns.ini, n, RSNs, $address($nick,3)) } 
        if (!$readini(rsns.ini, n, RSNs, $address($nick,3))) && (!$readini(rsns.ini, n, RSNs, $nick)) { /.notice $nick You don't have a DEFNAME.  !Defname <RSN> | /halt } 
      } 
      if (!$3) && (#* iswm $2) { 
        if ($readini(rsns.ini, n, RSNs, $nick)) { /set %rsn. $+ %x $readini(rsns.ini, n, RSNs, $nick) } 
        if ($readini(rsns.ini, n, RSNs, $address($nick,3))) { /set %rsn. $+ %x $readini(rsns.ini, n, RSNs, $address($nick,3)) } 
        if (!$readini(rsns.ini, n, RSNs, $address($nick,3))) && (!$readini(rsns.ini, n, RSNs, $nick)) { /.notice $nick You don't have a DEFNAME.  !Defname <RSN> | /halt } 
      } 

      /set %target. $+ %x $iif($left($1,1) == @ && ($nick !isreg $chan),.msg $chan,.notice $nick) 
      $iif(!%rsn. [ $+ [ %x ] ], /set %rsn. $+ %x $iif(*#* !iswm $1-,$replace($2-,$chr(32),+),$replace($3-,$chr(32),+)),$null) 
      /set %skill. $+ %x $getskill($right($1,-1)) 
      /sockopen skills. $+ %x www.o-ss.net 80 
      /halt 
    } 
  } 
} 
alias -l /cleanupskills { 
  ;;; Clean up the socket, unset vars, close it ;;; 
  /sockclose $1 
  /unset %target. $+ $right($1,1) 
  /unset %rsn. $+ $right($1,1) 
  /unset %skill. $+ $right($1,1) 
  /unset %level. $+ $right($1,1) 
} 
on *:sockopen:skills.*: { 
  ;;; 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:skills.*: { 
  ;;; Get the data, tokenize, and do checks to output. ;;; 
  if ($sockerr) /return 
  /var %x = $right($sockname,1) 
  /var %n = %target. [ $+ [ %x ] ] 
  /var %read 
  /sockread %read 
  /tokenize 32 %read 
  /var %skill = %skill. [ $+ [ %x ] ] 
  if (*</TITLE>* iswm $1-) { %target. [ $+ [ %x ] ] $replace(%rsn. [ $+ [ %x ] ],+,$chr(32)) Does Not Feature in the Hi-Scores for %skill. [ $+ [ %x ] ] $+ . | /cleanupskills $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 ] ] $+ $upper($left(%skill. [ $+ [ %x ] ],1)) $+ $right(%skill. [ $+ [ %x ] ],-1) Stats for $replace(%rsn. [ $+ [ %x ] ],+,$chr(32)) are: | %target. [ $+ [ %x ] ] Level: $2 EXP: $3 Rank: $1 $iif(%skill. [ $+ [ %x ] ] != overall, EXP to level $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : $bytes($CALC($xp($iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)))-($remove($3,$chr(44)))),b),$null) 
    /set %xp2lvl $CALC($xp($iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)))-($remove($3,$chr(44)))) 
    $iif(%skill == Agility,%n Laps `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [gnome] $item(86.5) [barb] $item(139.5) [wereWolf] $item(540) [wild] $item(571.5)) 
    $iif(%skill == Attack,%n Monsters `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [magicAxe] $item(176) [mGiant] $item(240) [eWarrior] $item(216) [sWarrior] $item(268) [iGiant] $item(284) [iWarrior] $item(236) [bandit] $item(200) [ogre] $item(244) [troll] $item(364) [dag74] $item(280) [gDragon] $item(308) [lDemon] $item(320) [fGiant] $item(444) [giantSkele] $item(280) [dag92] $item(480) [gDemon] $item(356) [aDemon] $item(600)) 
    $iif(%skill == Cooking,%n Items `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [tuna] $item(100) [wine] $item(110) [lob] $item(120) [bass] $item(130) [sword] $item(140) [lavaEel] $item(140) [curry] $item(251) [shark] $item(210) [turtle] $item(212) [mRay] $item(216)) 
    $iif(%skill == Crafting,%n Items `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) %+ : [bString] $item(15) [oilLamp] $item(25) [lBody] $item(25) [symbol] $item(50) [sSickle] $item(50) [hlBody] $item(35) [coif] $item(37) [slBody] $item(65) [orb] $item(52.5) [bLens] $item(55) [rAmulet] $item(85) $chr(124) D`hide bodies till $2 $+ : [green] $item(186) [blue] $item(210) [red] $item(234) [black] $item(258)) 
    $iif(%skill == Defence,%n Monsters `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [magicAxe] $item(176) [mGiant] $item(240) [eWarrior] $item(216) [sWarrior] $item(268) [iGiant] $item(284) [iWarrior] $item(236) [bandit] $item(200) [ogre] $item(244) [troll] $item(364) [dag74] $item(280) [gDragon] $item(308) [lDemon] $item(320) [fGiant] $item(444) [giantSkele] $item(280) [dag92] $item(480) [gDemon] $item(356) [aDemon] $item(600)) 
    $iif(%skill == Farming,%n Harvests `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [potato] $item(9) [marigold] $item(47) [onion] $item(10.5) [cabbage] $item(12) [tomato] $item((25/6)) [nasturtium] $item(111) [woad] $item((115/3)) [limpRoot] $item(40) [waterMelon] $item(54.5) $chr(124) Check-Healths `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [oak] $item(467.5) [willow] $item(1456) [maple] $item(3403) [yew] $item(7069.5) [magic] $item(13769)) 
    $iif(%skill == Firemaking,%n Logs `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [normal] $item(40) [oak] $item(60) [willow] $item(90) [teak] $item(105) [maple] $item(135) [mahogany] $item(157.5) [yew] $item(202.5) [magic] $item(303.75) $chr(124) Pyre logs `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [normal] $item(60) [oak] $item(70) [willow] $item(100) [maple] $item(175) [yew] $item(255) [magic] $item(405)) 
    $iif(%skill == Fishing,%n Fish `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [trout] $item(50) [cod] $item(45) [pike] $item(60) [salmon] $item(70) [tuna] $item(80) [lob] $item(90) [bass] $item(100) [sword] $item(100) [shark] $item(110)) 
    $iif(%skill == Fletching,%n Full bows `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+($chr(40),short,$chr(47),long,$chr(41),$chr(58)) [normal] $+($item(10),$chr(47),$item(20)) [oak] $+($item(33),$chr(47),$item(50)) [willow] $+($item(66.5),$chr(47),$item(83)) [maple] $+($item(100),$chr(47),$item(116.5)) [yew] $+($item(135),$chr(47),$item(150)) [magic] $+($item(166.5),$chr(47),$item(183)) $chr(124) Arrows `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [bronze] $item((19/30)) [iron] $item((23/6)) [steel] $item((19/3)) [mithril] $item((53/6)) [admnt] $item((34/3)) [rune] $item((125/9))) 
    $iif(%skill == Herblore,%n Potions `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [attack] $item(25) [antiPoison] $item(37.5) [dCure] $item(40) [str] $item(50) [statRestre] $item(63) [energy] $item(67.5) [defence] $item(75) [agility] $item(80) [prayRestore] $item(87.5) [sAttack] $item(100) [sAnti] $item(106) [fish] $item(113) [sEnergy] $item(118) [sStr] $item(125) [wPoison] $item(137.5) [sRestore] $item(142) [sDefence] $item(150) [wPoison+] $item(165) [antiFire] $item(158) [range] $item(165) [magic] $item(172.5) [zamorak] $item(175) [saradomin] $item(180)) 
    $iif(%skill == Hitpoints,%n Monsters `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [magicAxe] $hpitem(44) [mGiant] $hpitem(60) [eWarrior] $hpitem(54) [sWarrior] $hpitem(67) [iGiant] $hpitem(71) [iWarrior] $hpitem(59) [bandit] $item(50) [ogre] $hpitem(61) [troll] $hpitem(91) [dag74] $hpitem(70) [gDragon] $hpitem(77) [lDemon] $hpitem(80) [fGiant] $hpitem(111) [giantSkele] $hpitem(70) [dag92] $hpitem(120) [gDemon] $hpitem(89) [aDemon] $hpitem(150)) 
    $iif(%skill == Magic,%n Spells `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [lowAlch] $item(31) [failfBolt] $item(34.5) [failCrumble] $item(32) [teleGrab] $item(43) [heatItem] $item(53) [camTele] $item(55.5) [failsDart] $item(52) [highAlch] $item(65) [enfeeble] $item(83) [lumteleOther] $item(84) [charge] $item(180) [stun] $item(90) [falteleOther] $item(92) [teleBlock] $item(95) [camteleOther] $item(100) $chr(124) Mage training area: [eDiamond] $item(50) [eDragon] $item(58) [eOnyx] $item(72.75)) 
    $iif(%skill == Mining,%n Ores `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [runeEssence] $item(5) [copper/tin] $item(17.5)  [iron] $item(35) [silver] $item(40) [coal] $item(50) [gemRock] $item(65) [gold] $item(65) [mithril] $item(80) [admnt] $item(95) [runite] $item(125)) 
    $iif(%skill == Prayer,%n Bones `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [regular] $item(4.4) [big] $item(15) [babyDragon] $item(30) [dragon] $item(72.5) [fayrg] $item(84) [raurg] $item(96) [ourg] $item(140) $chr(124) Worships `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [dragon] $item(288) [fayrg] $item(336) [raurg] $item(384) [ourg] $item(560)) 
    $iif(%skill == Ranged,%n Monsters `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [magicAxe] $item(176) [mGiant] $item(240) [eWarrior] $item(216) [sWarrior] $item(268) [iGiant] $item(284) [iWarrior] $item(236) [bandit] $item(200) [ogre] $item(244) [troll] $item(364) [dag74] $item(280) [gDragon] $item(308) [lDemon] $item(320) [fGiant] $item(444) [giantSkele] $item(280) [dag92] $item(480) [gDemon] $item(356) [aDemon] $item(600)) 
    $iif(%skill == Runecraft,%n Essence `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [air] $item(5) [mind] $item(5.5) [water] $item(6) [mist] $item(8.25) [earth] $item(6.5) [dust] $item(8.65) [mud] $item(9.4) [fire] $item(7) [smoke] $item(9) [steam] $item(9.75) [body] $item(7.5) [lava] $item(10.25) [cosmic] $item(8) [chaos] $item(8.5) [nature] $item(9) [law] $item(9.5)) 
    $iif(%skill == Slayer,%n Monsters `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [magicAxe] $slayitem(176) [mGiant] $slayitem(240) [eWarrior] $slayitem(216) [sWarrior] $slayitem(268) [iGiant] $slayitem(284) [iWarrior] $slayitem(236) [bandit] $slayitem(50) [ogre] $slayitem(244) [troll] $slayitem(364) [dag74] $slayitem(280) [gDragon] $slayitem(308) [lDemon] $slayitem(320) [fGiant] $slayitem(444) [dag92] $slayitem(480) [gDemon] $slayitem(356) [aDemon] $slayitem(600)) 
    $iif(%skill == Strength,%n Monsters `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [magicAxe] $item(176) [mGiant] $item(240) [eWarrior] $item(216) [sWarrior] $item(268) [iGiant] $item(284) [iWarrior] $item(236) [bandit] $item(200) [ogre] $item(244) [troll] $item(364) [dag74] $item(280) [gDragon] $item(308) [lDemon] $item(320) [fGiant] $item(444) [giantSkele] $item(280) [dag92] $item(480) [gDemon] $item(356) [aDemon] $item(600)) 
    $iif(%skill == Smithing,%n Items `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [Smelt] [bronze] $item(6.5) [iron] $item(12.5) [silver] $item(13.7) [steel] $item(17.5) [gold] $item(22.5) [goldGaunts] $item(56.25) [mithril] $item(30) [admnt] $item(37.5) [runite] $item(50) [smithPlates] [b] $item(62.5) [i] $item(125) [s] $item(187.5) [m] $item(250) [a] $item(312.5) [r] $item(375) [Both] [b] $item(95) [i] $item(197.5) [s] $item(275) [m] $item(400) [a] $item(500) [r] $item(625)) 
    $iif(%skill == Thieving,%n NPCs `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [warrior] $item(26) [rogue] $item(35.5) [mstrFarmer] $item(43) [guard] $item(46.5) [fremenik] $item(65) [bandit] $item(80) [knight] $item(84.3) [paladin] $item(151.8) [gnome] $item(198.5) [hero] $item(273.3) [elf] $item(352.25) $chr(124) Chests `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [nature] $item(25) [coins(50)] $item(125) [arwHeads] $item(150) [wallSafe] $item(70) [bloodRune] $item(250) [paladin] $item(500)) 
    $iif(%skill == Woodcutting,%n Logs `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [normal/achey] $item(25) [oak] $item(37.5) [willow] $item(67.5) [teak] $item(85) [hollow] $item(82.5) [maple] $item(100) [mahogany] $item(125) [yew] $item(175) [magic] $item(250)))) 
    $iif(%skill == Construction,%n Items `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : [Chairs] [wood/rock] $item(87) [oak] $item(120) [oakArm/teak] $item(180) [mahogany] $item(280) [BkCases]: [wood] $item(115) [oak] $item(180) [mahogany] $item(420) [Larders]: [wood] $item(228) [oak] $item(480) [teak] $item(750) [Wardrobes]: [sBox] $item(58) [oDraws] $item(120) [oak/tDraws] $item(180) [teak] $item(270) [mahogany] $item(420) [gilded] $item(720)) 
    $iif(%skill == Hunter,%n Items `till $iif(%level. [ $+ [ %x ] ],%level. [ $+ [ %x ] ],$calc($2 + 1)) $+ : Under Construction! :D) 
    /unset %xp2lvl 
    /cleanupskills $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,/^cook(ing)?/Si)) return cooking 
  elseif ($regex($1,/^wc|wood(cut(ting)?)?/Si)) return woodcutting 
  elseif ($regex($1,/^fletch(ing)?/Si)) return fletching 
  elseif ($regex($1,/^fish(ing)?/Si)) return fishing 
  elseif ($regex($1,/^(fire|fm)(make?(ing)?|ing)?/Si)) return Firemaking 
  elseif ($regex($1,/^craft(ing)?/Si)) return crafting 
  elseif ($regex($1,/^(smith|smelt)(ing)?/Si)) return smithing 
  elseif ($regex($1,/^min(e|ing)?/Si)) return mining 
  elseif ($regex($1,/^herb(law|lore)?/Si)) return herblore 
  elseif ($regex($1,/^agil(ity)?/Si)) return agility 
  elseif ($regex($1,/^(th(ei|ie)[fv](e|ing)?)/Si)) return thieving 
  elseif ($regex($1,/^slay(er|ing)?/Si)) return slayer 
  elseif ($regex($1,/^farm(er|ing)?/Si)) return farming 
  elseif ($regex($1,/^(rc|runecraft)(er|ing)?/Si)) return runecraft 
  elseif ($regex($1,/^(poh|Construct)(ion|ing)?/Si)) return construction 
  elseif ($regex($1,/^str(ength)?/Si)) return strength 
} 
alias -l slayitem { 
  return $+ $bytes($ceil($calc(%xp2lvl / ( $$1 * (4 / 3)))),b) 
} 
alias -l hpitem { 
  return $+ $bytes($ceil($calc(%xp2lvl / ( $$1 * (4 / 3)))),b) 
} 
alias -l item { 
  return $+ $bytes($ceil($calc(%xp2lvl / $$1 )),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) 
}