From b7ddd8990bdd8561e25a9114c389530c4f18b877 Mon Sep 17 00:00:00 2001 From: stonedDiscord Date: Sat, 16 Jul 2022 13:34:41 +0200 Subject: handle deskmod --- webAO/client.ts | 70 ++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 54 insertions(+), 16 deletions(-) (limited to 'webAO') diff --git a/webAO/client.ts b/webAO/client.ts index 2af1ab9..407d09d 100644 --- a/webAO/client.ts +++ b/webAO/client.ts @@ -1412,9 +1412,9 @@ class Client extends EventEmitter { tryUrls(`${bgfolder}prosecutorempty`).then(resp => {(document.getElementById('client_court_pro')).src = resp}); if (this.charID === -1) { - viewport.set_side('jud'); + viewport.set_side('jud',false,true); } else { - viewport.set_side(this.chars[this.charID].side); + viewport.set_side(this.chars[this.charID].side,false,true); } } @@ -1936,7 +1936,7 @@ class Viewport { * Valid positions: `def, pro, hld, hlp, wit, jud, jur, sea` * @param {string} position the position to change into */ - async set_side(position: string) { + async set_side(position: string, showspeedlines: boolean, showdesk: boolean) { const bgfolder = viewport.bgFolder; const view = document.getElementById('client_fullview'); @@ -2026,21 +2026,18 @@ class Viewport { speedLines = 'defense_speedlines.gif'; } - if (viewport.chatmsg.type === 5) { - console.warn('this is a zoom'); + if (showspeedlines) { court.src = `${AO_HOST}themes/default/${encodeURI(speedLines)}`; - bench.style.opacity = '0'; } else { - // Set src here - court.src = await tryUrls(bgfolder + bg) - if (desk) { - const deskFilename = await fileExists(bgfolder + desk.ao2) ? desk.ao2 : desk.ao1; - bench.src = bgfolder + deskFilename; - bench.style.opacity = '1'; - } else { - bench.style.opacity = '0'; - } + } + + if (showdesk && desk) { + const deskFilename = await fileExists(bgfolder + desk.ao2) ? desk.ao2 : desk.ao1; + bench.src = bgfolder + deskFilename; + bench.style.opacity = '1'; + } else { + bench.style.opacity = '0'; } if ('def,pro,wit'.includes(position)) { @@ -2240,7 +2237,33 @@ class Viewport { } this.chatmsg.preanimdelay = gifLength; - this.set_side(chatmsg.side); + if (chatmsg.type === 5) { + this.set_side(chatmsg.side,true,false); + } else { + switch(chatmsg.deskmod) { + case 0: + this.set_side(chatmsg.side,false,false); + break; + case 1: + this.set_side(chatmsg.side,false,true); + break; + case 2: + this.set_side(chatmsg.side,false,false); + break; + case 3: + this.set_side(chatmsg.side,false,false); + break; + case 4: + this.set_side(chatmsg.side,false,false); + break; + case 5: + this.set_side(chatmsg.side,false,true); + break; + default: + this.set_side(chatmsg.side,false,true); + break; + } + } setChatbox(chatmsg.chatbox); resizeChatbox(); @@ -2520,6 +2543,21 @@ class Viewport { shoutSprite.style.animation = ''; } + switch(this.chatmsg.deskmod) { + case 2: + this.set_side(this.chatmsg.side,false,true); + break; + case 3: + this.set_side(this.chatmsg.side,false,false); + break; + case 4: + this.set_side(this.chatmsg.side,false,true); + break; + case 5: + this.set_side(this.chatmsg.side,false,false); + break; + } + if (this.chatmsg.other_name) { setEmote(AO_HOST, this, pairName, pairEmote, '(a)', true, this.chatmsg.side); pairLayers.style.opacity = '1'; -- cgit From b4d6d002509d928bcb1c57aa908059e0d946f18c Mon Sep 17 00:00:00 2001 From: stonedDiscord Date: Sat, 16 Jul 2022 13:53:35 +0200 Subject: fix switch case --- webAO/client.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'webAO') diff --git a/webAO/client.ts b/webAO/client.ts index 407d09d..3da1dc8 100644 --- a/webAO/client.ts +++ b/webAO/client.ts @@ -2026,13 +2026,13 @@ class Viewport { speedLines = 'defense_speedlines.gif'; } - if (showspeedlines) { + if (showspeedlines === true) { court.src = `${AO_HOST}themes/default/${encodeURI(speedLines)}`; } else { court.src = await tryUrls(bgfolder + bg) } - if (showdesk && desk) { + if (showdesk === true && desk) { const deskFilename = await fileExists(bgfolder + desk.ao2) ? desk.ao2 : desk.ao1; bench.src = bgfolder + deskFilename; bench.style.opacity = '1'; @@ -2240,7 +2240,7 @@ class Viewport { if (chatmsg.type === 5) { this.set_side(chatmsg.side,true,false); } else { - switch(chatmsg.deskmod) { + switch(Number(chatmsg.deskmod)) { case 0: this.set_side(chatmsg.side,false,false); break; @@ -2543,7 +2543,7 @@ class Viewport { shoutSprite.style.animation = ''; } - switch(this.chatmsg.deskmod) { + switch(Number(this.chatmsg.deskmod)) { case 2: this.set_side(this.chatmsg.side,false,true); break; -- cgit