All pastes #583519 Raw Edit

Mine

public text v1 · immutable
·published 2007-06-22 12:25 UTC
rendered paste body
on *:text:*:#ox,#pyro,#rsdr:{
  if ($left($1,1) !isin @!.) { 
    halt 
  }
  var %sckid = $right($ticks,6)
  table $right($1,-1) %sckid
  if ( $($+(%,public.,$chan),2) == 1 ) {
    set $+(%,stats.display.,%sckid) $iif($left($1,1)  == @,msg $chan,notice $nick)
  } 
  else {
    set $+(%,stats.display.,%sckid) $iif($left($1,1)  == @,notice $nick,notice $nick)
  }
  if ( $right($1,-1) == compare ) { 
    if (!$2) {
      notice $nick 10Please use proper syntax: 4!compare <skill> <user1> [User2]10 Use _ for spaces. Thank you.
      clean %sckid
    }
    table $2 %sckid
    if ( !%stats.stat. [ $+ [ %sckid ] ] ) && ( %stats.style. [ $+ [ %sckid ] ] != combat ) {
      notice $nick 4 $+ $2 10is not a valid skill.
      clean %sckid
    }
    if ( %stats.style. [ $+ [ %sckid ] ] == combat ) {
      set %stats.style. [ $+ [ %sckid ] ] compare
      set %stats.compare. [ $+ [ %sckid ] ] combat
    }
    if ( %stats.stat. [ $+ [ %sckid ] ] ) {
      set %stats.style. [ $+ [ %sckid ] ] compare
    }
    if (!$3) {
      notice $nick 10Please use proper syntax: 4!rank <skill> <user>10 Thank you.
      clean %sckid
    }
    if ($len($3) > 12) {
      notice $nick 10The username4 $3 10is too long!
      clean %sckid
    }
    if ($len($4) > 12) {
      notice $nick 10The username4 $4 10is too long!
      clean %sckid
    }
    if (!$4) {
      if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) {
        set %stats.lookup.name1. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3))
        set %stats.lookup.name2. $+ %sckid $3
        set %stats.style. [ $+ [ %sckid ] ] compare
        sockopen stats. [ $+ [ %sckid ] ]  hiscore.runescape.com 80
      }
      else {
        set %stats.lookup.name1. $+ %sckid $nick
        set %stats.lookup.name2. $+ %sckid $3
        set %stats.style. [ $+ [ %sckid ] ] compare
        sockopen stats. [ $+ [ %sckid ] ]  hiscore.runescape.com 80
      }
    }
    else {
      set %stats.lookup.name1. $+ %sckid $3
      set %stats.lookup.name2. $+ %sckid $4
      set %stats.style. [ $+ [ %sckid ] ] compare
      sockopen stats. [ $+ [ %sckid ] ]  hiscore.runescape.com 80
    }
  }

  elseif ( %stats.style. [ $+ [ %sckid ] ] == stat ) {
    if (!$2) {
      if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) {
        set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3))
        set %stats.style. [ $+ [ %sckid ] ] stat
      }
      else {
        set %stats.lookup. $+ %sckid $nick
        set %stats.style. [ $+ [ %sckid ] ] stat
      }
    }
    elseif (  $left($2,1) == $chr(35) ) {
      if ( $replace($2,$chr(35),$null) !isnum 2-99 ) {
        notice $nick 10Please use proper syntax: 4!skill <goal>10 Remember, <goal> must be in #99 format.
        clean %sckid
      }
      if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) {
        set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3))
        set %stats.style. [ $+ [ %sckid ] ] stat
        set %stats.goal. $+ %sckid $replace($2,$chr(35),$null)
      }
      else {
        set %stats.lookup. $+ %sckid $nick
        set %stats.style. [ $+ [ %sckid ] ] stat
        set %stats.goal. $+ %sckid $replace($2,$chr(35),$null)
      }
    }
    elseif ($len($2) > 12) {
      notice $nick 10The username4 $2 10is too long!
      clean %sckid
    }
    elseif ( $left($3,1) == $chr(35) ) {
      if ( $replace($3,$chr(35),$null) !isnum 2-99 ) {
        notice $nick 10Please use proper syntax: 4!skill <goal>10 Remember, <goal> must be in #99 format and names must have a _ instead of spaces.
        clean %sckid
      }
      set %stats.lookup. $+ %sckid $2
      set %stats.style. [ $+ [ %sckid ] ] stat
      set %stats.goal. $+ %sckid $replace($3,$chr(35),$null)
    }
    else {
      set %stats.lookup. $+ %sckid $2
      set %stats.style. [ $+ [ %sckid ] ] stat
    }
  }
  elseif ( %stats.style. [ $+ [ %sckid ] ] == overall ) {
    if (!$2) {
      if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) {
        set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3))
        set %stats.style. [ $+ [ %sckid ] ] overall
        sockopen stats. [ $+ [ %sckid ] ]  hiscore.runescape.com 80
        halt
      }
      else {
        set %stats.lookup. $+ %sckid $nick
        set %stats.style. [ $+ [ %sckid ] ] overall
        sockopen stats. [ $+ [ %sckid ] ]  hiscore.runescape.com 80
        halt
      }
    }
    if ($len($2-) > 12) {
      notice $nick 10The username4 $2- 10is too long!
      clean %sckid
    }
    else {
      set %stats.lookup. $+ %sckid $replace($2-,$chr(32),_)
      set %stats.style. [ $+ [ %sckid ] ] overall
      sockopen stats. [ $+ [ %sckid ] ]  hiscore.runescape.com 80
      halt
    }
  }
  elseif ( %stats.style. [ $+ [ %sckid ] ] == combat ) {
    if (!$2) {
      if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) {
        set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3))
        set %stats.style. [ $+ [ %sckid ] ] combat
      }
      else {
        set %stats.lookup. $+ %sckid $nick
        set %stats.style. [ $+ [ %sckid ] ] combat
      }
      if ($len($2-) > 12) {
        notice $nick 10The username4 $2- 10is too long!
        clean %sckid
      }
    }
    set %stats.lookup. $+ %sckid $replace($2-,$chr(32),_)
    set %stats.style. [ $+ [ %sckid ] ] combat
  }
  elseif ($right($1,-1) == stats) { 
    if (!$2) {
      if ( $readini(DefRSN.ini,RSNs,$mask($fulladdress,3)) != $null ) {
        set %stats.lookup. $+ %sckid $readini(DefRSN.ini,RSNs,$mask($fulladdress,3))
        set %stats.style. $+ %sckid astats
      }
      else {
        set %stats.lookup. $+ %sckid $nick
        set %stats.style. $+ %sckid astats
      }
      if ($len($2-) > 12) {
        notice $nick 10The username4 $2- 10is too long!
        clean %sckid
      }
    }
    set %stats.lookup. $+ %sckid $replace($2-,$chr(32),_)
    set %stats.style. $+ %sckid astats
  }
  elseif ($right($1,-1) == rank) { 
    if (!$2) {
      notice $nick 10Please use proper syntax: 4!rank <skill> <position>10 Thank you.
      clean %sckid
    }
    if (!$3) {
      notice $nick 10Please use proper syntax: 4!rank <skill> <position>10 Thank you.
      clean %sckid
    }
    if ($replace($3,$chr(44),$null) !isnum 1-1000000 ) {
      notice $nick 10Please use a valid rank number.
      clean %sckid
    }
    table $2 %sckid
    if ( %stats.stat. [ $+ [ %sckid ] ] ) {
      //echo ( !%stats.stat. [ $+ [ %sckid ] ] ) 
      notice $nick 4 $+ $2 10is not a valid skill.
      clean %sckid
    }
    set %stats.lookup. $+ %sckid $3
    set %stats.style. $+ %sckid rank
    sockopen stats. [ $+ [ %sckid ] ]  hiscore.runescape.com 80
    halt
  }
  elseif ($right($1,-1) == setrsn) && ($2) {
    if ($len($2-) > 12) {
      notice $nick 10The username4 $3- 10is too long!
      clean %sckid
    }
    writeini DefRSN.ini RSNs $mask($fulladdress,3) $replace($2-,$chr(32),-)
    .notice $nick 10 You're default RSN for the host4 $mask($fulladdress,3) 10has been set to4 $2-
    clean %sckid
  }
  elseif ($right($1,-1) == setname) && ($2) {
    if ($len($2-) > 12) {
      notice $nick 10The username4 $3- 10is too long!
      clean %sckid
    }
    writeini DefRSN.ini RSNs $mask($fulladdress,3) $replace($2-,$chr(32),-)
    .notice $nick 10 You're default RSN for the host4 $mask($fulladdress,3) 10has been set to4 $2-
    clean %sckid
  }
  elseif ($right($1,-1) == defname) && ($2) {
    if ($len($2-) > 12) {
      notice $nick 10The username4 $3- 10is too long!
      clean %sckid
    }
    writeini DefRSN.ini RSNs $mask($fulladdress,3) $replace($2-,$chr(32),-)
    notice $nick 10 You're default RSN for the host4 $mask($fulladdress,3) 10has been set to4 $2-
    clean %sckid
  }
  else {
    clean %sckid
  }
}
on *:SOCKOPEN:stats.*: {
  if ( %stats.style. [ $+ [ $right($sockname,6) ] ] == overall ) {
    sockwrite -nt $sockname GET lang/en/aff/runescape/overall.ws?table=0&user= $+ %stats.lookup. [ $+ [ $right($sockname,6) ] ] HTTP/1.1
    sockwrite -nt $sockname Host: hiscore.runescape.com
  }
  elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == rank ) {
    sockwrite -nt $sockname GET overall.ws?table= $+ %table. [ $+ [ $right($sockname,6) ] ] $+ &rank= $+ %stats.lookup. [ $+ [ $right($sockname,6) ] ] HTTP/1.1
    sockwrite -nt $sockname Host: hiscore.runescape.com
  }
  elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == compare ) {
    sockwrite -nt $sockname GET /compare.ws?user1= $+ %stats.lookup.name1. [ $+ [ $right($sockname,6) ] ] $+ &user2= $+ %stats.lookup.name2. [ $+ [ $right($sockname,6) ] ] HTTP/1.1
    sockwrite -nt $sockname Host: hiscore.runescape.com
  }
  elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == stat ) {
    http://hiscore.runescape.com/hiscorepersonal.ws?user1=ineedaman222
  }
  sockwrite -nt $sockname $crlf
} 
on *:SOCKREAD:stats.*: {
  if ($sockerr) { notice $nick there was an error with the stats lookup. } 
  else {
    var %sockreader
    sockread %sockreader
    if ( %stats.style. [ $+ [ $right($sockname,6) ] ] == compare ) {
      if (!%stats.done. [ $+ [ $right($sockname,6) ] ]) {
        if ( %stats.stat. [ $+ [ $right($sockname,6) ] ] iswm %sockreader ) {
          inc %stats.found. [ $+ [ $right($sockname,6) ] ]
        }
        if ( %stats.found. [ $+ [ $right($sockname,6) ] ] == 1) {
          if (*Not Ranked* iswm %sockreader ) {
            %stats.display. [ $+ [ $right($sockname,6) ] ] 10Stats of:4 %stats.lookup.name1. [ $+ [ $right($sockname,6) ] ] 10not found.
            inc %stats.done. [ $+ [ $right($sockname,6) ] ]
            inc %stats.done. [ $+ [ $right($sockname,6) ] ]
          }
          if (<td align="right">* iswm %sockreader ) {
            tokenize 62 %sockreader
            inc %r. [ $+ [ $right($sockname,6) ] ] 1
            set %stats.user1. $+ %r. [ $+ [ $right($sockname,6) ] ] $replace($2,</td,$null)
          }
        }
        if ( %stats.found. [ $+ [ $right($sockname,6) ] ] == 2) {
          if (*Not Ranked* iswm %sockreader ) {
            %stats.display. [ $+ [ $right($sockname,6) ] ] 10Stats of:4 %stats.lookup.name2. [ $+ [ $right($sockname,6) ] ] 10not found.
            inc %stats.done. [ $+ [ $right($sockname,6) ] ]
            inc %stats.done. [ $+ [ $right($sockname,6) ] ]
          }
          if (<td align="right">* iswm %sockreader ) {
            tokenize 62 %sockreader
            inc %r. [ $+ [ $right($sockname,6) ] ] 1
            set %stats.user2. $+ %r. [ $+ [ $right($sockname,6) ] ] $replace($2,</td,$null)
            if ( %r. [ $+ [ $right($sockname,6) ] ] == 6 ) {
              inc %stats.done. [ $+ [ $right($sockname,6) ] ]
            }
          }
        }
      }
      elseif (%stats.done. [ $+ [ $right($sockname,6) ] ] == 1) {
        if ( %stats.user1.2 > %stats.user2.5 ) {
          %stats.display. [ $+ [ $right($sockname,6) ] ] 4 $+ %stats.lookup.name1. [ $+ [ $right($sockname,6) ] ] 10is4 $calc($replace(%stats.user1.2,$chr(44),$null) - $replace(%stats.user2.5,$chr(44),$null)) 10levels and4 $calc($replace(%stats.user1.3,$chr(44),$null) - $replace(%stats.user2.6,$chr(44),$null)) 10EXP higher then4 %stats.lookup.name2. [ $+ [ $right($sockname,6) ] ]
        }
        else {
          %stats.display. [ $+ [ $right($sockname,6) ] ] 4 $+ %stats.lookup.name2. [ $+ [ $right($sockname,6) ] ] 10is4 $calc($replace(%stats.user2.5,$chr(44),$null) - $replace(%stats.user1.2,$chr(44),$null)) 10levels and4 $calc($replace(%stats.user2.6,$chr(44),$null) - $replace(%stats.user1.3,$chr(44),$null)) 10EXP higher then4 %stats.lookup.name1. [ $+ [ $right($sockname,6) ] ]
        }
        inc %stats.done. [ $+ [ $right($sockname,6) ] ]
      }
    }
    elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == rank ) {
      if ( $+ $($+(%,number.,$right($sockname,6)),2) == 5) {
        %stats.display. [ $+ [ $right($sockname,6) ] ] User: %y.2 Rank %y.1 Level: %y.3 EXP: %y.4
        inc %number. [ $+ [ $right($sockname,6) ] ]
      }
      if ( *<span style="color:#AA0022;">*</span>* iswm %sockreader ) { 
        if (!$($+(%,number.,$right($sockname,6)),2) ) {
          set %number. [ $+ [ $right($sockname,6) ] ] 1
        }
        if ( <a href=* iswm %sockreader ) {
          tokenize 62 %sockreader
          set %y. $+ $($+(%,number.,$right($sockname,6)),2) $replace($3,</span,$null)
          inc %number. [ $+ [ $right($sockname,6) ] ]
        }
        else {
          set %y. $+ $($+(%,number.,$right($sockname,6)),2) $replace(%sockreader,<span style="color:#AA0022;">,$null,</span>,$null)
          inc %number. [ $+ [ $right($sockname,6) ] ]
        }
      }
      if ( <font color="#AA0022">*</font> iswm %sockreader ) { 
        set %y. $+ $($+(%,number.,$right($sockname,6)),2) $replace(%sockreader,<font color="#AA0022">,$null,</font>,$null)
        inc %number. [ $+ [ $right($sockname,6) ] ]
      }
    }
    elseif ( %stats.style. [ $+ [ $right($sockname,6) ] ] == overall ) {
      if ( $+ $($+(%,number.,$right($sockname,6)),2) == 4) {
        %stats.display. [ $+ [ $right($sockname,6) ] ] User: %stats.lookup. [ $+ [ $right($sockname,6) ] ] Rank: %y.1 Level: %y.2 Exp: %y.3
        inc %number. [ $+ [ $right($sockname,6) ] ]
      }
      if (<span style="color:#AA0022;">*</span> iswm %sockreader ) { 
        if (!$($+(%,number.,$right($sockname,6)),2) ) {
          set %number. [ $+ [ $right($sockname,6) ] ] 1
        }
        set %y. $+ $($+(%,number.,$right($sockname,6)),2) $replace(%sockreader,<span style="color:#AA0022;">,$null,</span>,$null)
        inc %number. [ $+ [ $right($sockname,6) ] ]
      }
      if ( <font color="#AA0022">*</font> iswm %sockreader ) { 
        set %y. $+ $($+(%,number.,$right($sockname,6)),2) $replace(%sockreader,<font color="#AA0022">,$null,</font>,$null)
        inc %number. [ $+ [ $right($sockname,6) ] ]
      }
    }
  }
}
alias -l clean { 
  unset %stats.display. [ $+ [ $1 ] ]
  unset %stats.compare. [ $+ [ $1 ] ]
  unset %stats.style. [ $+ [ $1 ] ]
  unset %stats.lookup.name1. [ $+ [ $1 ] ]
  unset %stats.lookup.name2. [ $+ [ $1 ] ]
  halt
}
alias -l table { 
  if ( $regex($1,/^(st|(skill)?total|overall)$/Si) ) { set %stats.stat. $+ $2 Overall | set %stats.style. $+ $2 overall }
  elseif ( $regex($1,/co?mb(at)?/Si) ) { set %stats.style. $+ $2 combat }
  elseif ( $regex($1,/^at(t|k|tack)$/Si) ) { set %stats.stat. $+ $2 Attack | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^def(en[cs]e)?$$/Si) ) { set %stats.stat. $+ $2 Defence | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^str(ength)?$/Si) ) { set %stats.stat. $+ $2 Strength | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^hp|hit(s|points?)?$/Si) ) { set %stats.stat. $+ $2 Hitpoints | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^range(r|d|ing)?$/Si) ) { set %stats.stat. $+ $2 Ranged | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^Pray(er)?$$/Si) ) { set %stats.stat. $+ $2 Prayer | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^mag(e|ic)$$/Si) ) { set %stats.stat. $+ $2 Magic | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^cook(ing)?$/Si) ) { set %stats.stat. $+ $2 Cooking | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^wc|wood(cut(ting)?)?$/Si) ) { set %stats.stat. $+ $2 Woodcutting | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^fletch(ing)?$/Si) ) { set %stats.stat. $+ $2 Fletching | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^fish(ing)?$/Si) ) { set %stats.stat. $+ $2 Fishing | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^(fire|fm)(make?(ing)?|ing)?$/Si) ) { set %stats.stat. $+ $2 Firemaking | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^craft(ing)?$/Si) ) { set %stats.stat. $+ $2 Crafting | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^(smith|smelt)(ing)?$/Si) ) { set %stats.stat. $+ $2 Smithing | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^mine(ing)?$/Si) ) { set %stats.stat. $+ $2 Mining | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^herb(law|lore)?$/Si) ) { set %stats.stat. $+ $2 Herblore | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^agil(ity)?$/Si) ) { set %stats.stat. $+ $2 Agility | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^(th(ei|ie)[fv](e|ing)?)$/Si) ) { set %stats.stat. $+ $2 Thieving | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^slay(er|ing)?$/Si) ) { set %stats.stat. $+ $2 Slayer | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^farm(er|ing)?$/Si) ) { set %stats.stat. $+ $2 Farming | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^(rc|runecraft)(er|ing)?$/Si) ) { set %stats.stat. $+ $2 Runecraft | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^(hunt)(er|ing)?$/Si) ) { set %stats.stat. $+ $2 Hunter | set %stats.style. $+ $2 stat }
  elseif ( $regex($1,/^(construct)(ion|ing)?$/Si) ) { set %stats.stat. $+ $2 Construction | set %stats.style. $+ $2 stat }
}