Server Seek — File Browser
ServerSeekv1.2 / ServerSeekv1.2 / serverseek.mrc
serverseek.mrc — 6 KB — Download this file
;
; Server Seek version 1.2
; By Sanosuke (aka sanza)
;
on *:load:{
if ($version < 5.7) { echo $colour(info) -t *** Invalid version. Please use mIRC 5.7 (5.91 highly suggested) or higher | .unload -rs $nopath($script) }
else { serverseek }
}
menu menubar,channel,status {
Server Seek
.Open:serverseek
.Unload:.unload -rs $nopath($script)
}
dialog locserver {
title "Server Seek"
size -1 -1 302 257
box "Possible Server Matches", 8, 5 95 230 120
button "Search", 9, 240 101 54 24
list 11, 12 112 213 96, sort size vsbar
button "Close", 12, 240 189 54 24, ok cancel
box "Configuration", 13, 6 6 288 84
text "ex: 'us' or 'eu'", 4, 61 41 74 16
edit %ls.c, 3, 12 39 45 21, disable autohs
check "Enter your state/province:", 6, 142 19 144 19
edit %ls.s, 5, 141 38 45 21, disable autohs
text "ex: 'in' or 'on'", 7, 191 41 71 16
text "Waiting", 19, 5 222 295 16
text "Current server:", 23, 4 239 79 16
text "n/a (n/a)", 24, 82 239 221 14
button "About", 26, 240 160 54 24
check "Enter your country:", 27, 13 19 113 19
check "Enter a network:", 1, 13 62 103 21
edit %ls.n, 2, 117 62 63 21, disable autohs
text "ex: 'Dal' or 'UnderNet'", 10, 182 65 113 16
button "Connect", 14, 240 131 54 24
}
dialog ls.about {
title "About"
size -1 -1 269 209
text "Server Seek (version 1.2)", 1, 10 10 181 17
text "By Sanosuke (aka sanza)", 3, 10 25 130 18
text "A special thanks to Soul_Eater. He gave me a piece of code that aided in the output of the servers.", 4, 11 45 248 32
button "OK", 5, 207 178 54 24, ok cancel
box "Note", 2, 10 78 248 94
text "Due to the fact that server names aren't all in the same format, some servers may not match any query.", 6, 17 92 232 44
text "Servers such as 'us.undernet.org' will work.", 7, 17 133 229 17
text "However, 'irc.dal.net' will not.", 8, 17 147 138 16
}
on *:dialog:locserver:sclick:14:server $did(locserver,11).seltext
on *:dialog:locserver:sclick:26:dialog -m ls.about ls.about
on *:dialog:locserver:sclick:6:{
set %ls.sp $did(locserver,6).state
if (%ls.sp) { did -e locserver 5 }
else { did -b locserver 5 }
}
on *:dialog:locserver:sclick:1:{
set %ls.nt $did(locserver,1).state
if (%ls.nt) { did -e locserver 2 }
else { did -b locserver 2 }
}
on *:dialog:locserver:sclick:27:{
set %ls.cs $did(locserver,27).state
if (%ls.cs) { did -e locserver 3 }
else { did -b locserver 3 }
}
alias serverseek { dialog -m locserver locserver }
on *:dialog:locserver:init:*:{
did -a locserver 24 $iif($server == $null,Disconnected,$server $+ : $+ $port)
if (%ls.sp) {
did -e locserver 5
did -c locserver 6
}
else { did -b locserver 5 }
if (%ls.cs) {
did -e locserver 3
did -c locserver 27
}
else { did -b locserver 3 }
if (%ls.nt) {
did -e locserver 2
did -c locserver 1
}
else { did -b locserver 2 }
}
on *:dialog:locserver:sclick:9:{
did -r locserver 11
%ls.d = $ticks
%ls.c = $did(locserver,3).text
%ls.s = $did(locserver,5).text
%ls.n = $did(locserver,2).text
%ls.si.lines = $calc($lines(servers.ini) - 3)
%ls.si.cl = 0
did -a locserver 19 Scanning servers.ini (server %ls.si.cl of %ls.si.lines $+ )
while (%ls.si.cl <= %ls.si.lines) {
%ls.si.temp = $remove($readini(servers.ini,servers,n $+ %ls.si.cl),$chr(44))
if (%ls.sp == 1) && (%ls.cs == 1) && (%ls.nt == 1) {
if (. $+ %ls.c $+ . isin %ls.si.temp) && (. $+ %ls.s $+ . isin %ls.si.temp) && (%ls.n isin %ls.si.temp) {
var %ls.temp2 $mid(%ls.si.temp,$pos(%ls.si.temp,SERVER:,1),256)
did -a locserver 11 $remove($gettok(%ls.temp2,1-2,58),GROUP,SERVER:)
}
}
if (%ls.sp == 1) && (%ls.cs == 0) && (%ls.nt == 1) {
if (. $+ %ls.s $+ . isin %ls.si.temp) && (%ls.n isin %ls.si.temp) {
var %ls.temp2 $mid(%ls.si.temp,$pos(%ls.si.temp,SERVER:,1),256)
did -a locserver 11 $remove($gettok(%ls.temp2,1-2,58),GROUP,SERVER:)
}
}
if (%ls.sp == 0) && (%ls.cs == 0) && (%ls.nt == 1) {
if (%ls.n isin %ls.si.temp) {
var %ls.temp2 $mid(%ls.si.temp,$pos(%ls.si.temp,SERVER:,1),256)
did -a locserver 11 $remove($gettok(%ls.temp2,1-2,58),GROUP,SERVER:)
}
}
if (%ls.sp == 0) && (%ls.cs == 1) && (%ls.nt == 1) {
if (. $+ %ls.c $+ . isin %ls.si.temp) && (%ls.n isin %ls.si.temp) {
var %ls.temp2 $mid(%ls.si.temp,$pos(%ls.si.temp,SERVER:,1),256)
did -a locserver 11 $remove($gettok(%ls.temp2,1-2,58),GROUP,SERVER:)
}
}
if (%ls.sp == 1) && (%ls.cs == 1) && (%ls.nt == 0) {
if (. $+ %ls.c $+ . isin %ls.si.temp) && (. $+ %ls.s $+ . isin %ls.si.temp) {
var %ls.temp2 $mid(%ls.si.temp,$pos(%ls.si.temp,SERVER:,1),256)
did -a locserver 11 $remove($gettok(%ls.temp2,1-2,58),GROUP,SERVER:)
}
}
if (%ls.sp == 1) && (%ls.cs == 0) && (%ls.nt == 0) {
if (. $+ %ls.s $+ . isin %ls.si.temp) {
var %ls.temp2 $mid(%ls.si.temp,$pos(%ls.si.temp,SERVER:,1),256)
did -a locserver 11 $remove($gettok(%ls.temp2,1-2,58),GROUP,SERVER:)
}
}
if (%ls.sp == 0) && (%ls.cs == 0) && (%ls.nt == 0) {
if (* iswm %ls.si.temp) {
var %ls.temp2 $mid(%ls.si.temp,$pos(%ls.si.temp,SERVER:,1),256)
did -a locserver 11 $remove($gettok(%ls.temp2,1-2,58),GROUP,SERVER:)
}
}
if (%ls.sp == 0) && (%ls.cs == 1) && (%ls.nt == 0) {
if (. $+ %ls.c $+ . isin %ls.si.temp) {
var %ls.temp2 $mid(%ls.si.temp,$pos(%ls.si.temp,SERVER:,1),256)
did -a locserver 11 $remove($gettok(%ls.temp2,1-2,58),GROUP,SERVER:)
}
}
did -a locserver 19 Scanning servers.ini (server %ls.si.cl of %ls.si.lines $+ )
inc %ls.si.cl
if (%ls.si.cl >= %ls.si.lines) {
did -a locserver 19 Scanned %ls.si.lines lines and found $did(locserver,11).lines matches ( $+ $round($calc(($ticks - %ls.d) / 1000),2) $+ s, $round($calc(($did(locserver,11).lines / %ls.si.lines) * 100),1) $+ $chr(37) $+ )
unset %ls.si.cl
unset %ls.si.temp
}
}
}