diff --git a/src/extensions/scratch3_music/index.js b/src/extensions/scratch3_music/index.js index 48482005..8e80dcaa 100644 --- a/src/extensions/scratch3_music/index.js +++ b/src/extensions/scratch3_music/index.js @@ -68,6 +68,8 @@ class Scratch3MusicBlocks { * @return {Promise} - a promise which will resolve once the sound has loaded. */ _loadSound (fileName, index, bufferArray) { + if (!this.runtime.storage) return; + if (!this.runtime.audioEngine) return; return this.runtime.storage.load(this.runtime.storage.AssetType.Sound, fileName, 'mp3') .then(soundAsset => this.runtime.audioEngine.audioContext.decodeAudioData(soundAsset.data.buffer) diff --git a/test/unit/blocks_music.js b/test/unit/blocks_music.js index ae097beb..66c95083 100644 --- a/test/unit/blocks_music.js +++ b/test/unit/blocks_music.js @@ -1,5 +1,5 @@ const test = require('tap').test; -const Music = require('../../src/blocks/scratch3_music'); +const Music = require('../../src/extensions/scratch3_music/index.js'); let playedDrum; let playedInstrument; const runtime = {