better_commands-cd2025/settings.lua
2024-05-05 19:24:40 -07:00

34 lines
1.1 KiB
Lua

better_commands.settings = {}
---Gets a setting and stores it in better_commands.settings
---@param setting string
---@param default any
---@param type string?
local function get_setting(setting, default, type)
local long_setting = "better_commands_"..setting
if not type or type == "string" then
better_commands.settings[setting] = minetest.settings:get(long_setting) or default
elseif type == "bool" then
better_commands.settings[setting] = minetest.settings:get_bool(long_setting, default)
elseif type == "number" then
better_commands.settings[setting] = tonumber(minetest.settings:get(long_setting)) or default
end
end
local settings = {
{"override", false, "bool"},
{"acovg_time", false, "bool"},
{"save_interval", 3, "number"},
{"kill_creative_players", false, "bool"},
{"scoreboard_picked_up", true, "bool"},
{"scoreboard_mined", true, "bool"},
{"scoreboard_placed", true, "bool"},
{"scoreboard_crafted", true, "bool"},
{"scoreboard_health", true, "bool"},
{"scoreboard_death", true, "bool"},
}
for _, setting in ipairs(settings) do
get_setting(unpack(setting))
end