All pastes #936577 Raw Edit

Etwas

public text v1 · immutable
·published 2008-03-10 14:37 UTC
rendered paste body
on $*:TEXT:/^[!@.](rs)?stats/Si:#:{ 
  if (Nitro ison $chan && $me != Nitro) { halt }
  if ($len($remove($2-,$)) <= 12) { 
    var %ticks $ticks 
    set $+(%,prefix.,%ticks) $iif(@* iswm $1,msg $chan,notice $nick) 
    sockopen $+(st.,%ticks) hiscore.runescape.com 80 
    if ($len($2-) > 12) { $+(%,prefix.,%ticks) The nick $2-  is too long } 
    elseif ($2) set $+(%,erm.,%ticks) $replace($2-,$chr(32),-) 
    elseif ($readini(defname.ini,RSNs,$address($nick,3))) set $+(%,erm.,%ticks) $ifmatch 
    else set $+(%,erm.,%ticks) $nick 
  } 
} 
on *:SOCKOPEN:st.*:{ 
  sockwrite -nt $sockname GET /index_lite.ws?player= $+ %erm. [ $+ [ $remove($sockname,st.) ] ] HTTP/1.1 
  sockwrite -nt $sockname Host: hiscore.runescape.com 
  sockwrite -nt $sockname $crlf 
} 
on *:SOCKREAD:st.*:{ 
  if ($sockerr) { echo -a $sockerr | halt } 
  else { 
    var %read 
    sockread %read 
    if (Sorry, the page you were looking for was not found. isin %read) { 
      $($+(%,prefix.,$remove($sockname,st.)),2) 4[10ERROR4]:1 %erm. [ $+ [ $remove($sockname,st.) ] ] 10was not found in the RuneScape Hiscores. 
    } 
    elseif (*,*,* iswm %read) { 
      inc %stats.inc 
      writeini stats.ini $remove($sockname,st.) %stats.inc $replace(%read,-1,0) 
    } 
  } 
} 
on *:SOCKCLOSE:st.*:{ 
  if (%stats.inc) { 
    var %x 1 
    while ($readini(stats.ini,$remove($sockname,st.),%x)) { var %output %output $stat2($remove($sockname,st.),%x) | inc %x } 
    $($+(%,prefix.,$remove($sockname,st.)),2) 10[04 $+ %erm. [ $+ [ $remove($sockname,st.) ] ] $+ 10]: $+ $gettok(%output,1-19,124) 
    $iif($gettok(%output,20-25,124),$($+(%,prefix.,$remove($sockname,st.)),2) 10[04 $+ %erm. [ $+ [ $remove($sockname,st.) ] ] $+ 10]: $+ $gettok(%output,20-25,124),$null) 
    remini stats.ini $remove($sockname,st.) 
  } 
  unset $+(%,erm.,$remove($sockname,st.)) | unset $+(%,prefix.,$remove($sockname,st.)) | unset %stats.inc 
} 
alias stat { 
  if ($1 == 1) return Overall 
  elseif ($1 == 2) return Attack 
  elseif ($1 == 3) return Defence 
  elseif ($1 == 4) return Strength 
  elseif ($1 == 5) return Hitpoints 
  elseif ($1 == 6) return Range 
  elseif ($1 == 7) return Prayer 
  elseif ($1 == 8) return Magic 
  elseif ($1 == 9) return Cooking 
  elseif ($1 == 10) return Woodcutting 
  elseif ($1 == 11) return Fletching 
  elseif ($1 == 12) return Fishing 
  elseif ($1 == 13) return Firemaking 
  elseif ($1 == 14) return Crafting 
  elseif ($1 == 15) return Smithing 
  elseif ($1 == 16) return Mining 
  elseif ($1 == 17) return Herblore 
  elseif ($1 == 18) return Agility 
  elseif ($1 == 19) return Thieving 
  elseif ($1 == 20) return Slayer 
  elseif ($1 == 21) return Farming 
  elseif ($1 == 22) return Runecrafting 
  elseif ($1 == 23) return Hunter 
  elseif ($1 == 24) return Construction 
  elseif ($1 == 25) return Summoning 
} 
alias stat2 { 
  if ($gettok($readini(stats.ini,$1,$2),2,44) == 0) { return $null } | else { return |10 $stat($2) $+ 04 $gettok($readini(stats.ini,$1,$2),2,44) } 
} 


On $*:text:/^[!@](def|set)name/Si:#:{ if (!$2) { Notice $Nick 4[10ERROR4]: 10No nick entered | Halt } 
  elseif ($len($2-) > 12) { 
    Notice $nick 4[10ERROR4]: 10RuneScape names can be a maximum of 12 characters long 
    halt 
  } 
  elseif (*$* iswm $2) { 
    msg $chan Exploit try on this channel by $+($nick,.) Don't try to that again! 
    echo -a $nick has tried to exploit the script on $chan !! 
  halt } 
  Else { 
    writeini -n defname.ini RSNs $address($nick,3) $replace($2-,$chr(32),-) 
    writeini -n defname.ini $nick rsn $replace($2-,$chr(32),_) 
    notice $nick 10Your default RuneScape Name has been saved as:4 $2- 
  } 
} 
On $*:text:/^[!@]rsn/Si:#:{ 
  if ($2) && ($readini(defname.ini, n, $2-,rsn)) { 
    Notice $nick 10RuneScape Name for4 $2- 10is:4 $readini(defname.ini, n, $2-,rsn) 
  } 
  Elseif ($readini(defname.ini, n, $address($nick,2),name)) && (!$2) { 
    Notice $nick 10RuneScape Name:4 $readini(defname.ini, n, $address($nick,2),name) 
  } 
  Else { notice $nick 10No name set for4 $2- 
  } 
}