rsn { if ($2) { return $2 } if ($readini(RSN.ini,n,RSNs,$+ $address($1,3))) { return $ifmatch } else { return $1 } } rsname { if ($4) { return $4 } if ($readini(RSN.ini,n,RSNs,$+ $address($1,3))) { return $ifmatch } else { return $1 } } saka { return $iif($readini(Skills/TS.ini,$1,aka),$ifmatch,$1) } skill { if ($prop == lvl) { var %get = 2 } if ($prop == exp) { var %get = 3 } if ($prop == rank) { var %get = 1 } if (!$1 || !$2) { return Error } if (!$hget($1,$2)) { return - } return $remove($gettok($hget($1,$2),%get,32),$chr(44)) } nohtml { var %x,%i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x) %x = $replace(%x, ,$null,&,$null,",$null) return %x } order { .tokenize 32 $1 var %a = 1,%ordrd while (%a <= $0) { if ($($+($,%a),2) >= $gettok(%ordrd,1,32)) { %ordrd = $($+($,%a),2) %ordrd } else { %ordrd = %ordrd $($+($,%a),2) } inc %a } return %ordrd } exp { 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) } combat.base { var %def = $1,%hp = $2,%pray = $3 var %A = $calc(%def * 100) var %B = $calc(%hp * 100) var %C = $iif(*.* iswm $calc(%pray / 2),$calc((%pray -1) * 50),$calc(%pray * 50)) return $calc((%a + %B + %C) / 400) } combat.class { var %att = $1,%str = $2,%range = $3,%mage = $4 var %A = $calc(%att * 130) var %B = $calc(%str * 130) var %C = $iif(*.* iswm $calc(%range / 2),$calc(((%range - 1) + (%range * 2)) * 65),$calc(%range * 195)) var %D = $iif(*.* iswm $calc(%mage / 2),$calc(((%mage - 1) + (%mage * 2)) * 65),$calc(%mage * 195)) var %melee = $calc((%A + %B) / 400) var %range = $calc(%C / 400) var %mage = $calc(%D / 400) return $order(%melee %range %mage) } combat.final { var %base = $combat.base($iif(!$2,1,$2),$iif(!$4,10,$4),$iif(!$5,1,$5)) var %class = $combat.class($iif(!$1,1,$1),$iif(!$3,1,$3),$iif(!$6,1,$6),$iif(!$7,1,$7)) var %combat = $calc(%base + $gettok(%class,1,32)) return %combat } f2u { if ($regex($1,$+(/^,$chr(40),$se(regEx,compare),$chr(41),$,/Si))) { return Compare } if ($regex($1,$+(/^,$chr(40),$se(regEx,pc),$chr(41),$,/Si))) { return PestControl } if ($regex($1,$+(/^,$chr(40),$se(regEx,cmb),$chr(41),$,/Si))) { return Combat } if ($regex($1,$+(/^,$chr(40),$se(regEx,stats),$chr(41),$,/Si))) { return Stats } if ($regex($1,$+(/^,$chr(40),$se(regEx,overall),$chr(41),$,/Si))) { return Overall } if ($regex($1,$+(/^,$chr(40),$se(regEx,att),$chr(41),$,/Si))) { return Attack } if ($regex($1,$+(/^,$chr(40),$se(regEx,def),$chr(41),$,/Si))) { return Defence } if ($regex($1,$+(/^,$chr(40),$se(regEx,str),$chr(41),$,/Si))) { return Strength } if ($regex($1,$+(/^,$chr(40),$se(regEx,hp),$chr(41),$,/Si))) { return HitPoints } if ($regex($1,$+(/^,$chr(40),$se(regEx,range),$chr(41),$,/Si))) { return Ranged } if ($regex($1,$+(/^,$chr(40),$se(regEx,pray),$chr(41),$,/Si))) { return Prayer } if ($regex($1,$+(/^,$chr(40),$se(regEx,magic),$chr(41),$,/Si))) { return Magic } if ($regex($1,$+(/^,$chr(40),$se(regEx,cook),$chr(41),$,/Si))) { return Cooking } if ($regex($1,$+(/^,$chr(40),$se(regEx,wc),$chr(41),$,/Si))) { return WoodCutting } if ($regex($1,$+(/^,$chr(40),$se(regEx,fletch),$chr(41),$,/Si))) { return Fletching } if ($regex($1,$+(/^,$chr(40),$se(regEx,fish),$chr(41),$,/Si))) { return Fishing } if ($regex($1,$+(/^,$chr(40),$se(regEx,fm),$chr(41),$,/Si))) { return FireMaking } if ($regex($1,$+(/^,$chr(40),$se(regEx,craft),$chr(41),$,/Si))) { return Crafting } if ($regex($1,$+(/^,$chr(40),$se(regEx,smith),$chr(41),$,/Si))) { return Smithing } if ($regex($1,$+(/^,$chr(40),$se(regEx,mine),$chr(41),$,/Si))) { return Mining } if ($regex($1,$+(/^,$chr(40),$se(regEx,herb),$chr(41),$,/Si))) { return Herblore } if ($regex($1,$+(/^,$chr(40),$se(regEx,agil),$chr(41),$,/Si))) { return Agility } if ($regex($1,$+(/^,$chr(40),$se(regEx,thief),$chr(41),$,/Si))) { return Thieving } if ($regex($1,$+(/^,$chr(40),$se(regEx,slay),$chr(41),$,/Si))) { return Slayer } if ($regex($1,$+(/^,$chr(40),$se(regEx,farm),$chr(41),$,/Si))) { return Farming } if ($regex($1,$+(/^,$chr(40),$se(regEx,rc),$chr(41),$,/Si))) { return RuneCraft } if ($regex($1,$+(/^,$chr(40),$se(regEx,hunt),$chr(41),$,/Si))) { return Hunter } if ($regex($1,$+(/^,$chr(40),$se(regEx,const),$chr(41),$,/Si))) { return Construction } else { return $false } } cntn { return $readini(clist.ini,colors,$1) } ; SYNTAX: $getxp(Level) getxp { var %e, %x = 1, %y = $1 while (%x < %y) { inc %e $floor($calc(%x + 300*2^(%x / 7))) inc %x } return $floor($calc(%e /4)) }