From 3e93acbc7b6f08fc35ebfbeb3b75f3a71370ed3b Mon Sep 17 00:00:00 2001 From: sD Date: Sun, 8 Mar 2020 17:51:53 +0100 Subject: move changebackground into viewport --- webAO/client.js | 146 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 73 insertions(+), 73 deletions(-) (limited to 'webAO') diff --git a/webAO/client.js b/webAO/client.js index b308c04..95b3a5f 100644 --- a/webAO/client.js +++ b/webAO/client.js @@ -903,9 +903,9 @@ class Client extends EventEmitter { } document.getElementById("bg_preview").src = AO_HOST + "background/" + encodeURI(args[1].toLowerCase()) + "/defenseempty.png"; if (this.charID === -1) { - changeBackground("jud"); + viewport.changeBackground("jud"); } else { - changeBackground(this.chars[this.charID].side); + viewport.changeBackground(this.chars[this.charID].side); } } @@ -1251,6 +1251,75 @@ class Viewport { return `${AO_HOST}background/${encodeURI(this.bgname.toLowerCase())}/`; } + /** + * Changes the viewport background based on a given position. + * + * Valid positions: `def, pro, hld, hlp, wit, jud, jur, sea` + * @param {string} position the position to change into + */ +async changeBackground(position) { + const bgfolder = viewport.bgFolder; + + const positions = { + def: { + bg: "defenseempty.png", + desk: { ao2: "defensedesk.png", ao1: "bancodefensa.png" }, + speedLines: "defense_speedlines.gif" + }, + pro: { + bg: "prosecutorempty.png", + desk: { ao2: "prosecutiondesk.png", ao1: "bancoacusacion.png" }, + speedLines: "prosecution_speedlines.gif" + }, + hld: { + bg: "helperstand.png", + desk: null, + speedLines: "defense_speedlines.gif" + }, + hlp: { + bg: "prohelperstand.png", + desk: null, + speedLines: "prosecution_speedlines.gif" + }, + wit: { + bg: "witnessempty.png", + desk: { ao2: "stand.png", ao1: "estrado.png" }, + speedLines: "prosecution_speedlines.gif" + }, + jud: { + bg: "judgestand.png", + desk: null, + speedLines: "prosecution_speedlines.gif" + }, + jur: { + bg: "jurystand.png", + desk: { ao2: "jurydesk.png", ao1: "estrado.png" }, + speedLines: "defense_speedlines.gif" + }, + sea: { + bg: "seancestand.png", + desk: { ao2: "seancedesk.png", ao1: "estrado.png" }, + speedLines: "prosecution_speedlines.gif" + } + }; + + const { bg, desk, speedLines } = positions[position]; + + if (viewport.chatmsg.type === 5) { + document.getElementById("client_court").src = `${AO_HOST}themes/default/${encodeURI(speedLines)}`; + document.getElementById("client_bench").style.display = "none"; + } else { + document.getElementById("client_court").src = bgfolder + bg; + if (desk) { + const deskFilename = await fileExists(bgfolder + desk.ao2) ? desk.ao2 : desk.ao1; + document.getElementById("client_bench").src = bgfolder + deskFilename; + document.getElementById("client_bench").style.display = "block"; + } else { + document.getElementById("client_bench").style.display = "none"; + } + } + } + /** * Sets a new emote. * TODO: merge this and initUpdater @@ -1292,7 +1361,7 @@ class Viewport { waitingBox.innerText = ""; chatBoxInner.innerText = this.textnow; - changeBackground(chatmsg.side); + this.changeBackground(chatmsg.side); const { url: speakUrl } = await this.oneSuccess([ this.rejectOnError(fetch(AO_HOST + "characters/" + encodeURI(this.chatmsg.name.toLowerCase()) + "/" + this.chatmsg.sprite + ".png")), @@ -1644,7 +1713,7 @@ class Viewport { if (this.chatmsg.preanimdelay === 0) { shoutSprite.style.display = "none"; - changeBackground(this.chatmsg.side); + this.changeBackground(this.chatmsg.side); } if (extrafeatures.includes("cccc_ic_support")) { @@ -2062,75 +2131,6 @@ async function fileExists(url) { } } -/** - * Changes the viewport background based on a given position. - * - * Valid positions: `def, pro, hld, hlp, wit, jud, jur, sea` - * @param {string} position the position to change into - */ -async function changeBackground(position) { - const bgfolder = viewport.bgFolder; - - const positions = { - def: { - bg: "defenseempty.png", - desk: { ao2: "defensedesk.png", ao1: "bancodefensa.png" }, - speedLines: "defense_speedlines.gif" - }, - pro: { - bg: "prosecutorempty.png", - desk: { ao2: "prosecutiondesk.png", ao1: "bancoacusacion.png" }, - speedLines: "prosecution_speedlines.gif" - }, - hld: { - bg: "helperstand.png", - desk: null, - speedLines: "defense_speedlines.gif" - }, - hlp: { - bg: "prohelperstand.png", - desk: null, - speedLines: "prosecution_speedlines.gif" - }, - wit: { - bg: "witnessempty.png", - desk: { ao2: "stand.png", ao1: "estrado.png" }, - speedLines: "prosecution_speedlines.gif" - }, - jud: { - bg: "judgestand.png", - desk: null, - speedLines: "prosecution_speedlines.gif" - }, - jur: { - bg: "jurystand.png", - desk: { ao2: "jurydesk.png", ao1: "estrado.png" }, - speedLines: "defense_speedlines.gif" - }, - sea: { - bg: "seancestand.png", - desk: { ao2: "seancedesk.png", ao1: "estrado.png" }, - speedLines: "prosecution_speedlines.gif" - } - }; - - const { bg, desk, speedLines } = positions[position]; - - if (viewport.chatmsg.type === 5) { - document.getElementById("client_court").src = `${AO_HOST}themes/default/${encodeURI(speedLines)}`; - document.getElementById("client_bench").style.display = "none"; - } else { - document.getElementById("client_court").src = bgfolder + bg; - if (desk) { - const deskFilename = await fileExists(bgfolder + desk.ao2) ? desk.ao2 : desk.ao1; - document.getElementById("client_bench").src = bgfolder + deskFilename; - document.getElementById("client_bench").style.display = "block"; - } else { - document.getElementById("client_bench").style.display = "none"; - } - } -} - /** * Triggered when the reconnect button is pushed. */ -- cgit