backgound music
This commit is contained in:
@@ -5,6 +5,7 @@ import gameData from '../app/gameData.json'; // game data
|
||||
|
||||
import { getMousePos, isInside } from './buttons.js';
|
||||
import { clearContext, placeImage, getCenterH, getCenterV } from './draw.js';
|
||||
import { playMusic } from './music.js';
|
||||
import { imagePreloader, checkAnswer, shuffle, restartGame } from './game.js';
|
||||
|
||||
// Engine variables -------------------------------------
|
||||
@@ -18,6 +19,7 @@ let game = {}; // main game variable
|
||||
let areas = { game: {}, finish: {} };
|
||||
let images = {};
|
||||
let buttons = {};
|
||||
let music = {};
|
||||
|
||||
// Init -------------------------------------------------
|
||||
window.onload = function() {
|
||||
@@ -47,6 +49,9 @@ window.onload = function() {
|
||||
|
||||
imagePreloader(questImages, function() { game.loadedState = true; });
|
||||
|
||||
music.music = new AudioContext() || new webkitAudioContext();
|
||||
playMusic(config, music.music);
|
||||
|
||||
game.loadedState = false;
|
||||
game.finish = false;
|
||||
game.currentQuest = 0;
|
||||
|
||||
19
js/music.js
Normal file
19
js/music.js
Normal file
@@ -0,0 +1,19 @@
|
||||
export function playMusic(config, music) {
|
||||
let request = new XMLHttpRequest();
|
||||
|
||||
request.open("GET", `assets/sfx/${config.music}`, true);
|
||||
request.responseType = "arraybuffer";
|
||||
request.onload = function(){
|
||||
music.decodeAudioData(request.response, onDecoded);
|
||||
}
|
||||
|
||||
function onDecoded(buffer) {
|
||||
var bufferSource = music.createBufferSource();
|
||||
bufferSource.buffer = buffer;
|
||||
bufferSource.connect(music.destination);
|
||||
bufferSource.loop = true;
|
||||
bufferSource.start();
|
||||
}
|
||||
|
||||
request.send();
|
||||
}
|
||||
Reference in New Issue
Block a user