import { client } from "../../client"; import { updatePlayerAreas } from "../../dom/updatePlayerAreas"; import { AO_HOST } from "../../client/aoHost"; /** * Handles a playerlist update * @param {Array} args packet arguments */ export const handlePU = (args: string[]) => { const playerRow = ( document.getElementById(`client_playerlist_entry${Number(args[1])}`) ); const type = Number(args[2]); const data = args[3]; switch (type) { case 0: const oocName = playerRow.childNodes[3]; oocName.innerText = data; break; case 1: const playerImg = playerRow.childNodes[0].firstChild; playerImg.alt = data; playerImg.title = data; const iconExt = client.charicon_extensions[0] || ".png"; playerImg.src = `${AO_HOST}characters/${encodeURI(data.toLowerCase())}/char_icon${iconExt}`; const charName = playerRow.childNodes[1]; charName.innerText = `[${args[1]}] ${data}`; break; case 2: const showName = playerRow.childNodes[2]; showName.innerText = data; break; case 3: playerRow.className = `area${data}`; updatePlayerAreas(client.area); default: break; } };