aboutsummaryrefslogtreecommitdiff
path: root/webAO/client.js
diff options
context:
space:
mode:
authorsD <stoned@derpymail.org>2020-03-27 16:26:22 +0100
committersD <stoned@derpymail.org>2020-03-27 16:26:22 +0100
commit615e4bf8751f940005c5e5d501b6689a19eb6e49 (patch)
treec2928aa10fa26cab8143b160ed61f7d4130a3e86 /webAO/client.js
parent98bf6212032c722134b0b00a7e9501213bb85b2f (diff)
remember the modcall sfx and actually use it
Diffstat (limited to 'webAO/client.js')
-rw-r--r--webAO/client.js22
1 files changed, 21 insertions, 1 deletions
diff --git a/webAO/client.js b/webAO/client.js
index 27be410..2d21e4c 100644
--- a/webAO/client.js
+++ b/webAO/client.js
@@ -12,6 +12,7 @@ import { unescapeChat, escapeChat, encodeChat, decodeChat, safe_tags } from './e
import character_arr from "./characters.js";
import background_arr from "./backgrounds.js";
import evidence_arr from "./evidence.js";
+import sfx_arr from "./sounds.js";
import { EventEmitter } from "events";
@@ -382,6 +383,13 @@ class Client extends EventEmitter {
evidence_select.add(new Option(evidence));
});
+ // Load sfx for modcalls
+ const modcall_select = document.getElementById("client_modcall");
+ sfx_arr.forEach(evidence => {
+ modcall_select.add(new Option(evidence));
+ });
+ document.getElementById("client_modcall").value = getCookie("modcall_sfx") || "sfx-gallery.wav";
+
// Read cookies and set the UI to its values
document.getElementById("OOC_name").value = getCookie("OOC_name") || "web"+parseInt(Math.random()*100+10);
@@ -975,9 +983,13 @@ class Client extends EventEmitter {
if (oocLog.scrollTop > oocLog.scrollHeight - 60) {
oocLog.scrollTop = oocLog.scrollHeight;
}
+ const sfxname = document.getElementById("client_modcall").value;
viewport.sfxaudio.pause();
- viewport.sfxaudio.src = AO_HOST + "sounds/general/sfx-gallery.wav";
+ const oldvolume = viewport.sfxaudio.volume;
+ viewport.sfxaudio.volume = 1;
+ viewport.sfxaudio.src = AO_HOST + "sounds/general/" + sfxname + ".wav";
viewport.sfxaudio.play();
+ viewport.sfxaudio.volume = oldvolume;
}
/**
@@ -2049,6 +2061,14 @@ export function reloadTheme() {
window.reloadTheme = reloadTheme;
/**
+ * Triggered by the modcall sfx dropdown
+ */
+export function changeModcall() {
+ setCookie("modcall_sfx", document.getElementById("client_modcall").value);
+}
+window.changeModcall = changeModcall;
+
+/**
* Triggered by the ini button.
*/
export async function iniedit() {