diff options
Diffstat (limited to 'webAO/client.js')
| -rw-r--r-- | webAO/client.js | 50 |
1 files changed, 15 insertions, 35 deletions
diff --git a/webAO/client.js b/webAO/client.js index d1b8cb9..b82b2fa 100644 --- a/webAO/client.js +++ b/webAO/client.js @@ -312,25 +312,6 @@ class Client extends EventEmitter { background_arr.forEach(background => { background_select.add(new Option(background)); }); - - this.resources.map(async (resource) => { - // Check if image exists and replace `src` with an absolute URL - const spriteSrc = `${AO_HOST}themes/default/${resource.src}.gif`; - if (await fileExists(spriteSrc)) { - Object.assign(resource, { - src: spriteSrc, - duration: await viewport.getAnimLength(spriteSrc) - }); - } - - // Check if sfx exists and replace `sfx` with an absolute URL - if (resource.sfx) { - const sfxSrc = AO_HOST + resource.sfx.toLowerCase(); - if (await fileExists(sfxSrc)) { - resource.sfx = sfxSrc; - } - } - }); } /** @@ -392,13 +373,9 @@ class Client extends EventEmitter { * Triggered when a connection is established to the server. */ onOpen(_e) { - // XXX: Why does watching mean just SITTING there and doing nothing? - if (mode === "watch") { - document.getElementById("client_loading").style.display = "none"; - document.getElementById("client_charselect").style.display = "none"; - } else { - client.joinServer(); - } + client.initialObservBBCode(); + client.loadResources(); + client.joinServer(); } /** @@ -769,7 +746,11 @@ class Client extends EventEmitter { */ handleDONE(_args) { document.getElementById("client_loading").style.display = "none"; - document.getElementById("client_charselect").style.display = "block"; + if (mode === "watch") { // Spectators don't need to pick a character + document.getElementById("client_charselect").style.display = "none"; + } else { + document.getElementById("client_charselect").style.display = "block"; + } } /** @@ -932,6 +913,7 @@ class Client extends EventEmitter { document.getElementById("client_inputbox").style.display = ""; const me = this.character; + this.selectedEmote = -1; const emotes = this.emotes; const emotesList = document.getElementById("client_emo"); emotesList.innerHTML = ""; // Clear emote box @@ -1782,8 +1764,12 @@ window.pickChar = pickChar; * @param {string} emo the new emotion to be selected */ export function pickEmotion(emo) { - if (client.selectedEmote !== -1) { - document.getElementById("emo_" + client.selectedEmote).src = client.emote.button_off; + try { + if (client.selectedEmote !== -1) { + document.getElementById("emo_" + client.selectedEmote).src = client.emote.button_off; + } + } catch (err) { + // do nothing } client.selectedEmote = emo; document.getElementById("emo_" + emo).src = client.emote.button_on; @@ -2251,12 +2237,6 @@ function decodeBBCode(estring) { let client = new Client(serverIP); let viewport = new Viewport(); -export function onLoad(){ - client.initialObservBBCode(); - client.loadResources(); -} -window.onLoad = onLoad; - // Create dialog and link to button $(function () { $("#callmod_dialog").dialog({ |
