23 lines
526 B
JavaScript
Executable File
23 lines
526 B
JavaScript
Executable File
const sounds = {};
|
|
sounds['victory'] = new Audio('/sounds/victory.ogg');
|
|
sounds['defeat'] = new Audio('/sounds/defeat.ogg');
|
|
sounds['draw'] = new Audio('/sounds/draw.ogg');
|
|
sounds['move'] = new Audio('/sounds/move.ogg');
|
|
|
|
Object.values(sounds).forEach((sound) => {
|
|
sound.volume = 0.12;
|
|
});
|
|
|
|
document.addEventListener('htmx:wsAfterMessage', function (e) {
|
|
let msg;
|
|
try {
|
|
msg = JSON.parse(e.detail.message);
|
|
} catch (_) {
|
|
return;
|
|
}
|
|
if (msg.type !== 'sound') {
|
|
return;
|
|
}
|
|
sounds[msg.sound].play();
|
|
});
|