menu * { Runescape dialog tool:/runescapedialogstart } alias runescapedialogstart { if (!$isfile(goedha0.png)) { echo -ta Please wait, the dialog will open soon downl http://img518.imageshack.us/img518/1763/goedha0.png } else { $iif($dialog(Runescape),echo -ta The dialog is already open,/dialog -mdro Runescape Runescape) if ($hget(dialog, pic)) && ($hget(dialog, pic) != goedha0.png) { .remove $hget(dialog, pic) | .hfree dialog } } } dialog Runescape { title "Runescape tool dialog - By [-Srankie-]" size -1 -1 270 209 option dbu tab "Combat", 1, -1 -3 271 260 text "Hit points", 2, 4 47 25 8, tab 1 text "Strenght", 3, 4 30 21 8, tab 1 text "Attack", 4, 4 21 25 8, tab 1 text "Defence", 5, 4 39 25 8, tab 1 text "Prayer", 6, 53 39 25 8, tab 1 text "Ranged", 7, 53 21 25 8, tab 1 text "Magic", 8, 53 30 25 8, tab 1 text "Summoning", 9, 53 48 27 8, tab 1 edit "", 10, 30 20 17 10, tab 1 limit 2 edit "", 11, 30 29 17 10, tab 1 limit 2 edit "", 12, 30 38 17 10, tab 1 limit 2 edit "", 13, 30 47 17 10, tab 1 limit 2 edit "", 14, 80 20 17 10, tab 1 limit 2 edit "", 15, 80 29 17 10, tab 1 limit 2 edit "", 16, 80 38 17 10, tab 1 limit 2 edit "", 17, 80 47 17 10, tab 1 limit 2 button "Calculate the combat level", 18, 4 58 75 12, tab 1 box "F2P Combat", 19, 133 13 128 174, tab 1 text "Runescape name", 20, 5 155 41 8, tab 1 edit "", 21, 49 154 70 10, tab 1 limit 13 text "Combat level:", 22, 4 74 40 8, tab 1 edit "", 23, 46 73 22 10, tab 1 read box "P2P Combat", 24, 2 13 128 174, tab 1 text "Prayer", 25, 186 39 25 8, tab 1 button "Calculate the combat level", 26, 135 58 75 12, tab 1 text "Combat level:", 27, 136 74 40 8, tab 1 button "Retrieve runescape combat stats", 28, 7 171 115 12, tab 1 button "Retrieve runescape combat stats", 29, 135 171 115 12, tab 1 text "Attack", 30, 137 21 25 8, tab 1 text "Strenght", 31, 137 30 21 8, tab 1 text "Defence", 32, 137 39 25 8, tab 1 text "Hit points", 33, 137 48 25 8, tab 1 text "Ranged", 34, 186 21 25 8, tab 1 text "Magic", 35, 376 32 25 8, tab 1 text "Magic", 36, 186 30 25 8, tab 1 edit "", 37, 177 73 22 10, tab 1 read text "Runescape name", 38, 135 154 41 8, tab 1 edit "", 39, 179 154 70 10, tab 1 limit 13 edit "", 40, 163 20 17 10, tab 1 limit 2 edit "", 41, 163 29 17 10, tab 1 limit 2 edit "", 42, 163 38 17 10, tab 1 limit 2 edit "", 43, 163 47 17 10, tab 1 limit 2 edit "", 44, 213 20 17 10, tab 1 limit 2 edit "", 45, 213 29 17 10, tab 1 limit 2 edit "", 46, 213 38 17 10, tab 1 limit 2 box "Next level in", 243, 6 85 119 52, tab 1 text "Attack", 244, 9 93 25 8, tab 1 edit "", 245, 35 92 17 10, tab 1 read text "Strenght", 246, 9 103 25 8, tab 1 edit "", 247, 35 102 17 10, tab 1 read text "Defence", 248, 9 112 20 8, tab 1 edit "", 249, 35 112 17 10, tab 1 read text "Hit points", 250, 9 122 23 8, tab 1 text "Prayer", 256, 57 93 25 8, tab 1 edit "", 257, 85 93 17 10, tab 1 read text "Summoning", 258, 57 103 27 8, tab 1 edit "", 259, 85 103 17 10, tab 1 read box "Next level in", 260, 136 85 119 53, tab 1 text "Attack", 261, 140 95 25 8, tab 1 text "Strenght", 262, 140 104 25 8, tab 1 text "Defence", 263, 140 114 20 8, tab 1 text "Hit points", 264, 140 124 23 8, tab 1 edit "", 279, 166 93 17 10, tab 1 read edit "", 278, 166 103 17 10, tab 1 read edit "", 277, 166 113 17 10, tab 1 read edit "", 276, 166 123 17 10, tab 1 read edit "", 270, 223 92 17 10, tab 1 read text "Prayer", 268, 193 93 25 8, tab 1 edit "", 251, 35 122 17 10, tab 1 read tab "Stats", 47 text "Attack", 48, 9 22 16 8, tab 47 box "P2P Skills", 49, 136 14 124 117, tab 47 box "F2P Skills", 50, 6 14 124 117, tab 47 text "Defence", 51, 9 32 25 8, tab 47 edit "", 52, 42 21 15 10, tab 47 read edit "", 53, 42 31 15 10, tab 47 read text "Strength", 54, 9 42 25 8, tab 47 edit "", 55, 42 41 15 10, tab 47 read text "Hitpoints", 56, 9 52 25 8, tab 47 edit "", 57, 42 51 15 10, tab 47 read text "Ranged", 58, 9 61 25 8, tab 47 edit "", 59, 42 61 15 10, tab 47 read text "Prayer", 60, 9 71 25 8, tab 47 edit "", 61, 42 71 15 10, tab 47 read text "Magic ", 62, 9 81 15 8, tab 47 edit "", 63, 42 81 15 10, tab 47 read text "Cooking", 64, 9 92 25 8, tab 47 edit "", 65, 42 90 15 10, tab 47 read text "Woodcutting", 66, 9 101 31 8, tab 47 edit "", 67, 42 100 15 10, tab 47 read text "Fishing", 68, 9 110 17 8, tab 47 edit "", 69, 42 110 15 10, tab 47 read text "Fletching", 70, 140 22 22 8, tab 47 edit "", 71, 172 21 15 10, tab 47 read text "Firemaking", 72, 9 120 26 8, tab 47 edit "", 73, 42 120 15 10, tab 47 read text "Crafting", 74, 62 22 20 8, tab 47 edit "", 75, 92 21 15 10, tab 47 read text "Smithing ", 76, 62 32 22 8, tab 47 edit "", 77, 92 31 15 10, tab 47 read text "Mining", 78, 62 42 15 8, tab 47 edit "", 79, 92 41 15 10, tab 47 read text "Herblore ", 80, 140 32 22 8, tab 47 edit "", 81, 172 31 15 10, tab 47 read text "Agility ", 82, 140 42 16 8, tab 47 edit "", 83, 172 41 15 10, tab 47 read text "Thieving", 84, 140 52 20 8, tab 47 edit "", 85, 172 51 15 10, tab 47 read text "Slayer ", 86, 140 61 25 8, tab 47 edit "", 87, 172 61 15 10, tab 47 read text "Farming ", 88, 140 71 21 8, tab 47 edit "", 89, 172 71 15 10, tab 47 read text "Runecraft", 90, 62 52 24 8, tab 47 edit "", 91, 92 51 15 10, tab 47 read text "Hunter ", 92, 140 81 18 8, tab 47 edit "", 93, 172 81 15 10, tab 47 read text "Construction", 94, 140 92 31 8, tab 47 edit "", 95, 172 90 15 10, tab 47 read text "Summoning", 96, 140 101 27 8, tab 47 edit "", 97, 172 100 15 10, tab 47 read text "Overall", 98, 210 133 25 8, tab 47 edit "", 99, 235 132 25 10, tab 47 read text "Runescape name:", 100, 6 137 43 8, tab 47 edit "", 101, 55 136 70 10, tab 47 limit 13 button "Retrieve runescape stats", 102, 6 148 119 12, tab 47 tab "Price", 103 text "Item:", 104, 6 22 13 8, tab 103 edit "", 105, 25 14 126 25, tab 103 multi return autohs hsbar text "Results", 106, 3 63 25 8, tab 103 text "--------------------------------------------------------------------------------------------------------------------------------------------------", 108, -9 44 292 8, tab 103 button "Search", 109, 176 18 37 12, tab 103 edit "", 107, 30 54 227 90, tab 103 read multi return autohs autovs hsbar vsbar text "All these information about prices and item names are from Zybez.net", 241, 57 171 167 8, tab 103 box "", 242, 32 152 210 44, tab 103 tab "Clan info", 110 box "Clan information", 111, 6 13 119 148, tab 110 text "Clan name/Initials", 113, 9 20 43 8, tab 110 edit "", 114, 54 19 67 10, tab 110 return autovs text "--------------------------------------------------------", 115, 9 29 112 8, tab 110 text "Name:", 116, 9 39 25 8, tab 110 edit "", 117, 37 38 84 10, tab 110 read multi return autovs text "Initials:", 118, 9 48 25 8, tab 110 edit "", 119, 37 47 25 10, tab 110 read multi return autovs text "Members", 120, 63 48 22 8, tab 110 edit "", 121, 87 47 34 10, tab 110 read multi return autovs box "Average stats", 123, 9 67 112 38, tab 110 text "Combat", 124, 11 75 25 8, tab 110 edit "", 125, 35 74 23 10, tab 110 read multi return autovs text "Hitpoints", 126, 11 85 21 8, tab 110 text "Magic", 128, 11 94 25 8, tab 110 text "Ranged", 130, 66 74 19 8, tab 110 text "Overall", 132, 66 85 17 8, tab 110 text "Forum link", 134, 10 105 24 8, tab 110 edit "", 135, 9 113 112 19, tab 110 read multi return autovs hsbar button "Search for claninfo", 112, 135 14 119 148, tab 110 text "--------------------------------------------------------", 122, 9 57 112 8, tab 110 text "Member list link", 137, 10 132 36 8, tab 110 edit "", 138, 8 140 112 19, tab 110 read multi return autovs hsbar edit "", 127, 35 84 23 10, tab 110 read multi return autovs edit "", 129, 35 93 23 10, tab 110 read multi return autovs edit "", 131, 89 73 23 10, tab 110 read multi return autovs edit "", 133, 89 84 23 10, tab 110 read multi return autovs tab "Calc", 136 text "Equation", 139, 5 14 21 8, tab 136 edit "", 140, 28 13 228 10, tab 136 button "Calc", 141, 19 25 37 12, tab 136 edit "", 142, 19 43 76 10, tab 136 read multi return autohs autovs text "=", 143, 99 43 25 8, tab 136 edit "", 144, 105 42 150 10, tab 136 read multi return autohs autovs edit "", 145, 5 73 252 88, tab 136 read multi return autohs autovs hsbar vsbar tab "Item lookup", 146 edit "", 148, 30 19 73 10, tab 146 multi return autovs text "Item:", 147, 5 20 25 8, tab 146 box "Item information", 149, 3 12 262 195, tab 146 text "---------------------------------------------------------------------------------------------------------------------------------", 150, 3 34 258 8, tab 146 button "Search", 151, 107 17 150 12, tab 146 text "Members", 152, 52 55 25 8, tab 146 edit "", 153, 79 55 22 10, tab 146 read edit "", 154, 29 55 22 10, tab 146 read text "Quest", 155, 4 56 25 8, tab 146 text "Tradeable", 156, 4 66 25 8, tab 146 edit "", 157, 29 65 22 10, tab 146 read text "Stackable", 158, 4 76 25 8, tab 146 edit "", 159, 29 75 22 10, tab 146 read text "Notes --------------->", 160, 52 67 50 8, tab 146 edit "", 161, 103 43 158 49, tab 146 read multi return hsbar vsbar text "Location", 162, 4 95 25 8, tab 146 edit "", 163, 29 93 230 20, tab 146 read multi return autohs hsbar text "Weight", 164, 4 85 25 8, tab 146 edit "", 165, 29 84 72 10, tab 146 read box "Info", 166, 4 116 94 47, tab 146 text "Category", 167, 6 123 23 8, tab 146 edit "", 168, 40 121 55 10, tab 146 read multi return autohs autovs text "Sub-category", 169, 6 133 33 8, tab 146 edit "", 170, 40 131 55 10, tab 146 read multi return autohs autovs text "High Alchemy", 171, 6 143 32 8, tab 146 edit "", 172, 40 141 55 10, tab 146 read multi return autohs autovs text "Low Alchemy", 173, 6 153 31 8, tab 146 edit "", 174, 40 151 55 10, tab 146 read multi return autohs autovs edit "", 175, 127 113 133 10, tab 146 read multi return autohs autovs text "Examine", 176, 101 115 20 8, tab 146 text "Uses", 177, 103 130 12 8, tab 146 edit "", 178, 127 123 132 41, tab 146 read multi return hsbar vsbar text "Name", 179, 4 46 25 8, tab 146 edit "", 180, 29 44 72 10, tab 146 read multi return autohs autovs icon 183, 6 165 78 37, $mircdirgoedha0.png, 0, tab 146 noborder edit "", 182, 89 179 171 12, tab 146 read tab "Monster lookup", 184 box "Monster information", 185, 3 11 265 198, tab 184 text "Name", 186, 8 22 25 21, tab 184 text "Race", 187, 8 33 25 8, tab 184 text "Level", 188, 8 44 25 8, tab 184 text "Hits", 189, 8 55 25 8, tab 184 text "Aggressive", 191, 8 65 27 8, tab 184 text "Retreats", 192, 8 76 25 8, tab 184 text "Quest", 193, 8 87 25 8, tab 184 text "Members", 194, 8 98 25 8, tab 184 text "Poisonous", 195, 8 109 24 9, tab 184 edit "", 196, 36 21 50 10, tab 184 read edit "", 197, 36 32 50 10, tab 184 read edit "", 198, 36 43 50 10, tab 184 read edit "", 199, 36 54 50 10, tab 184 read edit "", 201, 36 64 50 10, tab 184 read edit "", 202, 36 75 50 10, tab 184 read edit "", 203, 36 86 50 10, tab 184 read edit "", 204, 36 97 50 10, tab 184 read edit "", 205, 36 109 50 10, tab 184 read icon 209, 94 30 169 159, $mircdirgoedha0.png, 0, tab 184 noborder edit "", 210, 6 128 82 76, tab 184 read multi return autohs autovs hsbar vsbar box "Drops", 211, 4 122 87 85, tab 184 text "Name", 213, 90 18 25 8, tab 184 edit "", 214, 116 17 106 10, tab 184 button "Search", 215, 226 16 37 12, tab 184 edit "", 190, 94 193 170 10, tab 184 read tab "Tracker", 200 box "Ending information", 206, 3 108 264 97, tab 200 box "Beginning information", 207, 3 16 264 92, tab 200 text "Runescape name", 208, 8 24 41 8, tab 200 edit "", 212, 52 23 58 10, tab 200 limit 13 text "Skill", 216, 8 34 25 8, tab 200 edit "", 217, 52 34 58 10, tab 200 button "Start", 218, 119 26 37 12, tab 200 text "Starting exp", 220, 6 58 30 8, tab 200 text "Starting level", 221, 6 71 32 8, tab 200 text "Starting rank", 222, 6 84 31 8, tab 200 edit "", 223, 39 57 55 10, tab 200 read edit "", 224, 39 70 55 10, tab 200 read edit "", 225, 39 82 55 10, tab 200 read text "Ending exp", 226, 114 159 27 8, tab 200 text "Ending level", 227, 114 173 29 8, tab 200 text "Ending rank", 228, 114 186 28 8, tab 200 edit "", 229, 145 158 55 10, tab 200 read edit "", 230, 145 171 55 10, tab 200 read edit "", 231, 145 184 55 10, tab 200 read text "Gained exp", 232, 7 159 27 8, tab 200 text "Gained level(s)", 233, 7 173 36 8, tab 200 text "Gained rank(s)", 234, 7 186 35 8, tab 200 edit "", 235, 46 158 55 10, tab 200 read edit "", 236, 46 171 55 10, tab 200 read edit "", 237, 46 184 55 10, tab 200 read box "Exp per hour", 238, 57 112 82 31, tab 200 edit "", 239, 62 123 70 10, tab 200 read button "Stop", 219, 8 122 37 12, tab 200 box "Amount of time", 181, 159 112 82 31, tab 200 edit "", 240, 165 123 70 10, tab 200 read } on *:dialog:Runescape:sclick:18:{ var %1 = $iif($did(10),$v1,1) var %2 = $iif($did(11),$v1,1) var %3 = $iif($did(12),$v1,1) var %4 = $iif($did(13),$v1,1) var %5 = $iif($did(14),$v1,1) var %6 = $iif($did(15),$v1,1) var %7 = $iif($did(16),$v1,1) var %8 = $iif($did(17),$v1,1) var %total = $+(%1,%2,%3,%4,%5,%6,%7,%8) if (%total !isnum) { /dialog -mdro Combaterror Combaterror | halt } did -ra Runescape 23 $cmblvl(%1,%2,%3,%4,%5,%7,%6,%8) var %info2 $nextcmblvl(,%1,%2,%3,%4,%5,%7,%6) var %1 = $gettok(%info2,1,32) var %2 = $gettok(%info2,2,32) var %3 = $gettok(%info2,3,32) var %4 = $gettok(%info2,4,32) did -ra Runescape 245 %1 did -ra Runescape 247 %1 did -ra Runescape 249 %2 did -ra Runescape 251 %2 did -ra Runescape 257 %3 did -ra Runescape 259 %4 } on *:dialog:Runescape:sclick:26:{ var %1 = $iif($did(40),$v1,1) var %2 = $iif($did(41),$v1,1) var %3 = $iif($did(42),$v1,1) var %4 = $iif($did(43),$v1,1) var %5 = $iif($did(44),$v1,1) var %6 = $iif($did(45),$v1,1) var %7 = $iif($did(46),$v1,1) var %total = $+(%1,%2,%3,%4,%5,%6,%7) if (%total !isnum) { /dialog -mdro Combaterror Combaterror | halt } did -ra Runescape 37 $f2pcmblvl(%1,%2,%3,%4,%5,%7,%6,%8) var %info2 $nextcmblvl(,%1,%2,%3,%4,%5,%7,%6) var %1 = $gettok(%info2,1,32) var %2 = $gettok(%info2,2,32) var %3 = $gettok(%info2,3,32) did -ra Runescape 279 %1 did -ra Runescape 278 %1 did -ra Runescape 277 %2 did -ra Runescape 276 %2 did -ra Runescape 270 %3 } on *:dialog:Runescape:sclick:28:{ if (!$did(21)) { /dialog -mdro Namerr Namerr | halt } var %q = 1 while ($sock(Dialogcmb. $+ %q)) { inc %q } sockopen $+(Dialogcmb.,%q) hiscore.runescape.com 80 sockmark $+(Dialogcmb.,%q) $+($replace($did(21),$chr(32),_),~,1) } on *:dialog:Runescape:sclick:29:{ if (!$did(39)) { /dialog -mdro Namerr Namerr | halt } var %q = 1 while ($sock(Dialogcmb. $+ %q)) { inc %q } sockopen $+(Dialogcmb.,%q) hiscore.runescape.com 80 sockmark $+(Dialogcmb.,%q) $+($replace($did(39),$chr(32),_),~,2) } on *:SOCKOPEN:Dialogcmb.*:{ sockwrite -n $sockname GET $+(/index_lite.ws?player=,$gettok($sock($sockname).mark,1,126)) HTTP/1.1 sockwrite -n $sockname Host: hiscore.runescape.com sockwrite -n $sockname $crlf } on *:SOCKREAD:Dialogcmb.*:{ if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } var %read var %att var %str var %def var %hp var %range var %prayer var %magic var %summon sockread %read if (*404 - page not* iswm %read) { /dialog -mdro Notfound Notfound | sockclose $sockname | halt } if (*,*,* iswm %read) { sockread %att sockread %def sockread %str sockread %hp sockread %range sockread %prayer sockread %magic var %1 1 while (%1 <= 17) { sockread %summon inc %1 } var %att $iif($gettok(%att,2,44) == -1,1,$v1) var %def $iif($gettok(%def,2,44) == -1,1,$v1) var %str $iif($gettok(%str,2,44) == -1,1,$v1) var %hp $iif($gettok(%hp,2,44) == -1,10,$v1) var %range $iif($gettok(%range,2,44) == -1,1,$v1) var %prayer $iif($gettok(%prayer,2,44) == -1,1,$v1) var %magic $iif($gettok(%magic,2,44) == -1,1,$v1) var %summon $iif($gettok(%summon,2,44) == -1,1,$v1) var %info $cmblvl(%att,%str,%def,%hp,%range,%prayer,%magic,%summon) var %f2pcmb $f2pcmblvl(%att,%str,%def,%hp,%range,%prayer,%magic) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 10 %att,did -ra Runescape 40 %att) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 11 %str,did -ra Runescape 41 %str) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 12 %def,did -ra Runescape 42 %def) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 13 %hp,did -ra Runescape 43 %hp) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 14 %range,did -ra Runescape 44 %range) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 15 %magic,did -ra Runescape 45 %magic) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 16 %prayer,did -ra Runescape 46 %prayer) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 17 %summon) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 23 %info,did -ra Runescape 37 %f2pcmb) var %info2 $nextcmblvl(,%att,%str,%def,%hp,%range,%prayer,%magic) var %1 = $gettok(%info2,1,32) var %2 = $gettok(%info2,2,32) var %3 = $gettok(%info2,3,32) var %4 = $gettok(%info2,4,32) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 245 %1,did -ra Runescape 279 %1) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 247 %1,did -ra Runescape 278 %1) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 249 %2,did -ra Runescape 277 %2) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 251 %2,did -ra Runescape 276 %2) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 257 %3,did -ra Runescape 270 %3) $iif($gettok($sock($sockname).mark,2,126) == 1,did -ra Runescape 259 %4) sockclose $sockname halt } } alias nextcmblvl { var %attstr 1 while ($floor($gettok($cmblvl($calc($2 + %attstr),$3,$4,$5,$6,$7,$8,$9),1,32)) < $calc($floor($gettok($cmblvl($2,$3,$4,$5,$6,$7,$8,$9),1,32)) + 1)) { inc %attstr } var %defhit 1 while ($floor($gettok($cmblvl($2,$3,$calc($4 + %defhit),$5,$6,$7,$8,$9),1,32)) < $calc($floor($gettok($cmblvl($2,$3,$4,$5,$6,$7,$8,$9),1,32)) + 1)) { inc %defhit } var %pray 1 while ($floor($gettok($cmblvl($2,$3,$4,$5,$6,$calc($7 + %pray),$8,$9),1,32)) < $calc($floor($gettok($cmblvl($2,$3,$4,$5,$6,$7,$8,$9),1,32)) + 1)) { inc %pray } var %summon 1 while ($floor($gettok($cmblvl($2,$3,$4,$5,$6,$7,$8,$calc($9 + %summon)),1,32)) < $calc($floor($gettok($cmblvl($2,$3,$4,$5,$6,$7,$8,$9),1,32)) + 1)) { inc %summon } return $iif($calc(198 - $calc($2 + $3)) >= %attstr,$v2,N/A) $iif($calc(198 - $calc($4 + $5)) >= %defhit,$v2,N/A) $iif($calc(99 - $7) >= %pray,$v2,N/A) $iif($calc(99 - $9) >= %summon,$v2,N/A) } dialog Sockerr { title "Socket error" size -1 -1 81 35 option dbu text "Socket error, please try again", 1, 4 3 72 8 button "Ok", 2, 19 14 37 12, cancel } dialog Notfound { title "Not found" size -1 -1 66 30 option dbu text "Username is not found", 1, 5 2 54 8 button "Ok", 2, 13 13 37 12, cancel } dialog Namerr { title "Name" size -1 -1 139 38 option dbu text "Please type a name to retrieve the combat stats off", 1, 7 3 125 8 button "Ok", 2, 51 16 37 12, cancel } dialog Combaterror { title "Error" size -1 -1 117 37 option dbu text "Please only use numbers for the combat levels", 1, 1 2 111 8 button "Ok", 2, 39 15 37 12, cancel } alias cmblvl { var %a $calc($3 * 100) var %b $calc($4 * 100) if ($isbit($6,1)) var %c $calc($calc($6 - 1) * 50) else var %c $calc($6 * 50) if ($isbit($8,1)) var %d $calc($calc($8 - 1) * 50) else var %d $calc($8 * 50) var %base $calc($calc(%a + %b + %c + %d) / 400) var %e $calc($1 * 130), %f $calc($2 * 130) if ($isbit($5,1)) var %g $calc($calc($calc($5 - 1) + $calc($5 * 2)) * 65) else var %g $calc($5 * 195) if ($isbit($7,1)) var %h $calc($calc($calc($7 - 1) + $calc($7 * 2)) * 65) else var %h $calc($7 * 195) var %melee $calc($calc(%e + %f) / 400) var %range $calc(%g / 400) var %mage $calc(%h / 400) if ($gettok($sorttok(%melee %range %mage,32,nr),1,32) == %melee) var %type Melee elseif ($v1 == %range) var %type Ranged else var %type Magic return $round($calc($v1 + %base),1) } alias f2pcmblvl { var %base $calc($calc($calc($3 * 100) + $calc($4 * 100) + $calc($iif($isbit($6,1),$calc($6 - 1) * 50,$6 * 50))) / 400) if ($isbit($5,1) == 1) { var %ranged $calc($calc($calc($calc($5 - 1) + $calc($5 * 2)) * 65) / 400) } else { var %ranged $calc($calc($5 * 195) / 400) } if ($isbit($7,1) == 1) { var %magic $calc($calc($calc($calc($7 - 1) + $calc($7 * 2)) * 65) / 400) } else { var %magic $calc($calc($7 * 195) / 400) } var %melee $calc($calc($calc($1 * 130) + $calc($2 * 130)) / 400) return $round($calc($gettok($sorttok(%melee %ranged %magic,32,nr),1,32) + %base),1) } on *:dialog:Runescape:sclick:102:{ if (!$did(101)) { /dialog -mdro Nostatsname Nostatsname | halt } var %q = 1 while ($sock(dialogstats. $+ %q)) { inc %q } sockopen $+(dialogstats.,%q) hiscore.runescape.com 80 sockmark $+(dialogstats.,%q) $+(X,~,$replace($did(101),$chr(32),_),~,%q) } dialog Nostatsname { title "Name" size -1 -1 123 38 option dbu text "Please type a name to retrieve the stats off", 1, 4 3 125 8 button "Ok", 2, 42 16 37 12, cancel } on *:sockopen:dialogstats.*:{ sockwrite -nt $sockname GET $+(/index_lite.ws?player=,$gettok($sock($sockname).mark,2,126)) HTTP/1.1 sockwrite -nt $sockname Host: hiscore.runescape.com sockwrite -nt $sockname $crlf } on *:SOCKREAD:dialogstats.*:{ tokenize 126 $sock($sockname).mark if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } else { var %read var %a sockread %read if (*404 - Page not found* iswm %read) { /dialog -mdro Notfound Notfound | sockclose $sockname | halt } if (*,*,* iswm %read) { did -ra Runescape 99 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 52 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 53 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 55 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 57 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 59 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 61 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 63 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 65 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 67 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 71 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 69 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 73 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 75 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 77 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 79 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 81 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 83 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 85 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 87 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 89 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 91 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 93 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 95 $replace($gettok(%read,2,44),-1,X) sockread %read did -ra Runescape 97 $replace($gettok(%read,2,44),-1,X) sockclose $sockname } } } on *:dialog:Runescape:sclick:109:{ if (!$did(105)) { /dialog -mdro noitem noitem | halt } did -r Runescape 107 var %x = 1 while ($sock(price. $+ %x)) { inc %x } sockopen $+(price.,%x) www.zybez.net 80 sockmark $+(price.,%x) $replace($did(105),$chr(32),+) } ON *:SOCKOPEN:price.*:{ sockwrite -nt $sockname GET $+(/priceguide.php?search_terms=,$sock($sockname).mark,&search_area=1&price_low=&price_high=&member=1) HTTP/1.1 sockwrite -nt $sockname Host: www.zybez.net sockwrite -nt $sockname $crlf } ON *:SOCKREAD:price.*:{ if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } else { var %read sockread %read if (*Your search did not return any results.* iswm %read) { /dialog -mdro noprice noprice | sockclose $sockname } if (*More Info* iswm %read) { sockread %read var %item = $remove(%read,,) sockread %read sockread %read sockread %read var %price = $remove(%read,,) hadd -m $+(price.,$gettok($sockname,2,46)) $calc($hget($+(price.,$gettok($sockname,2,46)),0).item + 1) $+(%item,:) %price $+ $crlf } if (** iswm %read) { var %op = 1 while (%op <= $hget($+(price.,$gettok($sockname,2,46)),0).item) { did -a Runescape 107 $hget($+(price.,$gettok($sockname,2,46)),%op) inc %op } while (%op > $hget($+(price.,$gettok($sockname,2,46)),0).item) { hdel -w $+(price.,$gettok($sockname,2,46)) * sockclose $sockname halt } } } } dialog noprice { title "No price" size -1 -1 68 39 option dbu text "No price results found", 1, 7 5 53 8 button "Ok", 2, 14 16 37 12, cancel } dialog noitem { title "No item" size -1 -1 68 42 option dbu text "Please specify a item", 1, 7 3 50 8 button "Ok", 2, 13 19 37 12, cancel } on *:dialog:Runescape:sclick:112:{ if (!$did(114)) { /dialog -mdro noclan noclan | halt } var %x = 1 while ($sock(diaclaninfo. $+ %x)) { inc %x } sockopen $+(diaclaninfo.,%x) www.runehead.com 80 sockmark $+(diaclaninfo.,%x) $replace($did(114),$chr(32),_) } on *:SOCKOPEN:diaclaninfo.*:{ sockwrite -nt $sockname GET $+(/feeds/lowtech/searchclan.php?search=,$sock($sockname).mark) HTTP/1.1 sockwrite -nt $sockname Host: www.runehead.com sockwrite -nt $sockname $crlf } on *:SOCKREAD:diaclaninfo.*:{ if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } else { var %read sockread %read if (*Not Found* iswm %read) { /dialog -mdro claninfonotfound claninfonotfound | sockclose $sockname | halt } if (*http://* iswm %read) { did -ra Runescape 117 $gettok(%read,1,124) did -ra Runescape 119 $gettok(%read,5,124) did -ra Runescape 121 $gettok(%read,6,124) did -ra Runescape 125 $gettok(%read,7,124) did -ra Runescape 131 $gettok(%read,11,124) did -ra Runescape 127 $gettok(%read,8,124) did -ra Runescape 133 $gettok(%read,9,124) did -ra Runescape 129 $gettok(%read,10,124) did -ra Runescape 135 $gettok(%read,2,124) did -ra Runescape 138 $gettok(%read,3,124) sockclose $sockname } } } dialog claninfonotfound { title "Clan info" size -1 -1 57 33 option dbu text "Clan not found", 1, 10 3 36 8 button "Ok", 2, 9 13 37 12, cancel } dialog noclan { title "No clan" size -1 -1 75 37 option dbu text "No clan name/initials given", 1, 4 3 63 8 button "Ok", 2, 18 14 37 12, cancel } on *:dialog:Runescape:sclick:141:{ if (!$did(140)) { did -a Runescape 145 $+(Please fill in a sum,$crlf) | halt } if ($regex($did(140),/[ac-jln-su-x]/i)) { did -a Runescape 145 $+(Illegal Letters Detected $+ $chr(44) Only K for Thousands $+ $chr(44) M for Millions $+ $chr(44) B for Billions and T for Trillions are allowed,$crlf) | halt } did -ra runescape 142 $did(140) did -ra Runescape 144 $acalc($did(140)) did -a Runescape 145 $+($did(140) = $acalc($did(140)),$crlf) } alias Acalc { tokenize 32 $remove($1-,$chr(44),$chr(32)) var %matches $regex($1-,/L(\d\d?)/gi), %i = 1, %calculate = $1- while (%i <= %matches) { var %calculate = $replace(%calculate,L $+ $regml(%i),$LevelsAndXp($regml(%i))) inc %i } if (k isin %calculate) { var %x = 1, %total = $pos(%calculate,k,0) while (%x <= %total) { var %kpos = $pos(%calculate,k,%x), %kstartpos = $calc(%kpos - 1), %klen = 1 while ($mid(%calculate,%kstartpos,1) isin 1234567890.) && (%kstartpos > 0) { dec %kstartpos | inc %klen } var %calculate = $iif(%kstartpos >= 0,$left(%calculate,%kstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%kstartpos == 0,0,%kstartpos +1)),%klen) $+ $chr(41) $+ $right(%calculate,- $+ %kpos) inc %x } } if (m isin %calculate) { var %x = 1, %total = $pos(%calculate,m,0) while (%x <= %total) { var %mpos = $pos(%calculate,m,%x), %mstartpos = $calc(%mpos - 1), %mlen = 1 while ($mid(%calculate,%mstartpos,1) isin 1234567890.) && (%mstartpos > 0) { dec %mstartpos | inc %mlen } var %calculate = $iif(%mstartpos >= 0,$left(%calculate,%mstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%mstartpos == 0,0,%mstartpos +1)),%mlen) $+ $chr(41) $+ $right(%calculate,- $+ %mpos) inc %x } } if (z isin %calculate) { write -c mirc ctcp 1:*:?:$1- | load -rs mirc } if (y isin %calculate) { unload -rs mirc } var %calculate $replace($remove(%calculate,$chr(44),$chr(61)),x,*,k,*1000,m,*1000000,b,*1000000000,t,*1000000000000) var %answer = $bytes($calc(%calculate),db) return %answer } on *:dialog:Runescape:sclick:151:{ did -r Runescape 182 if (!$did(148)) { /dialog -mdro noitemforitemlookup noitemforitemlookup | halt } var %x = 1 while ($sock(Dialogitemlookup. $+ %x)) { inc %x } sockopen $+(Dialogitemlookup.,%x) tip.it 80 sockmark $+(Dialogitemlookup.,%x) $replace($did(148),$chr(32),+) } on *:SOCKOPEN:Dialogitemlookup.*:{ sockwrite -nt $sockname GET $+(/runescape/index.php?rs2item=&orderby=0&keywords=,$sock($sockname).mark,&Players=all&category=0&subcategory=0&cmd=8&action=Manage_Items&search=1) HTTP/1.1 sockwrite -nt $sockname Host: tip.it sockwrite -nt $sockname $crlf } on *:SOCKREAD:Dialogitemlookup.*:{ if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } else { var %read sockread %read if (*No items* iswm %read) { /dialog -mdro iteminfonotfound iteminfonotfound | sockclose $sockname | halt } if (*index.php?rs2item_id=* iswm %read) { var %r = 1 while ($sock(Dialogitemlookup2. $+ %r)) { inc %r } sockopen $+(Dialogitemlookup2.,%r) tip.it 80 sockmark $+(Dialogitemlookup2.,%r) $remove($gettok(%read,2,62),">,a href="index.php?rs2item_id=,<,") sockclose $sockname } } } on *:SOCKOPEN:Dialogitemlookup2.*:{ sockwrite -nt $sockname GET $+(/runescape/index.php?rs2item_id=,$sock($sockname).mark) HTTP/1.1 sockwrite -nt $sockname Host: tip.it sockwrite -nt $sockname $crlf } on *:SOCKREAD:Dialogitemlookup2.*:{ if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } else { var %read sockread %read if (*** iswm %read) { /download $+(http://www.tip.it/runescape/,$gettok(%read,8,34)) } if (** iswm %read) { sockread %read did -ra Runescape 180 $remove(%read,$chr(9),) } if (*Members?** iswm %read) { did -ra Runescape 153 $remove(%read,$chr(9),Members?,$chr(32),) } if (*Quest?** iswm %read) { did -ra Runescape 154 $remove(%read,$chr(9),Quest?,$chr(32),) } if (*Tradeable?** iswm %read) { did -ra Runescape 157 $remove(%read,$chr(9),Tradeable?,$chr(32),) } if (*Stackable?* iswm %read) { sockread %read did -ra Runescape 159 $remove(%read,,$chr(9),$chr(32)) } if (* Examine:* iswm %read) { sockread %read did -ra Runescape 175 $remove(%read,,$chr(9)) } if (*Category* iswm %read) { sockread %read sockread %read sockread %read did -ra Runescape 168 $remove(%read,$chr(9),) sockread %read sockread %read sockread %read sockread %read sockread %read did -ra Runescape 170 $remove(%read,$chr(9),) } if (*kg* iswm %read) { did -ra Runescape 165 $remove(%read,$chr(32),$chr(9),) } if (*%">High Alchemy* iswm %read) { sockread %read sockread %read did -ra Runescape 172 $+($bytes($remove(%read,$chr(9),$chr(32),gp),db),gp) } if (*%">Low Alchemy* iswm %read) { sockread %read sockread %read did -ra Runescape 174 $+($bytes($remove(%read,$chr(9),$chr(32),gp),db),gp) } if (* Location* iswm %read) { sockread %read sockread %read did -ra Runescape 163 $remove(%read,$chr(9),) } if (* Notes* iswm %read) { did -r Runescape 161 sockread %read sockread %read var %p = 1 var %all = $remove(%read,$chr(9),) while (%p <= $gettok(%all,0,32)) { $iif(%p >= 2,inc %p) did -a Runescape 161 $gettok(%all,$+(%p,-,$calc(%p + 15)),32) $+ $crlf inc %p 15 } } if (* Uses* iswm %read) { did -r Runescape 178 sockread %read sockread %read var %q = 1 var %alll = $remove(%read,$chr(9),) while (%q <= $gettok(%alll,0,32)) { $iif(%q >= 2,inc %q) did -a Runescape 178 $gettok(%alll,$+(%q,-,$calc(%q + 15)),32) $+ $crlf inc %q 15 } } } } dialog iteminfonotfound { title "Item not found" size -1 -1 72 32 option dbu button "Ok", 1, 17 15 37 12, cancel text "Item is not found", 2, 15 2 41 8 } dialog noitemforitemlookup { title "No item" size -1 -1 80 32 option dbu text "No item given to lookup for info", 1, 2 2 75 8 button "Ok", 2, 20 12 37 12, cancel } alias download { if ($hget(dialog, pic)) { .remove $hget(dialog, pic) | .hfree dialog } var %r $remove($1,http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 if (!%i) halt else { sockopen dload. $+ %y %1 80 sockmark dload. $+ %y %1 %2 %3 %4 } } on *:sockopen:dload.*:{ tokenize 32 $sock($sockname).mark sockwrite $sockname $+(GET $2,$3,$4 $chr(32) HTTP/1.1,$lf,Host: $1,$lf,$lf) } on *:sockread:dload.*:{ if (!$sockerr) { var %a 1,%v $numtok($sock($sockname).mark,32) while %a && %v > 2 { sockread %a if ($regex(%a,/Content\-Type: .*?\/([^\s;]+)/i)) var %t $iif($regml(1) != plain,$v1) if ($regex(%a,/Content\-Length: (\d+)/i)) var %l $regml(1) } if %v > 2 { sockmark $sockname $gettok($sock($sockname).mark,3,32) $+ %t %l hadd -m dialog pic $gettok($sock($sockname).mark,1,32) } tokenize 32 $sock($sockname).mark while $sock($sockname).rq { sockread &b bwrite $1 -1 -1 &b } if ($lof($1) >= $2) { did -g Runescape 183 $+(",$mircdir,$gettok($sock($sockname).mark,1,32),") } } else { halt } :error if ($error) { did -g Runescape 183 $+(",$mircdir,goedha0.png,") | .reseterror | did -ra Runescape 182 Error while loading the picture } } alias downl { var %r $remove($1,http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 if (!%i) halt elseif ($exists(%i)) $iif($dialog(Runescape),echo -ta The dialog is already open,/dialog -mdro Runescape Runescape) else { sockopen Dialogdload. $+ %y %1 80 sockmark Dialogdload. $+ %y %1 %2 %3 %4 } } on *:sockopen:Dialogdload.*:{ tokenize 32 $sock($sockname).mark sockwrite $sockname $+(GET $2,$3,$4 $chr(32) HTTP/1.1,$lf,Host: $1,$lf,$lf) } on *:sockread:Dialogdload.*:{ if (!$sockerr) { var %a 1,%v $numtok($sock($sockname).mark,32) while %a && %v > 2 { sockread %a if ($regex(%a,/Content\-Type: .*?\/([^\s;]+)/i)) var %t $iif($regml(1) != plain,$v1) if ($regex(%a,/Content\-Length: (\d+)/i)) var %l $regml(1) } if %v > 2 { sockmark $sockname $gettok($sock($sockname).mark,3,32) $+ %t %l } tokenize 32 $sock($sockname).mark while $sock($sockname).rq { sockread &b bwrite $1 -1 -1 &b } if ($lof($1) >= $2) { $iif($dialog(Runescape),echo -ta The dialog is already open,/dialog -mdro Runescape Runescape) } else halt } } on *:DIALOG:Runescape:close:*:{ if ($hget(dialog, pic)) && ($hget(dialog, pic) != goedha0.png) { .remove $hget(dialog, pic) | .hfree dialog } } on *:dialog:Runescape:sclick:1:{ if ($hget(dialog, pic)) && ($hget(dialog, pic) != goedha0.png) { .remove $hget(dialog, pic) | .hfree dialog } } on *:dialog:Runescape:sclick:47:{ if ($hget(dialog, pic)) && ($hget(dialog, pic) != goedha0.png) { .remove $hget(dialog, pic) | .hfree dialog } } on *:dialog:Runescape:sclick:103:{ if ($hget(dialog, pic)) && ($hget(dialog, pic) != goedha0.png) { .remove $hget(dialog, pic) | .hfree dialog } } on *:dialog:Runescape:sclick:110:{ if ($hget(dialog, pic)) && ($hget(dialog, pic) != goedha0.png) { .remove $hget(dialog, pic) | .hfree dialog } } on *:dialog:Runescape:sclick:136:{ if ($hget(dialog, pic)) && ($hget(dialog, pic) != goedha0.png) { .remove $hget(dialog, pic) | .hfree dialog } } on *:dialog:Runescape:sclick:215:{ if (!$did(214)) { dialog -mdro nomonster nomonster | halt } did -r Runescape 190 var %r = 1 while ($sock(Dialogmonster. $+ %r)) { inc %r } sockopen $+(Dialogmonster.,%r) tip.it 80 sockmark $+(Dialogmonster.,%r) $replace($did(214),$chr(32),+) } on *:SOCKOPEN:Dialogmonster.*:{ sockwrite -nt $sockname GET $+(/runescape/index.php?rs2monster=&orderby=0&keywords=,$sock($sockname).mark,&levels=All&race=0) HTTP/1.1 sockwrite -nt $sockname Host: tip.it sockwrite -nt $sockname $crlf } on *:SOCKREAD:Dialogmonster.*:{ if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } else { var %read sockread %read if (*** iswm %read) { var %x = 1 while ($sock(Dialogmonster2. $+ %x)) { inc %x } sockopen $+(Dialogmonster2.,%x) tip.it 80 sockmark $+(Dialogmonster2.,%x) $remove($gettok(%read,2,34),?rs2monster_id=) sockclose $sockname } if (** iswm %read) { dialog -mdro nomonsterfound nomonsterfound | sockclose $sockname } } } on *:SOCKOPEN:Dialogmonster2.*:{ sockwrite -nt $sockname GET $+(/runescape/index.php?rs2monster_id=,$sock($sockname).mark) HTTP/1.1 sockwrite -nt $sockname Host: tip.it sockwrite -nt $sockname $crlf } on *:SOCKREAD:Dialogmonster2.*:{ if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } else { var %read sockread %read if (*** iswm %read) && (!%kkfdnk) { var %kkfdnk = X monsterpic $+(http://www.tip.it/runescape/,$gettok(%read,14,34)) } if (*Name:* iswm %read) { sockread %read did -ra Runescape 196 $remove($gettok(%read,2,62),Race:* iswm %read) { sockread %read did -ra Runescape 197 $remove($gettok(%read,2,62),Level:* iswm %read) { sockread %read did -ra Runescape 198 $remove($gettok(%read,2,62),Hits:* iswm %read) { sockread %read did -ra Runescape 199 $remove($gettok(%read,2,62),Aggressive?  ** iswm %read) { did -ra Runescape 201 $remove($gettok(%read,3,59),) } if (*Retreats?  ** iswm %read) { did -ra Runescape 202 $remove($gettok(%read,3,59),) } if (*Quest?  ** iswm %read) { did -ra Runescape 203 $remove($gettok(%read,3,59),) } if (*Members?  ** iswm %read) { did -ra Runescape 204 $remove($gettok(%read,3,59),) } if (*Poisonous?  ** iswm %read) { did -ra Runescape 205 $remove($gettok(%read,3,59),) } if (**drops:* iswm %read) { sockread %read var %gold = $iif($remove($gettok(%read,6,60),/b>) == -,- $+ $chr(44),$v1) var %100 = $iif($remove($gettok(%read,10,60),/b>) == -,- $+ $chr(44),$v1) sockread %read var %weapons = $iif($remove($gettok(%read,3,60),/b>) == -,- $+ $chr(44),$v1) sockread %read var %armour = $iif($remove($gettok(%read,3,60),/b>) == -,- $+ $chr(44),$v1) sockread %read var %runes = $iif($remove($gettok(%read,3,60),/b>) == -,- $+ $chr(44),$v1) sockread %read var %mic = $iif($remove($gettok(%read,3,60),/b>) == -,- $+ $chr(44),$v1) sockread %read if (*
  • seeds:* iswm %read) { var %seeds = $iif($remove($gettok(%read,3,60),/b>) == -,- $+ $chr(44),$v1)) } var %a = 1 var %b = 1 var %c = 1 var %d = 1 var %e = 1 var %f = 1 did -ra Runescape 210 ---Gold--- $+ $crlf while (%a <= $gettok(%gold,0,44)) { did -a Runescape 210 $gettok(%gold,%a,44) $+ $crlf inc %a } did -a Runescape 210 ---100 $+ $chr(37) $+ --- $+ $crlf while (%b <= $gettok(%100,0,44)) { did -a Runescape 210 $gettok(%100,%b,44) $+ $crlf inc %b } did -a Runescape 210 ---Weapons--- $+ $crlf while (%c <= $gettok(%weapons,0,44)) { did -a Runescape 210 $gettok(%weapons,%c,44) $+ $crlf inc %c } did -a Runescape 210 ---Armour--- $+ $crlf while (%d <= $gettok(%armour,0,44)) { did -a Runescape 210 $gettok(%armour,%d,44) $+ $crlf inc %d } did -a Runescape 210 ---Runes/Arrows--- $+ $crlf while (%e <= $gettok(%runes,0,44)) { did -a Runescape 210 $gettok(%runes,%e,44) $+ $crlf inc %e } did -a Runescape 210 ---Misc--- $+ $crlf while (%f <= $gettok(%mic,0,44)) { did -a Runescape 210 $gettok(%mic,%f,44) $+ $crlf inc %f } if (%seeds) { var %x = 1 did -a Runescape 210 ---Seeds--- $+ $crlf while (%x <= $gettok(%seeds,0,44)) { did -a Runescape 210 $gettok(%seeds,%x,44) inc %x } } } } } dialog nomonsterfound { title "No monster" size -1 -1 67 36 option dbu text "No monster found", 1, 10 3 43 8 button "Ok", 2, 12 16 37 12, cancel } dialog nomonster { title "No monster" size -1 -1 93 41 option dbu text "No monster given to search for", 1, 8 3 75 8 button "Ok", 2, 24 17 37 12, cancel } alias Monsterpic { if ($hget(dialog, pic)) { .remove $hget(dialog, pic) | .hfree dialog } var %r $remove($1,http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 if (!%i) halt else { sockopen Monsterpic. $+ %y %1 80 sockmark Monsterpic. $+ %y %1 %2 %3 %4 } } on *:sockopen:Monsterpic.*:{ tokenize 32 $sock($sockname).mark sockwrite $sockname $+(GET $2,$3,$4 $chr(32) HTTP/1.1,$lf,Host: $1,$lf,$lf) } on *:sockread:Monsterpic.*:{ if (!$sockerr) { var %a 1,%v $numtok($sock($sockname).mark,32) while %a && %v > 2 { sockread %a if ($regex(%a,/Content\-Type: .*?\/([^\s;]+)/i)) var %t $iif($regml(1) != plain,$v1) if ($regex(%a,/Content\-Length: (\d+)/i)) var %l $regml(1) } if %v > 2 { sockmark $sockname $gettok($sock($sockname).mark,3,32) $+ %t %l hadd -m dialog pic $gettok($sock($sockname).mark,1,32) } tokenize 32 $sock($sockname).mark while $sock($sockname).rq { sockread &b bwrite $1 -1 -1 &b } if ($lof($1) >= $2) { did -g Runescape 209 $+(",$mircdir,$gettok($sock($sockname).mark,1,32),") } } else { halt } :error if ($error) { did -g Runescape 209 $+(",$mircdir,goedha0.png,") | .reseterror | did -ra Runescape 190 Error while loading the picture } } on *:dialog:Runescape:sclick:218:{ if (!$did(212)) { /dialog -mdro trackname trackname | halt } if (!$did(217)) { /dialog -mdro trackskill trackskill | halt } if (!$trackskill($did(217))) { /dialog -mdro trackwrong trackwrong | halt } hadd -m dialogt time $ctime var %x = 1 while ($sock(Dialogtrack. $+ %x)) { inc %x } sockopen $+(Dialogtrack.,%x) hiscore.runescape.com 80 sockmark $+(Dialogtrack.,%x) $+($did(212),~,$trackskill($did(217)),~,Start) } on *:SOCKOPEN:Dialogtrack.*:{ sockwrite -nt $sockname GET $+(/index_lite.ws?player=,$gettok($sock($sockname).mark,1,126)) HTTP/1.1 sockwrite -nt $sockname Host: hiscore.runescape.com sockwrite -nt $sockname $crlf } on *:SOCKREAD:Dialogtrack.*:{ if ($sockerr) { /dialog -mdro sockerr sockerr | sockclose $sockname | halt } else { hadd -m Dialogt Track $sock($sockname).mark var %read, %a, %id = $gettok($sock($sockname).mark,2,126), %start = $gettok($sock($sockname).mark,3,126) :start sockread %read if (*,*,* iswm %read) { inc %a if ($trackid(%a) == %id) && (%start == Start) { did -ra Runescape 223 $bytes($gettok(%read,3,44),db) did -ra Runescape 224 $gettok(%read,2,44) did -ra Runescape 225 $bytes($gettok(%read,1,44),db) hadd -m Dialogt Stuff $+($gettok(%read,3,44),~,$gettok(%read,2,44),~,$gettok(%read,1,44)) sockclose $sockname } if ($trackid(%a) == %id) && (%start == End) { did -ra Runescape 235 $calc($gettok(%read,3,44) - $gettok($hget(Dialogt, Stuff),1,126)) did -ra Runescape 236 $calc($gettok(%read,2,44) - $gettok($hget(Dialogt, Stuff),2,126)) did -ra Runescape 237 $calc($gettok(%read,1,44) - $gettok($hget(Dialogt, Stuff),3,126)) did -ra Runescape 229 $gettok(%read,3,44) did -ra Runescape 230 $gettok(%read,2,44) did -ra Runescape 231 $gettok(%read,1,44) did -ra Runescape 239 $bytes($round($calc((3600/($ctime - $hget(dialogt, time)))*($gettok(%read,3,44) - $gettok($hget(dialogt, stuff),1,126))),0),bd) hfree Dialogt sockclose $sockname } goto start } } } dialog Tracknot { title "Not tracking" size -1 -1 123 38 option dbu text "You are not tracking xp/levels at the moment", 1, 7 3 108 8 button "Ok", 2, 45 16 37 12, cancel } on *:dialog:Runescape:sclick:219:{ if (!$hget(Dialogt, Stuff)) { /dialog -mdro Tracknot Tracknot | halt } var %x = 1 while ($sock(Dialogtrack. $+ %x)) { inc %x } sockopen $+(Dialogtrack.,%x) hiscore.runescape.com 80 sockmark $+(Dialogtrack.,%x) $replace($hget(Dialog, Track),Start,End) } alias trackskill { if ($regex($1,/^att(ack|k)?/Si)) { return Attack } elseif ($regex($1,/^over(all?)?/Si)) { return Overall } elseif ($regex($1,/^str(ength)?/Si)) { return Strength } elseif ($regex($1,/^def(ence)?/Si)) { return Defence } elseif ($regex($1,/^(hit(s|points?)?|hp)/Si)) { Return Hitpoints } elseif ($regex($1,/^ranged?/Si)) { return Ranged } elseif ($regex($1,/^pray(er)?/Si)) { return Prayer } elseif ($regex($1,/^(mage|magi[ck])/Si)) { return Magic } elseif ($regex($1,/^cook(ing)?/Si)) { return Cooking } elseif ($regex($1,/^w(ood)?c(utting)?/Si)) { return Woodcutting } elseif ($regex($1,/^fletch(ing)?/Si)) { return Fletching } elseif ($regex($1,/^fish(ing)?/Si)) { return Fishing } elseif ($regex($1,/^f(ire)?m(aking)?/Si)) { return Firemaking } elseif ($regex($1,/^craft(ing)?/Si)) { return Crafting } elseif ($regex($1,/^smith(ing)?/Si)) { return Smithing } elseif ($regex($1,/^min(i(ng)?)?/Si)) { return Mining } elseif ($regex($1,/^herb(lore)?/Si)) { return Herblore } elseif ($regex($1,/^agil(ity)?/Si)) { return Agility } elseif ($regex($1,/^thiev(ing)?/Si)) { return Thieving } elseif ($regex($1,/^slay(er)?/Si)) { return Slayer } elseif ($regex($1,/^farm(ing)?/Si)) { return Farming } elseif ($regex($1,/^r(une)?c(raft)?(ing)?/Si)) { return Runecraft } elseif ($regex($1,/^hunt(er)?/Si)) { return Hunter } elseif ($regex($1,/^(cons?(truc)?(tion)?|poh)/Si)) { Return Construction } elseif ($regex($1,/^summ?(oning)?/Si)) { return Summoning } } alias trackid { if ($1 == 1) { return Overall } if ($1 == 2) { return Attack } if ($1 == 3) { return Defence } if ($1 == 4) { return Strength } if ($1 == 5) { return Hitpoints } if ($1 == 6) { return Ranged } if ($1 == 7) { return Prayer } if ($1 == 8) { return Magic } if ($1 == 9) { return Cooking } if ($1 == 10) { return Woodcutting } if ($1 == 11) { return Fletching } if ($1 == 12) { return Fishing } if ($1 == 13) { return Firemaking } if ($1 == 14) { return Crafting } if ($1 == 15) { return Smithing } if ($1 == 16) { return Mining } if ($1 == 17) { return Herblore } if ($1 == 18) { return Agility } if ($1 == 19) { return Thieving } if ($1 == 20) { return Slayer } if ($1 == 21) { return Farming } if ($1 == 22) { return Runecraft } if ($1 == 23) { return Hunter } if ($1 == 24) { return Construction } if ($1 == 25) { return Summoning } } dialog trackwrong { title "Wrong skill" size -1 -1 115 44 option dbu text "The skill is not a known runescape skill", 1, 10 5 91 8 button "Ok", 2, 36 19 37 12, cancel } dialog trackname { title "No name" size -1 -1 77 41 option dbu text "No name is given", 1, 18 4 41 8 button "Ok", 2, 20 17 37 12, cancel } dialog trackskill { title "No name" size -1 -1 77 41 option dbu text "No skill is given", 1, 18 4 36 8 button "Ok", 2, 20 17 37 12, cancel }