Files
tromi_mobile/settings.lua
2024-04-21 18:21:52 +07:00

45 lines
1.2 KiB
Lua

local bitser = require 'libs.bitser'
local fs = love.filesystem
local _settings = fs.read(CONFIG_FILE) ~= nil and bitser.loadLoveFile(CONFIG_FILE) or {}
local _defaultSettings = {
firstTime = true,
fullscreen = false,
music = true,
---@class input
---@field keys table <string, string>
---@field joysticks table <string, string>
---@field mobile table <string, string>
input = {
keys = {},
joysticks = {},
mobile = { -- Should not be changed for any reason, used for mobile only
enter = 'menu_decide',
acback = 'menu_back',
f13 = 'up',
f14 = 'down',
f15 = 'left',
f16 = 'right',
f17 = 'rotate_left',
f18 = 'rotate_left2',
f19 = 'rotate_right',
f20 = 'rotate_right2',
}
}
}
SETTINGS = setmetatable(
{},
{
__index = function(_, k)
if _settings[k] == nil then _settings[k] = _defaultSettings[k] end
return _settings[k]
end,
__newindex = function(_, k, v)
_settings[k] = v
bitser.dumpLoveFile(CONFIG_FILE,_settings)
end
}
)