mirror of https://github.com/bjornbytes/lovr.git
lovr.audio.getVolume; lovr.audio.setVolume;
This commit is contained in:
parent
84bbe291d1
commit
cd3da38478
|
@ -71,6 +71,12 @@ void lovrAudioGetPosition(float* x, float* y, float* z) {
|
|||
alGetListener3f(AL_POSITION, x, y, z);
|
||||
}
|
||||
|
||||
float lovrAudioGetVolume() {
|
||||
float volume;
|
||||
alGetListenerf(AL_GAIN, &volume);
|
||||
return volume;
|
||||
}
|
||||
|
||||
int lovrAudioHas(Source* source) {
|
||||
int index;
|
||||
vec_find(&state.sources, source, index);
|
||||
|
@ -107,6 +113,10 @@ void lovrAudioSetPosition(float x, float y, float z) {
|
|||
alListener3f(AL_POSITION, x, y, z);
|
||||
}
|
||||
|
||||
void lovrAudioSetVolume(float volume) {
|
||||
alListenerf(AL_GAIN, volume);
|
||||
}
|
||||
|
||||
void lovrAudioStop() {
|
||||
int i; Source* source;
|
||||
vec_foreach(&state.sources, source, i) {
|
||||
|
|
|
@ -20,10 +20,12 @@ void lovrAudioUpdate();
|
|||
void lovrAudioAdd(Source* source);
|
||||
void lovrAudioGetOrientation(float* fx, float* fy, float* fz, float* ux, float* uy, float* uz);
|
||||
void lovrAudioGetPosition(float* x, float* y, float* z);
|
||||
float lovrAudioGetVolume();
|
||||
int lovrAudioHas(Source* source);
|
||||
void lovrAudioPause();
|
||||
void lovrAudioResume();
|
||||
void lovrAudioRewind();
|
||||
void lovrAudioSetOrientation(float fx, float fy, float fz, float ux, float uy, float uz);
|
||||
void lovrAudioSetPosition(float x, float y, float z);
|
||||
void lovrAudioSetVolume(float volume);
|
||||
void lovrAudioStop();
|
||||
|
|
|
@ -9,12 +9,14 @@ const luaL_Reg lovrAudio[] = {
|
|||
{ "update", l_lovrAudioUpdate },
|
||||
{ "getOrientation", l_lovrAudioGetOrientation },
|
||||
{ "getPosition", l_lovrAudioGetPosition },
|
||||
{ "getVolume", l_lovrAudioGetVolume },
|
||||
{ "newSource", l_lovrAudioNewSource },
|
||||
{ "pause", l_lovrAudioPause },
|
||||
{ "resume", l_lovrAudioResume },
|
||||
{ "rewind", l_lovrAudioRewind },
|
||||
{ "setOrientation", l_lovrAudioSetOrientation },
|
||||
{ "setPosition", l_lovrAudioSetPosition },
|
||||
{ "setVolume", l_lovrAudioSetVolume },
|
||||
{ "stop", l_lovrAudioStop },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
@ -58,6 +60,11 @@ int l_lovrAudioGetPosition(lua_State* L) {
|
|||
return 3;
|
||||
}
|
||||
|
||||
int l_lovrAudioGetVolume(lua_State* L) {
|
||||
lua_pushnumber(L, lovrAudioGetVolume());
|
||||
return 1;
|
||||
}
|
||||
|
||||
int l_lovrAudioNewSource(lua_State* L) {
|
||||
const char* filename = luaL_checkstring(L, 1);
|
||||
if (!strstr(filename, ".ogg")) {
|
||||
|
@ -109,6 +116,12 @@ int l_lovrAudioSetPosition(lua_State* L) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
int l_lovrAudioSetVolume(lua_State* L) {
|
||||
float volume = luaL_checknumber(L, 1);
|
||||
lovrAudioSetVolume(volume);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int l_lovrAudioStop(lua_State* L) {
|
||||
lovrAudioStop();
|
||||
return 0;
|
||||
|
|
|
@ -10,10 +10,12 @@ int l_lovrAudioInit(lua_State* L);
|
|||
int l_lovrAudioUpdate(lua_State* L);
|
||||
int l_lovrAudioGetOrientation(lua_State* L);
|
||||
int l_lovrAudioGetPosition(lua_State* L);
|
||||
int l_lovrAudioGetVolume(lua_State* L);
|
||||
int l_lovrAudioNewSource(lua_State* L);
|
||||
int l_lovrAudioPause(lua_State* L);
|
||||
int l_lovrAudioResume(lua_State* L);
|
||||
int l_lovrAudioRewind(lua_State* L);
|
||||
int l_lovrAudioSetOrientation(lua_State* L);
|
||||
int l_lovrAudioSetPosition(lua_State* L);
|
||||
int l_lovrAudioSetVolume(lua_State* L);
|
||||
int l_lovrAudioStop(lua_State* L);
|
||||
|
|
Loading…
Reference in New Issue