From b1865d99e347f8b3e870cd9bfd9225436e9e6339 Mon Sep 17 00:00:00 2001
From: stonedDiscord <10584181+stonedDiscord@users.noreply.github.com>
Date: Tue, 13 Oct 2020 21:38:40 +0200
Subject: only check playercount on mouseover
---
webAO/master.js | 38 ++++++++++++++++++++------------------
1 file changed, 20 insertions(+), 18 deletions(-)
(limited to 'webAO')
diff --git a/webAO/master.js b/webAO/master.js
index be3478e..4a3321f 100644
--- a/webAO/master.js
+++ b/webAO/master.js
@@ -11,9 +11,9 @@ const options = { fonts: { extendedJsFonts: true, userDefinedFonts: ["Ace Attorn
let lowMemory = false;
-const server_description = [];
-server_description[-1] = "This is your computer on port 50001";
-const online_counter = [];
+let servers = [];
+servers[-2] = { name: "Singleplayer", description: "Build cases, try out new things", ip: "127.0.0.1", port: 50001, assets: "", online: "" };
+servers[-1] = { name: "Localhost", description: "This is your computer on port 50001", ip: "127.0.0.1", port: 50001, assets: "", online: "Online: ?/?" };
if (window.requestIdleCallback) {
requestIdleCallback(function () {
@@ -64,9 +64,11 @@ export function check_https() {
}
export function setServ(ID) {
- console.log(server_description[ID]);
- if (server_description[ID] !== undefined) {
- document.getElementById("serverdescription_content").innerHTML = "" + online_counter[ID] + "
" + server_description[ID];
+ if (!lowMemory)
+ checkOnline(ID, servers[ID].ip + ":" + servers[ID].port);
+
+ if (servers[ID].description !== undefined) {
+ document.getElementById("serverdescription_content").innerHTML = "" + servers[ID].online + "
" + servers[ID].description;
}
else {
document.getElementById("serverdescription_content").innerHTML = "";
@@ -106,12 +108,12 @@ function checkOnline(serverID, coIP) {
const coheader = comsg.split("#", 2)[0];
const coarguments = comsg.split("#").slice(1);
if (coheader === "PN") {
- online_counter[serverID] = `Online: ${coarguments[0]}/${coarguments[1]}`;
+ servers[serverID].online = `Online: ${coarguments[0]}/${coarguments[1]}`;
oserv.close();
}
else if (coheader === "BD") {
- online_counter[serverID] = "Banned";
- server_description[serverID] = coarguments[0];
+ servers[serverID].online = "Banned";
+ servers[serverID].description = coarguments[0];
oserv.close();
}
}
@@ -137,21 +139,21 @@ function onMessage(e) {
console.debug(msg);
if (header === "ALL") {
- const servers = msg.split("#").slice(1);
- for (let i = 0; i < servers.length - 1; i++) {
- const serverEntry = servers[i];
+ const allservers = msg.split("#").slice(1);
+ for (let i = 0; i < allservers.length - 1; i++) {
+ const serverEntry = allservers[i];
const args = serverEntry.split("&");
+
+ let thisserver = { name: args[0], description: args[1], ip: args[2], port: args[3], assets: args[4], online: "Online: ?/?" };
+ servers[i] = thisserver;
+
const ipport = args[2] + ":" + args[3];
const asset = args[4] ? `&asset=${args[4]}` : "";
- const liclass = lowMemory ? "" : "unavailable"; // don't hide the entries if we're not checking them
document.getElementById("masterlist").innerHTML +=
- `
${args[0]}
` + `${servers[i].name}
` + `Watch` - + `Join