All pastes #636091 Raw Edit

Someone

public text v1 · immutable
#636091 ·published 2007-07-27 16:42 UTC
rendered paste body
alias altcol return $regsubex($1-,/(\S+(?:$| ))(\S+)?/g,$+($chr(3),04,\1,$chr(3),02,\2))
alias altcol2 return $regsubex($1-,/(\S+(?:$| ))(\S+)?/g,$+($chr(3),02,\1,$chr(3),04,\2))
alias -l exp { return $gettok(0 83 174 276 388 512 650 801 969 1154 1358 1584 1833 2107 2411 2746 3115 3523 3973 4470 5018 5624 6291 7028 7842 8740 9730 10824 12031 13363 14833 16456 18247 20224 22406 24815 27473 30408 33648 37224 41171 45529 50339 55649 61512 67983 75127 83014 91721 101333 111945 123660 136594 150872 166636 184040 203254 224466 247886 273742 302288 333804 368599 407015 449428 496254 547953 605032 668051 737627 814445 899257 992895 1096278 1210421 1336443 1475581 1629200 1798808 1986068 2192818 2421087 2673114 2951373 3258594 3597792 3972294 4385776 4842295 5346332 5902831 6517253 7195629 7944614 8771558 9684577 10692629 11805606 13034431 14391160,$1,32) }
alias -l amounts {
  if ($1 == Attack) { return Chickens: $ceil($calc($2 / 12)) Rock Crabs: $ceil($calc($2 / 200)) Experiments: $ceil($calc($2 / 400)) Fire Giants: $ceil($calc($2 / 448)) }
  if ($1 == Defence) { return Chickens: $ceil($calc($2 / 12)) Rock Crabs: $ceil($calc($2 / 200)) Experiments: $ceil($calc($2 / 400)) Fire Giants: $ceil($calc($2 / 448)) }
  if ($1 == Strength) { return Chickens: $ceil($calc($2 / 12)) Rock Crabs: $ceil($calc($2 / 200)) Experiments: $ceil($calc($2 / 400)) Fire Giants: $ceil($calc($2 / 448)) }
  if ($1 == Hitpoints) { return Chickens: $ceil($calc($2 / 3.99)) Rock Crabs: $ceil($calc($2 / 66.5)) Lesser Demons: $ceil($calc($2 / 105.07)) Fire Giants: $ceil($calc($2 / 148.96)) }
  if ($1 == Ranged) { return Chickens: $ceil($calc($2 / 12)) Rock Crabs: $ceil($calc($2 / 200)) Lesser Demons: $ceil($calc($2 / 328)) Fire Giants: $ceil($calc($2 / 448)) }
  if ($1 == Prayer) { return Bones: $ceil($calc($2 / 4.5)) Big Bones: $ceil($calc($2 / 15)) Dragon Bones: $ceil($calc($2 / 72)) Guilded altar and dragon bones: $ceil($calc($2 / 448)) }
  if ($1 == Magic) { return Camelot Teleport: $ceil($calc($2 / 55.5)) High Alchemy: $ceil($calc($2 / 65)) Lvl-5 Enchant: $ceil($calc($2 / 78)) Stun: $ceil($calc($2 / 90)) }
  if ($1 == Cooking) { return Salmon: $ceil($calc($2 / 90)) Lobsters: $ceil($calc($2 / 120)) Shark: $ceil($calc($2 / 210)) Monkfish: $ceil($calc($2 / 150))  }
  if ($1 == Woodcutting) { return Normal logs: $ceil($calc($2 / 25)) Willow: $ceil($calc($2 / 67.5)) Maples: $ceil($calc($2 / 100)) Magic: $ceil($calc($2 / 250)) }
  if ($1 == Fletching) { return Shortbow: $ceil($calc($2 / 10)) Maple Shortbow: $ceil($calc($2 / 100)) Yew longbow: $ceil($calc($2 / 150)) Magic Longbow: $ceil($calc($2 / 183)) }
  if ($1 == Fishing) { return Salmon: $ceil($calc($2 / 30)) Lobster: $ceil($calc($2 / 90)) Monkfish: $ceil($calc($2 / 120)) Shark: $ceil($calc($2 / 110)) }
  if ($1 == Firemaking) { return Regular Logs: $ceil($calc($2 / 40)) Willow: $ceil($calc($2 / 90)) Maple: $ceil($calc($2 / 135)) Yew: $ceil($calc($2 / 202.5)) }
  if ($1 == Crafting) { return Bow strings: $ceil($calc($2 / 15)) Hard leather body: $ceil($calc($2 / 35)) Green Body: $ceil($calc($2 / 186)) Black Body: $ceil($calc($2 / 258)) }
  if ($1 == Smithing) { return Bronze Bar: $ceil($calc($2 / 6)) Steel Plate: $ceil($calc($2 / 187)) Mith Plate: $ceil($calc($2 / 250)) Gold bar with guantlets: $ceil($calc($2 / 56.5)) }
  if ($1 == Mining) { return Iron: $ceil($calc($2 / 35)) Coal: $ceil($calc($2 / 50)) Adamant: $ceil($calc($2 / 95)) Rune: $ceil($calc($2 / 120)) }
  if ($1 == Herblore) { return Attack Potion: $ceil($calc($2 / 25)) Prayer Potion: $ceil($calc($2 / 87.5)) Super Attack Potion: $ceil($calc($2 / 100)) Super Srength Potion: $ceil($calc($2 / 125)) }
  if ($1 == Agility) { return Gnome Stronghold: $ceil($calc($2 / 86.5)) Barbarian: $ceil($calc($2 / 139.5)) Wilderness: $ceil($calc($2 / 571)) Ape Atoll: $ceil($calc($2 / 580)) }
  if ($1 == Thieving) { return Cake Stall: $ceil($calc($2 / 16)) Master Farmer: $ceil($calc($2 / 43)) Gaurd: $ceil($calc($2 / 46.8)) Elf: $ceil($calc($2 / 353.3)) }
  if ($1 == Slayer) { return Chickens: $ceil($calc($2 / 4)) Rock Crabs: $ceil($calc($2 / 50)) Lesser Demons: $ceil($calc($2 / 82)) Fire Giants: $ceil($calc($2 / 112)) }
  if ($1 == Farming) { return Oak: $ceil($calc($2 / 467.5)) Willow: $ceil($calc($2 / 1456.5)) Maple: $ceil($calc($2 / 3403)) Yew: $ceil($calc($2 / 7069.5)) }
  if ($1 == Runecraft) { return Fire: $ceil($calc($2 / 7)) Nature: $ceil($calc($2 / 9)) Law: $ceil($calc($2 / 9.5)) Death: $ceil($calc($2 / 10)) }
  if ($1 == Hunter) { return Wild Kebbit: $ceil($calc($2 / 128)) Prickly Kebbit: $ceil($calc($2 / 204)) Red Chinchompa: $ceil($calc($2 / 265)) Imp: $ceil($calc($2 / 450)) }
  if ($1 == Construction) { return Carved Oak Table: $ceil($calc($2 / 360)) Oak Lardar: $ceil($calc($2 / 480)) Oak dungeon door: $ceil($calc($2 / 600)) Mahogany Table: $ceil($calc($2 / 840)) }
}

on $*:text:/^[.!@](defname|setrsn)/Si:#:{ 
  if (!$2) { notice $nick We need a name to default. }
  if ($2) { writeini -n defname.ini DefName $address($nick,2) $2 | notice $nick Defname saved. }
}
on $*:text:/^[!@]stats/Si:#: {
  var %sckid = 1
  while ($sock($+(rsstats,.,%sckid))) { inc %sckid }
  set %RSplayway. [ $+ [ %sckid ] ] $iif($left($1,1) == @, msg $chan, notice $nick)
  sockopen Rsstats. [ $+ [ %sckid ] ] www.slushpuppy.silverinterlocution.org 80
  set %player. [ $+ [ %sckid ] ] $iif($2,$2,$iif($readini(DefName.ini,DefName,$address($nick,2)),$v1,$nick))
}
on *:SOCKOPEN:rsstats.*: {
  sockwrite -nt $sockname GET /rsstats.php?stats= $+ %player. [ $+ [ $gettok($sockname,2,46) ] ] HTTP/1.1
  sockwrite -nt $sockname Host: www.slushpuppy.silverinterlocution.org
  sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:rsstats.*: {
  if ($sockerr) { notice Jcfc SOCKET ERROR: $sockerr }
  else {
    var %sockreader
    sockread %sockreader
    if (The Combat level* iswm %sockreader) {
      tokenize 32 %sockreader
      set %combnstuff. [ $+ [ $gettok($sockname,2,46) ] ] 02 All stats for %player 1~ 4Combat level 02 $+ $7 $+ 2 $8 based)1 ~ 
    }
    if (*Overall:* iswm %sockreader. [ $+ [ %sckid ] ]) {
      tokenize 32 %sockreader. [ $+ [ %sckid ] ]
      %rsplayway. [ $+ [ $gettok($sockname,2,46) ] ] 02 $+ %combnstuff. [ $+ [ $gettok($sockname,2,46) ] ] 04 $+ $1 02 $+ $2
      %rsplayway. [ $+ [ $gettok($sockname,2,46) ] ] $altcol($remove($3-,<br>)))
      unset %rsplayway. [ $+ [ $gettok($sockname,2,46) ] ]
      .sockclose rsstats. [ $+ [ %sckid ] ]
      unset %player. [ $+ [ $gettok($sockname,2,46) ] ]
    }
    if (*Does not feature* iswm %sockreader. [ $+ [ %sckid ] ]) {
      tokenize 32 %sockreader
      %rsplayway. [ $+ [ $gettok($sockname,2,46) ] ] 4 $+ $1 2is one of the select few to be bad enough to 4not be in the highscores.
    }
  }
}

on *:TEXT:*:#:{ 
  if $skill2($right($1,-1)) == no match { halt }
  if ($sock(rssingle)) .sockclose rssingle
  set %RSplayway $iif($left($1,1) == @, msg $chan, notice $nick)
  set %player $iif($iif($left($2,1) == $chr(35),$3-,$2-),$v1,$iif($readini(DefName.ini,DefName,$address($nick,2)),$v1,$nick))
  set %lvlwant $iif($left($2,1) == $chr(35),$right($2,-1),next)
  set %rssingle $skill2($right($1,-1))
  sockopen rssingle www.o-ss.net 80
} 
on *:SOCKOPEN:rssingle*: {
  sockwrite -nt $sockname GET /parsers/stats.php?user= $+ %player HTTP/1.1
  sockwrite -nt $sockname Host: www.o-ss.net
  sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:rssingle*: {
  if ($sockerr) { notice Jcfc SOCKET ERROR: $sockerr }
  else {
    var %sockreader
    sockread %sockreader
    if (* $+ %rssingle $+ * iswm %sockreader) {
      tokenize 32 %sockreader
      if ($3 == ranked) { %rsplayway 4 $+ %player 2is one of the select few to be bad enough to not be in the highscores for 4 $+ %rssingle $+ . | unset %player | sockclose $sockname | halt }
      set %xptonext $bytes($calc($exp($iif(%lvlwant != next,%lvlwant,$calc($3 + 1))) - $remove($4,$chr(44))),bd)
      %rsplayway 4 $+ %rssingle $altcol(information for %player $+ : Level: $3 Rank: $2 Xp: $4 Xp to) 4level 02 $+ $iif(%lvlwant == next,$calc($3 + 1),%lvlwant) $+ :4 %xptonext 
      %rsplayway $altcol2($amounts(%rssingle,$remove(%xptonext,$chr(44))))
      unset %sockreader
      unset %xptolevel
      .sockclose rssingle
      unset %player
    }
  }
}
alias skill2 { 
  if ($regex($1,/^(over(all)?|total)$/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,/^str(ength)?$/Si)) return Strength 
  elseif ($regex($1,/^hp|hit(s|points?)?$/Si)) return Hitpoints 
  elseif ($regex($1,/^r(ng|ange|anging)?$/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,/^(construct)(ion|ing)?$/si)) return Construction
  elseif ($regex($1,/^(hunt)(er|ing)?$/si)) return Hunter
  else { return no match }
}