forked from Mirrorlandia_minetest/minetest
Allow 'default' parameter in 'settings:get_bool' function
Default value is used when the setting key is not found in the config file. If default value is not set, 'nil' is returned. #6188
This commit is contained in:
parent
26c7e98e3d
commit
18b921015a
@ -4131,7 +4131,9 @@ It can be created via `Settings(filename)`.
|
|||||||
|
|
||||||
#### Methods
|
#### Methods
|
||||||
* `get(key)`: returns a value
|
* `get(key)`: returns a value
|
||||||
* `get_bool(key)`: returns a boolean
|
* `get_bool(key, [default])`: returns a boolean
|
||||||
|
* `default` is the value returned if `key` is not found.
|
||||||
|
* Returns `nil` if `key` is not found and `default` not specified.
|
||||||
* `get_np_group(key)`: returns a NoiseParams table
|
* `get_np_group(key)`: returns a NoiseParams table
|
||||||
* `set(key, value)`
|
* `set(key, value)`
|
||||||
* Setting names can't contain whitespace or any of `="{}#`.
|
* Setting names can't contain whitespace or any of `="{}#`.
|
||||||
|
@ -100,7 +100,11 @@ int LuaSettings::l_get_bool(lua_State* L)
|
|||||||
bool value = o->m_settings->getBool(key);
|
bool value = o->m_settings->getBool(key);
|
||||||
lua_pushboolean(L, value);
|
lua_pushboolean(L, value);
|
||||||
} else {
|
} else {
|
||||||
lua_pushnil(L);
|
// Push default value
|
||||||
|
if (lua_isboolean(L, 3))
|
||||||
|
lua_pushboolean(L, lua_toboolean(L, 3));
|
||||||
|
else
|
||||||
|
lua_pushnil(L);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user