diff options
| author | David Skoland <davidskoland@gmail.com> | 2023-11-19 23:19:25 +0100 |
|---|---|---|
| committer | David Skoland <davidskoland@gmail.com> | 2023-11-20 21:10:04 +0100 |
| commit | df67ca5b2cded28a933aa43de2b1366c98562d55 (patch) | |
| tree | 80ef1255cdb3d7625372ab2e3e0776360bfd92a5 /webAO/master.ts | |
| parent | f837eb7df37f5770e3f481782105911b02b32e27 (diff) | |
Add setServ back
also known as "whoops, we actually needed that code"
This changes "Online" to "Players", and will only show
the playercount reported by masterserver. It's a bit
disingenuous to show "Online" if we can't confirm that
we can actually connect to it.
Diffstat (limited to 'webAO/master.ts')
| -rw-r--r-- | webAO/master.ts | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/webAO/master.ts b/webAO/master.ts index c5f57c0..c3893c0 100644 --- a/webAO/master.ts +++ b/webAO/master.ts @@ -1,5 +1,11 @@ import { safeTags } from './encoding'; +declare global { + interface Window { + setServ: (ID: number) => void; + } +} + interface AOServer { name: string, description: string, @@ -56,6 +62,15 @@ function main() { main(); +export function setServ(ID: number) { + console.log(`Setting server to ${ID}`); + const server = servers[ID]; + const onlineStr = server.online; + const serverDesc = safeTags(server.description); + document.getElementById('serverdescription_content').innerHTML = `<b>${onlineStr}</b><br>${serverDesc})`; +} +window.setServ = setServ; + // Fetches the serverlist from the masterserver // Returns a properly typed list of servers @@ -144,11 +159,11 @@ function processServerlist(serverlist: AOServer[]) { const connect = `${protocol}://${server.ip}:${port}`; const serverName = server.name; - server.online = 'Offline'; + server.online = `Players: ${server.players}`; servers.push(server); document.getElementById('masterlist').innerHTML - += `<li id="server${i}"><p>${safeTags(server.name)} (${server.players})</p>` + += `<li id="server${i}" onmouseover="setServ(${i})"><p>${safeTags(server.name)} (${server.players})</p>` + `<a class="button" href="${clientURL}?mode=watch&connect=${connect}&serverName=${serverName}">Watch</a>` + `<a class="button" href="${clientURL}?mode=join&connect=${connect}&serverName=${serverName}">Join</a></li>`; } |
