From 2a2dadfb9739874044bdcc20cf6152115a04bc07 Mon Sep 17 00:00:00 2001 From: sanine Date: Sat, 6 Jul 2024 12:09:59 -0500 Subject: add button sfx --- level.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'level.js') diff --git a/level.js b/level.js index 27b7078..5671c4c 100644 --- a/level.js +++ b/level.js @@ -32,6 +32,11 @@ export function setupLevel(resources, home) { export function setupLevelUi(level, root, audio) { const ui = { audio }; + const buttonEnterAudio = document.getElementById('sfx-buttonenter'); + const buttonClickAudio = document.getElementById('sfx-buttonclick'); + audio.createMediaElementSource(buttonEnterAudio).connect(audio.destination); + audio.createMediaElementSource(buttonClickAudio).connect(audio.destination); + ui.resourceAudio = document.getElementById('sfx-resource'); ui.resourceSource = audio.createMediaElementSource(ui.resourceAudio); ui.resourceSource.connect(audio.destination); @@ -47,7 +52,13 @@ export function setupLevelUi(level, root, audio) { ui.launchButton = document.createElement('input'); ui.launchButton.type = 'button'; ui.launchButton.value = 'Launch'; + ui.launchButton.onmouseenter = () => { + buttonEnterAudio.load(); + buttonEnterAudio.play(); + } ui.launchButton.onclick = () => { + buttonClickAudio.load(); + buttonClickAudio.play(); ui.message.innerText = ''; level.running = false; setTimeout(() => { level.running=true; stepLevel(ui, level, 0); }, 20); @@ -95,7 +106,13 @@ export function setupLevelUi(level, root, audio) { ui.returnBtn = document.createElement('input'); ui.returnBtn.type = 'button'; ui.returnBtn.value = 'Return'; + ui.returnBtn.onmouseenter = () => { + buttonEnterAudio.load(); + buttonEnterAudio.play(); + } ui.returnBtn.onclick = () => { + buttonClickAudio.load(); + buttonClickAudio.play(); root.innerText = ''; setupLevelSelectUi(root, audio); } -- cgit v1.2.1