From 2f6e27bd1e761a9ba8cd64a53e1af9767bbb5a95 Mon Sep 17 00:00:00 2001 From: Fen Dweller Date: Mon, 14 Jan 2019 16:13:33 -0500 Subject: [PATCH] Audio can be preloaded before the game begins --- audio.js | 2 +- satiate.js | 8 ++++++-- stories/demo.js | 3 +++ stories/fen-snack.js | 4 ++++ 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/audio.js b/audio.js index 1be3f49..5a109e3 100644 --- a/audio.js +++ b/audio.js @@ -226,7 +226,7 @@ function checkCache(type, name, hit, miss) { } } -function initAudio(story, state) { +function initAudio(story) { if (!audioContext) audioContext = new (window.AudioContext || window.webkitAudioContext)(); diff --git a/satiate.js b/satiate.js index bc1fddc..565543c 100644 --- a/satiate.js +++ b/satiate.js @@ -84,7 +84,6 @@ function init(story) { }; initWorld(story, state); - initAudio(story, state); initGame(story, state); story.intro.setup(state); @@ -122,7 +121,12 @@ function initStart() { holder.innerHTML = ""; - const tags = stories.filter(s => s.id == [event.target.value])[0].tags; + const story = stories.filter(s => s.id == [event.target.value])[0]; + const tags = story.tags; + + initAudio(story); + + story.preload.forEach(sound => loadAudio(sound)); tags.forEach(tag => { const div = document.createElement("div"); diff --git a/stories/demo.js b/stories/demo.js index 52badea..0648c9f 100644 --- a/stories/demo.js +++ b/stories/demo.js @@ -16,6 +16,9 @@ stories.push({ }, "sounds": [ "sfx/oof.ogg" + ], + "preload": [ + ], "world": { "Stairs": { diff --git a/stories/fen-snack.js b/stories/fen-snack.js index b170b28..1e0a60d 100644 --- a/stories/fen-snack.js +++ b/stories/fen-snack.js @@ -21,6 +21,10 @@ stories.push({ "loop/fen-intestines.ogg", "loop/fen-bowels.ogg" ], + preload: [ + "sfx/stomach-churn.ogg", + "loop/fen-stomach.ogg" + ], intro: { start: "stomach", setup: state => {