diff options
author | Michael J. Bishop <mbtyke@gmail.com> | 2013-02-21 23:46:44 -0500 |
---|---|---|
committer | Michael J. Bishop <mbtyke@gmail.com> | 2013-02-22 10:47:23 -0500 |
commit | a7d7dad8baefd2fae9f56ab46afe7af7fef215cd (patch) | |
tree | 4ddfeadc8de0da003b9dbc5c8fae63465c9b4af0 /src/library_sdl.js | |
parent | 122a07dd4f399b8985fafedf4e515b8484b17c3c (diff) |
Added some SDL_Mixer calls:
- `Mix_Playing`
- `Mix_Pause`
- `Mix_Pause`
- `Mix_Resume`
Diffstat (limited to 'src/library_sdl.js')
-rw-r--r-- | src/library_sdl.js | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js index e02e1e62..1cb41071 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -1434,10 +1434,72 @@ var LibrarySDL = { return (SDL.music.audio && !SDL.music.audio.paused) ? 1 : 0; }, + // http://www.libsdl.org/projects/SDL_mixer/docs/SDL_mixer_38.html#SEC38 + // "Note: Does not check if the channel has been paused." + Mix_Playing: function(id) { + if (id === -1) + { + var count = 0; + for (var i = 0; i<SDL.audios.length;i++) + count += SDL.Mix_Playing(i); + return count; + } + var info = SDL.audios[id]; + if (info && info.audio && !info.audio.playing) + return 1; + return 0; + }, + + Mix_Pause: function(id) { + if (id === -1) + { + for (var i = 0; i<SDL.audios.length;i++) + SDL.Mix_Pause(i); + return; + } + var info = SDL.audios[id]; + if (info && info.audio) + { + console.log("paused " + id); + info.audio.pause(); + } + }, + + // http://www.libsdl.org/projects/SDL_mixer/docs/SDL_mixer_39.html#SEC39 + Mix_Paused: function(id) { + if (id === -1) + { + var pausedCount = 0; + for (var i = 0; i<SDL.audios.length;i++) + pausedCount += SDL.Mix_Paused(i); + return pausedCount; + } + var info = SDL.audios[id]; + if (info && info.audio && info.audio.paused) + return 1; + return 0; + }, + Mix_PausedMusic: function() { return (SDL.music.audio && SDL.music.audio.paused) ? 1 : 0; }, + // http://www.libsdl.org/projects/SDL_mixer/docs/SDL_mixer_33.html#SEC33 + Mix_Resume: function(id) { + if (id === -1) + { + for (var i = 0; i<SDL.audios.length;i++) + SDL.Mix_Resume(i); + return; + } + var info = SDL.audios[id]; + if (info && info.audio) + { + console.log("resumed " + id); + info.audio.play(); + } + }, + // SDL TTF TTF_Init: function() { return 0 }, |