aboutsummaryrefslogtreecommitdiff
path: root/webAO/packets/handlers/handlePR.ts
diff options
context:
space:
mode:
authorstonedDiscord <Tukz@gmx.de>2026-02-11 12:28:49 +0100
committerGitHub <noreply@github.com>2026-02-11 12:28:49 +0100
commit8e7af5b93009c987a4c0c3fef014cf7b64463e03 (patch)
tree04b0c383ca35962dc3054ec7ace34bb64f019622 /webAO/packets/handlers/handlePR.ts
parent726d89ce8605d27be1c14bba59f81cfd6254ccb3 (diff)
parent5bb35a981e2f35df7fbf126faa8655ee3b3ca142 (diff)
Merge pull request #293 from OmniTroid/better-charloading
Better charloading
Diffstat (limited to 'webAO/packets/handlers/handlePR.ts')
-rw-r--r--webAO/packets/handlers/handlePR.ts56
1 files changed, 7 insertions, 49 deletions
diff --git a/webAO/packets/handlers/handlePR.ts b/webAO/packets/handlers/handlePR.ts
index aeb3969..f81d8dc 100644
--- a/webAO/packets/handlers/handlePR.ts
+++ b/webAO/packets/handlers/handlePR.ts
@@ -1,51 +1,5 @@
import { client } from "../../client";
-import { kickPlayer, banPlayer } from "../../dom/banPlayer";
-
-function addPlayer(playerID: number) {
- const list = <HTMLTableElement>document.getElementById("client_playerlist");
- const playerRow = list.insertRow();
- playerRow.id = `client_playerlist_entry${playerID}`;
- playerRow.className = `area0`;
-
- const imgCell = playerRow.insertCell(0);
- imgCell.style.width = "64px";
- const img = document.createElement("img");
- imgCell.appendChild(img);
-
- const name = document.createTextNode("No Data");
-
- const charNameCell = playerRow.insertCell(1);
- charNameCell.appendChild(name);
- const showNameCell = playerRow.insertCell(2);
- showNameCell.appendChild(name);
- const oocNameCell = playerRow.insertCell(3);
- oocNameCell.appendChild(name);
-
- const kickCell = playerRow.insertCell(4);
- kickCell.style.width = "64px";
- const kick = <HTMLButtonElement>document.createElement("button");
- kick.innerText = "Kick";
- kick.onclick = () => {
- window.kickPlayer(playerID);
- };
- kickCell.appendChild(kick);
-
- const banCell = playerRow.insertCell(5);
- banCell.style.width = "64px";
- const ban = <HTMLButtonElement>document.createElement("button");
- ban.innerText = "Ban";
- ban.onclick = () => {
- window.banPlayer(playerID);
- };
- banCell.appendChild(ban);
-}
-
-function removePlayer(playerID: number) {
- const playerRow = <HTMLTableElement>(
- document.getElementById(`client_playerlist_entry${playerID}`)
- );
- playerRow.remove();
-}
+import { renderPlayerList } from "../../dom/renderPlayerList";
/**
* Handles a player joining or leaving
@@ -53,6 +7,10 @@ function removePlayer(playerID: number) {
*/
export const handlePR = (args: string[]) => {
const playerID = Number(args[1]);
- if (Number(args[2]) === 0) addPlayer(playerID);
- else if (Number(args[2]) === 1) removePlayer(playerID);
+ if (Number(args[2]) === 0) {
+ client.playerlist.set(playerID, { charId: -1, charName: "", showName: "", name: "", area: 0 });
+ } else if (Number(args[2]) === 1) {
+ client.playerlist.delete(playerID);
+ }
+ renderPlayerList();
};