diff --git a/src/modules/audio/wrap_Source.cpp b/src/modules/audio/wrap_Source.cpp index 1795dec0e..554d71eff 100644 --- a/src/modules/audio/wrap_Source.cpp +++ b/src/modules/audio/wrap_Source.cpp @@ -210,6 +210,13 @@ int w_Source_isPaused(lua_State *L) return 1; } +int w_Source_isPlaying(lua_State *L) +{ + Source *t = luax_checksource(L, 1); + luax_pushboolean(L, !t->isStopped() && !t->isPaused()); + return 1; +} + int w_Source_isStatic(lua_State *L) { Source *t = luax_checksource(L, 1); @@ -299,6 +306,7 @@ static const luaL_Reg functions[] = { "isLooping", w_Source_isLooping }, { "isStopped", w_Source_isStopped }, { "isPaused", w_Source_isPaused }, + { "isPlaying", w_Source_isPlaying }, { "isStatic", w_Source_isStatic }, { "setVolumeLimits", w_Source_setVolumeLimits }, diff --git a/src/modules/audio/wrap_Source.h b/src/modules/audio/wrap_Source.h index b9fff3953..a62010bf6 100644 --- a/src/modules/audio/wrap_Source.h +++ b/src/modules/audio/wrap_Source.h @@ -51,6 +51,7 @@ int w_Source_setLooping(lua_State *L); int w_Source_isLooping(lua_State *L); int w_Source_isStopped(lua_State *L); int w_Source_isPaused(lua_State *L); +int w_Source_isPlaying(lua_State *L); int w_Source_isStatic(lua_State *L); int w_Source_setVolumeLimits(lua_State *L); int w_Source_getVolumeLimits(lua_State *L);