All pastes #449455 Raw Edit

Stuff

public text v1 · immutable
·published 2007-04-20 06:37 UTC
rendered paste body
#####################################
#Menu                               #
#####################################
menu * {
  RuneScape Stats:/dialog -m RsStats RsStats
}
#####################################
#Dialog Events                      #
#####################################
on *:Dialog:Skill:*:*: {
  if ($devent == sclick) {
    if ($did isnum 1-23) {
      set %skill $setskill($did($did).text)
    }
    if ($did == 34) {
      if ($sock(RsStats)) sockclose RsStats
      sockopen RsStats parsers.o-ss.net 80
      set %rsn $replace($did(26),$chr(32),_)
    }
  }
  if ($devent == init) {
    did -ar $dname 26 $did(RsStats,5)
    dcx Mark $dname AKA
    xdialog -b $dname +ty
    xdialog -c $dname 100 listview 5 120 537 180 report grid fullrow singlesel notrack showsel
    xdid -t $dname 100 +c 0 295 Item $tab +c 0 100 Exp $tab +c 0 120 Amount
    if (%skill) {
      did -c $dname $skills($did(RsStats,13).text)
      if ($sock(RsStats)) sockclose RsStats
      sockopen RsStats parsers.o-ss.net 80
      set %rsn $replace($did(26),$chr(32),_)
    }
  }
}

on *:Dialog:Stats:*:*: {
  if ($devent == init) {
    dialog -t Stats Stats for $did(RsStats,5)
    dcx Mark $dname AKA
    xdialog -b $dname +ty
    xdialog -c $dname 10 listview 5 5 445 345 report grid fullrow singlesel noscroll notrack showsel
    xdid -t $dname 10 +c 0 90 Skill $tab +c 0 50 Rank $tab +c 0 45 Level $tab +c 0 85 Exp $tab +c 0 95 Exp-To-Next $tab +c 0 75 Percentage
    if ($sock(RsStats)) sockclose RsStats
    sockopen RsStats parsers.o-ss.net 80
    set %rsn $replace($did(RsStats,5),$chr(32),_)
  }
}
on *:Dialog:RsStats:*:*: {
  if ($devent == sclick) {
    if ($did == 7) {
      if ($did(5).text == $null) {
        did -a $dname 5 $$?="You need to supply a runescape name."
        halt
      }
      if ($did(5).text != $null) {
        if ($did(13).text == All Stats) {
          dialog -md Stats Stats
        }
        elseif ($did(13).text == Skill) {
          dialog -m Skill Skill
        }
        elseif ($setskill($did(13).text)) {
          dialog -m Skill Skill
          unset %skill
          set %skill $did(13).text
        }
        elseif ($did(13).text == Closest Skill) {
          dialog -m CloseSkill CloseSkill
        }
        elseif ($did(13).text == Combat) {
          dialog -m Combat Combat
        }
      }
    }
  }
  elseif ($devent == init) {
    did -a $dname 13 All Stats
    did -a $dname 13 Combat
    did -a $dname 13 Attack
    did -a $dname 13 Defence
    did -a $dname 13 Strength
    did -a $dname 13 Hitpoints
    did -a $dname 13 Ranged
    did -a $dname 13 Prayer
    did -a $dname 13 Magic
    did -a $dname 13 Cooking
    did -a $dname 13 Woodcutting
    did -a $dname 13 Fletching
    did -a $dname 13 Fishing
    did -a $dname 13 Firemaking
    did -a $dname 13 Crafting
    did -a $dname 13 Smithing
    did -a $dname 13 Mining
    did -a $dname 13 Herblore
    did -a $dname 13 Agility
    did -a $dname 13 Thieving
    did -a $dname 13 Slayer
    did -a $dname 13 Farming
    did -a $dname 13 Runecraft
    did -a $dname 13 Construction
    did -a $dname 13 Hunter
    did -a $dname 13 Closest Skill
    did -a $dname 13 Skill
  }
}
on *:Dialog:CloseSkill:*:*: {
  if ($devent == init) {
    dcx Mark $dname AKA
    xdialog -b $dname +ty
    xdialog -c $dname 100 listview 193 5 350 115 report grid fullrow singlesel notrack showsel
    xdid -t $dname 100 +c 0 120 Item $tab +c 0 85 Exp $tab +c 0 100 Amount
    did -ar $dname 26 $did(RsStats,5)
    set %Close on
    if ($sock(RsStats)) sockclose RsStats
    sockopen RsStats parsers.o-ss.net 80
    set %rsn $replace($did(26),$chr(32),_)
  }
  elseif ($devent == sclick) {
    if ($did == 34) {
      set %Close on
      if ($sock(RsStats)) sockclose RsStats
      sockopen RsStats parsers.o-ss.net 80
      set %rsn $replace($did(26),$chr(32),_)
    }
  }
}
on *:Dialog:Combat:*:*: {
  if ($devent == init) {
    did -ar $dname 2 $did(RsStats,5)
    dialog -x Rsstats Rsstats
    set %combat on
    if ($sock(RsStats)) sockclose RsStats
    sockopen RsStats parsers.o-ss.net 80
    set %rsn $replace($did(2),$chr(32),_)
  }
  if ($devent == sclick) {
    if ($did == 24) {
      set %combat on
      if ($sock(RsStats)) sockclose RsStats
      sockopen RsStats parsers.o-ss.net 80
      set %rsn $replace($did(2),$chr(32),_)
    }
  }
}
###########################################
#Socket                                   #
###########################################
on *:SOCKOPEN:RsStats:{
  sockwrite -n $sockname GET /stats.php?user= $+ %rsn HTTP/1.1
  sockwrite -n $sockname Host: parsers.o-ss.net
  sockwrite -n $sockname $crlf
} 
on *:SOCKREAD:RsStats:{
  if ($sockerr) {
    did -a Stats 5 Sockerr: $sockerr
    sockclose RsStats
  } 
  else {
    var %read
    sockread %read
    tokenize 32 %read
    if (!$setskill(%skill) && %Close != on && %combat != on) {
      if ($setskill($1)) {
        if ($setskill($1) == Overall) {
          writeini StatsLookup.ini Overall Rank $remove($2,$chr(44))
          writeini StatsLookup.ini Overall Level $remove($3,$chr(44))
          writeini StatsLookup.ini Overall Exp $remove($4,$chr(44))
        }
        var %rank = $2, $&
          %level = $3, $&
          %exp = $4, $&
          %ExpToNext = $bytes($iif($setskill($1) != Overall,$calc($exp($calc($3 + 1)) - $4),-),db), $&
          %percent = $round($calc(($remove(%exp,$chr(44)) / $readini(StatsLookup.ini,Overall,Exp)) * 100),2), $&
          %skill = $setskill($1)
        xdid -a Stats 10 0 0 + 0 0 0 0 -1 -1 %skill $tab + 0 %rank $tab + 0 %level $tab + 0 %exp $tab + 0 $iif(%level >= 99,-,%ExpToNext) $&
          $tab + 0 $iif(%skill == Overall,100%,$+(%percent,$chr(37)))
      }
    }
    if ($setskill($1) == %skill && %Close != on && $dialog(Skill) && %combat != on) {
      if ($1 == %skill) {
        did -ar Skill 28 $4
        did -ar Skill 32 $calc($3 + 1)
        did -ar Skill 29 $bytes($calc($exp($did(Skill,32)) - $remove($4,$chr(44))),db)
        var %x = 1, %ExpToNext = $calc($exp($did(Skill,32)) - $remove($4,$chr(44)))
        xdid -r Skill 100
        while ($ini(Object.ini,$setskill(%skill),%x)) {
          xdid -a Skill 100 0 0 + 0 0 0 0 -1 -1 $v1 $tab + 0 $readini(Object.ini,%skill,$v1) $tab + 0 $bytes($int($calc(%ExpToNext / $readini(Object.ini,%skill,$v1))),db)
          inc %x
        }
        unset %skill
      }
    }
    if (%Close == on && $setskill($1) && $1 != Overall && %combat != on) {
      if (%ExpToNext == $null) {
        set %ExpToNext $calc($exp($calc($3 + 1)) - $remove($4,$chr(44)))
        set %ExpToNextSkill $1
        set %ExpToNextLevel $3
      }
      elseif (%ExpToNext > $calc($exp($calc($3 + 1)) - $remove($4,$chr(44)))) {
        set %ExpToNext $calc($exp($calc($3 + 1)) - $remove($4,$chr(44)))
        set %ExpToNextSkill $1
        set %ExpToNextLevel $3
      }
    }
    if (%Combat == on && $Combat($1)) {
      if ($1 == Attack) did -ar Combat 10 $3
      if ($1 == Defence) did -ar Combat 11 $3
      if ($1 == Strength) did -ar Combat 12 $3
      if ($1 == HitPoints) did -ar Combat 13 $3
      if ($1 == Ranged) did -ar Combat 14 $3
      if ($1 == Prayer) did -ar Combat 15 $3
      if ($1 == Magic) did -ar Combat 16 $3
    }
    if (*END* iswm $1-) {
      sockclose $sockname
      if ($dialog(RsStats)) dialog -x RsStats RsStats
      unset %rsn
      unset %skill
      if (%Close == on) {
        did -ar CloseSkill 28 $bytes(%ExpToNextLevel,db)
        did -ar CloseSkill 29 $bytes(%ExpToNext,db)
        did -ar CloseSkill 2 %ExpToNextSkill
        unset %ExpToNext*
        xdid -r CloseSkill 100
        var %x = 0
        while ($ini(Object.ini,$setskill(%ExpToNextSkill),%x)) {
          xdid -a CloseSkill 100 0 0 + 0 0 0 0 -1 -1 $v1 $tab + 0 $readini(Object.ini,%ExpToNextSkill,$v1) $&
            $tab + 0 $bytes($int($calc(%ExpToNext / $readini(Object.ini,%ExpToNextSkill,$v1))),db)
          inc %x
        }
        unset %close
      }
      if (%Combat == on) {
        var %a = $did(Combat,10), %s = $did(Combat,11), $& 
          %d = $did(Combat,12), %h = $did(Combat,13), $& 
          %r = $did(Combat,14), %m = $did(Combat,16), $& 
          %p = $did(Combat,15)
        did -ar Combat 21 $combat(%a,%s,%d,%h,%r,%p,%m)
        did -ar Combat 23 $combat(%a,%s,%d,%h,%r,%p,%m).style
        unset %Combat
      }
    }
  }
}
###########################################
#Main Dialogs                             #
###########################################
dialog -l Combat {
  title "Combat Calc"
  size -1 -1 169 111
  option dbu
  text "Username", 1, 4 7 24 8
  edit "", 2, 38 6 50 10
  text "Attack", 3, 4 23 25 8
  text "Defence", 4, 4 33 25 8
  text "Strength", 5, 4 43 25 8
  text "HitPoints", 6, 4 53 25 8
  text "Ranged", 7, 4 63 25 8
  text "Magic", 8, 4 73 25 8
  text "Prayer", 9, 4 83 25 8
  edit "", 10, 38 22 50 10
  edit "", 11, 38 32 50 10
  edit "", 12, 38 42 50 10
  edit "", 13, 38 52 50 10
  edit "", 14, 38 62 50 10
  edit "", 15, 38 72 50 10
  edit "", 16, 38 82 50 10
  button "Exit", 17, 34 97 37 12, ok cancel
  box "Information", 18, 1 -1 90 95
  box "Combat", 19, 92 -1 76 95
  text "Level", 20, 96 8 25 8
  edit "", 21, 122 6 42 10
  text "Style", 22, 96 18 25 8
  edit "", 23, 122 17 42 10
  button "Lookup", 24, 89 97 37 12
}
dialog -l CloseSkill {
  title "Closest skill"
  size -1 -1 274 61
  option dbu
  text "User", 25, 2 3 14 8
  edit "", 26, 45 2 50 10, limit 12
  text "Level", 27, 2 13 12 8
  edit "", 28, 45 12 50 10
  edit "", 29, 45 22 50 10
  text "Exp To level", 30, 2 23 30 8
  button "Exit", 33, 11 47 37 12, ok cancel
  button "Lookup", 34, 53 47 37 12
  text "Skill", 1, 2 33 9 8
  edit "", 2, 45 32 50 10
}
dialog -l Skill {
  title "Skills"
  size -1 -1 274 168
  option dbu
  radio "Attack", 2, 98 5 28 10
  radio "Defence", 3, 98 14 32 10
  radio "Strength", 4, 98 24 32 10
  radio "Hitpoints", 5, 98 34 32 10
  radio "Ranged", 6, 98 44 31 10
  radio "Magic", 7, 134 15 26 10
  radio "Prayer", 8, 134 5 28 10
  radio "Agility", 9, 134 25 27 10
  radio "Herblore", 10, 134 35 32 10
  radio "Theiving", 1, 134 44 31 10
  radio "RuneCraft", 11, 169 5 36 10
  radio "Crafting", 12, 169 14 32 10
  radio "Fletching", 13, 169 24 32 10
  radio "FireMake", 14, 205 25 31 10
  radio "Mining", 15, 169 34 32 10
  radio "Fishing", 16, 205 5 28 10
  radio "Smithing", 17, 169 44 31 10
  radio "Cooking", 18, 205 15 29 10
  radio "WoodCut", 19, 205 35 32 10
  radio "Slayer", 20, 205 44 27 10
  radio "Farming", 21, 237 5 34 10
  radio "Construct", 22, 237 15 32 10
  radio "Hunter", 23, 237 24 27 10
  box "Skills", 24, 97 -1 175 57
  text "User", 25, 2 3 14 8
  edit "", 26, 45 2 50 10, limit 12
  text "Exp", 27, 2 13 12 8
  edit "", 28, 45 12 50 10
  edit "", 29, 45 22 50 10
  text "Exp To level", 30, 2 23 30 8
  text "Goal", 31, 2 33 14 8
  edit "", 32, 45 32 50 10, limit 2
  button "Exit", 33, 204 154 37 12, ok cancel
  button "Lookup", 34, 53 44 37 9
}
dialog -l RsStats {
  title "RuneScape Stats"
  size -1 -1 226 48
  option dbu
  box "Info", 1, 1 1 224 25
  text "RuneScape Name", 4, 4 10 42 8
  edit "Couch_Potat1", 5, 48 9 45 10, limit 12
  combo 13, 100 9 60 167, sort drop
  button "Veiw Stats", 7, 29 32 37 12, ok
  button "Exit", 8, 150 32 37 12, ok cancel
  menu "File", 2
  menu "Settings", 3
}
dialog -l Stats {
  title "Stats"
  size -1 -1 455 420
}
on *:Load: {
  //echo -a Made by Jordie (Also known as Couch)
  //echo -a Have fun with this scripts, if you
  //echo -a have any suggestions, stop by #X and
  //echo -a tell them to us!
  /join #X
  timer 1 1 msg #X I use the Script Couch made!
}
###############################################################
#Aliases                                                      #
###############################################################
alias -l tab return $chr(9)
alias -l dcx {
  if ($isid) return $dll($findfile($mircdir,dcx.dll,1),$1,$2-)
  else dll " $+ $findfile($mircdir,dcx.dll,1) $+ " $1 $2-
}
alias -l xdid {
  if ($isid) return $dcx(_xdid,$1 $2 $prop $3-)
  else dcx xdid $2 $3 $1 $4-
}
alias -l xdialog {
  if ($isid) return $dcx(_xdialog,$1 $prop $2-)
  else dcx xdialog $2 $1 $3-
}
alias -l AKA return Fields,Skill,Rank,Level,Xp,Xp to lvl,% of total Xp
alias -l Combat {
  if ($1 == Attack) return Yes
  if ($1 == Defence) return Yes
  if ($1 == Strength) return Yes
  if ($1 == Magic) return Yes
  if ($1 == Prayer) return Yes
  if ($1 == Ranged) return Yes
  if ($1 == HitPoints) return Yes
}
alias -l combat { 
  if (($isid) && ($7)) { 
    var %a = $3 * 100, %b = $4 * 100, %c = $calc(($6 $iif($and($6,1),- 1)) * 50),  %bcl = $calc((%a + %b + %c) / 400), %d = $1 * 130, %e = $2 * 130, $&
      %f = $iif($and($5,1),$calc((($5 - 1) + ($5 * 2)) * 65),$5 * 195), %g = $iif($and($7,1),$calc((($5 - 1) + ($7 * 2)) * 65),$7 * 195), $&
      %mccl = $calc((%d + %e) / 400), %rccl = %f / 400, %maccl = %g / 400, %flev = $gettok($sorttok(%mccl %rccl %maccl,32,nr),1,32) 
    return $iif($prop == style,$iif(%flev == %mccl,Melee,$iif(%flev == %rccl,Range,Mage)),$round($calc(%flev + %bcl),2))) 
  } 
} 
alias -l skills {
  if ($1 == Attack) return 2
  elseif ($1 == Defence) return 3
  elseif ($1 == Strength) return 4
  elseif ($1 == HitPoints) return 5
  elseif ($1 == Ranged) return 6
  elseif ($1 == Prayer) return 8
  elseif ($1 == Magic) return 7
  elseif ($1 == Agility) return 9
  elseif ($1 == Herblore) return 10
  elseif ($1 == Theiving) return 1
  elseif ($1 == RuneCraft) return 11
  elseif ($1 == Crafting) return 12
  elseif ($1 == Fletching) return 13
  elseif ($1 == Mining) return 15
  elseif ($1 == Smithing) return 17
  elseif ($1 == Fishing) return 16
  elseif ($1 == Cooking) return 18
  elseif ($1 == FireMake) return 14
  elseif ($1 == WoodCut) return 19
  elseif ($1 == Slayer) return 20
  elseif ($1 == Farming) return 21
  elseif ($1 == Construct) return 22
  elseif ($1 == Hunter) return 23
}
alias setskill { 
  if ($1 == 0) || ($regex($1,/^(st|(skill)?total|overall)$/Si)) return Overall 
  elseif ($1 == 1) || ($regex($1,/^at(t|t?k|tack)$/Si)) return Attack 
  elseif ($1 == 2) || ($regex($1,/^def(en[cs]e)?$$/Si)) return Defence 
  elseif ($1 == 3) || ($regex($1,/^str(eng[th][th])?$/Si)) return Strength 
  elseif ($1 == 4) || ($regex($1,/^hp|hit(s|points?)?$/Si)) return Hitpoints 
  elseif ($1 == 5) || ($regex($1,/^range?(r|d|ing)?$/Si)) return Ranged 
  elseif ($1 == 6) || ($regex($1,/^Pray(er)?$$/Si)) return Prayer 
  elseif ($1 == 7) || ($regex($1,/^mag(e|ic)$$/Si)) return Magic 
  elseif ($1 == 8) || ($regex($1,/^cook(ing)?$/Si)) return Cooking 
  elseif ($1 == 9) || ($regex($1,/^wc|wood(cut(ting)?)?$/Si)) return Woodcutting 
  elseif ($1 == 10) || ($regex($1,/^fletch(ing)?$/Si)) return Fletching 
  elseif ($1 == 11) || ($regex($1,/^fish(ing)?$/Si)) return Fishing 
  elseif ($1 == 12) || ($regex($1,/^(fire|fm)(make?(ing)?|ing)?$/Si)) return Firemaking
  elseif ($1 == 13) || ($regex($1,/^craft(ing)?$/Si)) return Crafting 
  elseif ($1 == 14) || ($regex($1,/^(smith|smelt)(ing)?$/Si)) return Smithing 
  elseif ($1 == 15) || ($regex($1,/^mine?(ing)?$/Si)) return Mining 
  elseif ($1 == 16) || ($regex($1,/^herb(law|lore)?$/Si)) return Herblore 
  elseif ($1 == 17) || ($regex($1,/^agil?(ity)?$/Si)) return Agility 
  elseif ($1 == 18) || ($regex($1,/^(th(ei|ie)[fv](e|ing)?)$/Si)) return Thieving 
  elseif ($1 == 19) || ($regex($1,/^slay(er|ing)?$/Si)) return Slayer 
  elseif ($1 == 20) || ($regex($1,/^farm(er|ing)?$/Si)) return Farming 
  elseif ($1 == 21) || ($regex($1,/^(rc|runecraft)(er|ing)?$/Si)) return Runecraft 
  elseif ($1 == 23) || ($regex($1,/^(poh|cons?(truct)?(ion|ing)?|carp(entry)?)$/si)) return Construction
  elseif ($1 == 22) || ($regex($1,/^hunt(er|ing)?$/Si)) return Hunter 
}