All pastes #830876 Raw Edit

Something

public text v1 · immutable
#830876 ·published 2007-12-24 10:14 UTC
rendered paste body
  if ($regex(%type,/^c(mb|ombat)$/Si)) {
    var %x, %y = 1, %z = 7
    while (%y <= %z) {
      tokenize 44 $hget(%rsn,$setskill(%y))
      set -l $+(%,$setskill(%y)) $iif($2 > 0,$2,$iif($setskill(%y) == Hitpoints,10,1))
      $iif(!%ranked,set -l %ranked $iif($calc($1 + 1),$v1))
      %x = %x $c1($+($setskill(%y),:)) $c2($iif($2 > 0,$v1,-))
      inc %y
    }
    if (%ranked) {
      %stats.b = %x
      var %a = $calc(%defence * 100), %b = $calc(%hitpoints * 100), %c = $calc($iif($right(%prayer,1) isin 13579,$calc(%prayer - 1),%prayer) * 50), %d = $calc(%attack * 130), %e = $calc(%strength * 130)
      if ($right(%ranged,1) isin 13579) var %f = $calc(((%ranged - 1) + (%ranged * 2)) * 65)
      else var %f = $calc(%ranged * 195)
      if ($right(%magic,1) isin 13579) var %g = $calc(((%magic - 1) + (%magic * 2)) * 65)
      else var %g = $calc(%magic * 195)
      var %base = $calc((%a + %b + %c) / 400), $&
        %melee = $calc((%d + %e) / 400), %range = $calc(%f / 400), %mage = $calc(%g / 400), $&
        %cmb = $calc(%base + $gettok($sorttok(%melee %range %mage,32,n),-1,32)), %cmbstyle, %cmb.temp = $abs($calc($int($calc(%cmb +1)) - %cmb))
      if (%melee > %range) && (%melee > %mage) %cmbstyle = melee
      else {
        if (%mage > %range) %cmbstyle = mage
        else %cmbstyle = ranged
      }
      var %a.2lvl = $ceil($calc(%cmb.temp / .325)), %s.2lvl = $ceil($calc(%cmb.temp / .325)), $&
        %d.2lvl = $ceil($calc(%cmb.temp / .25)), %m.2lvl = $ceil($calc(%cmb.temp / .485)), $&
        %r.2lvl = $ceil($calc(%cmb.temp / .485)), %p.2lvl = $ceil($calc(%cmb.temp / .125))
      if (%cmbstyle == melee) var %dynamic.2lvl = $iif(%attack != 99,$c1(Attack:) $c2(%a.2lvl)) $iif(%strength != 99,$c1(Strength:) $c2(%s.2lvl))
      if (%cmbstyle == magic) var %dynamic.2lvl = $iif(%magic != 99,$c1(Magic:) $c2(%m.2lvl))
      if (%cmbstyle == ranged) var %dynamic.2lvl = $iif(%ranged != 99,$c1(Ranged:) $c2(%r.2lvl))
      %stats.a = $+($chr(2),$c2([),$chr(2),%rsn,$chr(2),$c2(]),$chr(2)) $c1(is) $c2(%cmb) $c1(%cmbstyle style combat.)
      %stats.c = $iif($calc($int(%cmb) + 1) isnum 1-126,$+($chr(2),$c1([),$chr(2),$c1(For level) $c2($calc($int(%cmb) + 1)),$chr(2),$c1(]),$chr(2),$c1(:)) %dynamic.2lvl $iif(%defence != 99,$c1(Defence) $c2(%d.2lvl)) $iif(%hitpoints != 99,$c1(Hitpoints:) $c2(%d.2lvl)) $iif(%prayer != 99,$c1(Prayer:) $c2(%p.2lvl)))
    }
    else %stats.a = $c1(The nick) $c2(%rsn) $c1(does not appear in the hiscores for any combat skills.)
    hfree %rsn
  }