From 5959c444651908e771cafda9cd6587d1a56e2ada Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Sun, 3 May 2020 17:42:10 -0700 Subject: [PATCH] Track removal of players (by either deregister or by capture) MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Currently the capture UI is rather spartan, (the captured name just disappears—it doesn't appear as a capture next to the capturing player). --- empires/empires-client.js | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/empires/empires-client.js b/empires/empires-client.js index 9ac3308..5f489f8 100644 --- a/empires/empires-client.js +++ b/empires/empires-client.js @@ -40,7 +40,8 @@ events.addEventListener("players", function(event) { players_element.innerHTML = ''; for (const player of players) { - var li =document.createElement('li'); + var li = document.createElement('li'); + li.id = "player-" + player.id; li.innerText = player.name; players_element.appendChild(li); } @@ -51,6 +52,23 @@ events.addEventListener("player-register", function(event) { const player = JSON.parse(event.data); const li = document.createElement('li'); + li.id = "player-" + player.id; li.innerText = player.name; players.appendChild(li); }); + +events.addEventListener("player-deregister", function(event) { + const players = document.getElementById("players"); + const id = JSON.parse(event.data); + const player = document.getElementById("player-" + id.id); + + players.removeChild(player); +}); + +events.addEventListener("capture", function(event_string) { + const players = document.getElementById("players"); + const event = JSON.parse(event_string.data); + const player = document.getElementById("player-" + event.captee); + + players.removeChild(player); +}); -- 2.43.0