From 1d184da1ca90b5c3d99aa99d7df7675315986205 Mon Sep 17 00:00:00 2001 From: stonedDiscord Date: Mon, 12 Mar 2018 21:02:43 +0100 Subject: working servers are now green --- master.js | 40 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) (limited to 'master.js') diff --git a/master.js b/master.js index abfdabd..fa10eaf 100644 --- a/master.js +++ b/master.js @@ -8,6 +8,7 @@ masterserver.onerror = function(evt) { onError(evt) }; var idnow; var descs = []; descs[99]="This is your computer on port 27016"; +var onlinec = []; var serverpics = []; function UrlExists(url) { @@ -20,7 +21,7 @@ function UrlExists(url) function setServ(ID) { console.log(descs[ID]); if (descs[ID] != undefined) { - document.getElementById("serverdescC").innerHTML = descs[ID]; + document.getElementById("serverdescC").innerHTML = "Online: "+onlinec[ID]+"
" +descs[ID]; } else { document.getElementById("serverdescC").innerHTML = ""; @@ -40,7 +41,39 @@ function onOpen(e) { masterserver.send("askforservers#%") masterserver.send("VC#%") }; - + +function checkOnline(serverID,coIP) { + function onCOOpen(e) { + console.log("Open"); + console.log("YES") + oserv.send("HI#" + navigator.userAgent + "#%"); + oserv.send("ID#webAO#2.4.5#%"); + }; + function onCOMessage(e) { + comsg = e.data; + console.log(comsg) + console.log("YES") + coheader = comsg.split('#', 2)[0]; + coarguments = comsg.split('#').slice(1) + if (coheader == 'PN') { + onlinec[serverID]=coarguments[0]+"/"+coarguments[1]; + document.getElementById('server'+serverID).className = "available"; + oserv.close(); + } + }; + + var oserv = new WebSocket("ws://" + coIP); + + oserv.onopen = function(evt) { + onCOOpen(evt) + }; + + oserv.onmessage = function(evt) { + onCOMessage(evt) + }; + +} + function onMessage(e) { msg = e.data; console.log(msg) @@ -56,9 +89,10 @@ function onMessage(e) { }else{ unavv = ''; } - document.getElementById('masterlist').innerHTML += '
  • ' + arguments[4] + '

    WatchJoin

  • ' + document.getElementById('masterlist').innerHTML += '
  • ' + arguments[4] + '

    WatchJoin

  • ' serverpics[arguments[0]] = arguments[2]; descs[arguments[0]] = arguments[5]; + setTimeout(checkOnline(arguments[0],arguments[1] + ':' + arguments[3]), 3); } else if (header == 'servercheok') { -- cgit