|
|
|
|
|
|
|
|
|
|
|
|
|
|
var currentSoundtrack = -1; |
|
|
var currentSoundtrack = -1; |
|
|
function playSoundtrack(tracks) { |
|
|
function playSoundtrack(tracks) { |
|
|
console.log("Playing track..."); |
|
|
|
|
|
var keys = Object.keys(tracks); |
|
|
var keys = Object.keys(tracks); |
|
|
if (currentSoundtrack === -1) |
|
|
if (currentSoundtrack === -1) |
|
|
currentSoundtrack = randInt(0, keys.length); |
|
|
currentSoundtrack = randInt(0, keys.length); |
|
|
|
|
|
|
|
|
var key = keys[currentSoundtrack]; |
|
|
var key = keys[currentSoundtrack]; |
|
|
var track = tracks[key]; |
|
|
var track = tracks[key]; |
|
|
console.log("Playing track", key); |
|
|
|
|
|
|
|
|
|
|
|
var trackId = currentSoundtrack; |
|
|
var trackId = currentSoundtrack; |
|
|
while (currentSoundtrack === trackId) |
|
|
while (currentSoundtrack === trackId) |
|
|
|
|
|
|
|
|
if (track.ready) { |
|
|
if (track.ready) { |
|
|
track.play(); |
|
|
track.play(); |
|
|
track.once("ended", function() { playSoundtrack(tracks) }); |
|
|
track.once("ended", function() { playSoundtrack(tracks) }); |
|
|
console.log("playing immediately, as it's loaded"); |
|
|
|
|
|
} else { |
|
|
} else { |
|
|
console.log("loading it..."); |
|
|
|
|
|
track.once("load", function() { |
|
|
track.once("load", function() { |
|
|
console.log("loaded."); |
|
|
|
|
|
track.play(); |
|
|
track.play(); |
|
|
track.once("ended", function() { playSoundtrack(tracks) }); |
|
|
track.once("ended", function() { playSoundtrack(tracks) }); |
|
|
}); |
|
|
}); |