mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Re-order sound-related code (#12382)
Dropped ServerSoundParams -> moved to ServerPlayingSound. This gets rid of the duplicated 'fade' and 'pitch' values on server-side where only one was used anyway. SimpleSoundSpec is the basic sound without positional information, hence 'loop' is included. Recursively added PROTOCOL_VERSION to most functions to reduce the versioning mess in the future. Per-type version numbers are kept for now as a safety rope in a special case.
This commit is contained in:
parent
0b41533763
commit
a463620edb
20 changed files with 140 additions and 188 deletions
|
@ -437,16 +437,15 @@ int ModApiServer::l_get_worldpath(lua_State *L)
|
|||
int ModApiServer::l_sound_play(lua_State *L)
|
||||
{
|
||||
NO_MAP_LOCK_REQUIRED;
|
||||
SimpleSoundSpec spec;
|
||||
read_soundspec(L, 1, spec);
|
||||
ServerSoundParams params;
|
||||
ServerPlayingSound params;
|
||||
read_soundspec(L, 1, params.spec);
|
||||
read_server_sound_params(L, 2, params);
|
||||
bool ephemeral = lua_gettop(L) > 2 && readParam<bool>(L, 3);
|
||||
if (ephemeral) {
|
||||
getServer(L)->playSound(spec, params, true);
|
||||
getServer(L)->playSound(params, true);
|
||||
lua_pushnil(L);
|
||||
} else {
|
||||
s32 handle = getServer(L)->playSound(spec, params);
|
||||
s32 handle = getServer(L)->playSound(params);
|
||||
lua_pushinteger(L, handle);
|
||||
}
|
||||
return 1;
|
||||
|
|
|
@ -28,9 +28,9 @@ int ModApiSound::l_sound_play(lua_State *L)
|
|||
{
|
||||
SimpleSoundSpec spec;
|
||||
read_soundspec(L, 1, spec);
|
||||
bool looped = readParam<bool>(L, 2);
|
||||
spec.loop = readParam<bool>(L, 2);
|
||||
|
||||
s32 handle = getGuiEngine(L)->playSound(spec, looped);
|
||||
s32 handle = getGuiEngine(L)->playSound(spec);
|
||||
|
||||
lua_pushinteger(L, handle);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue