recordLevelSpawn
Definition
-- @/lua/ge/extensions/freeroam/levelStats.lua:16
function M.recordLevelSpawn(levelName, spawnPointName)
spawnPointName = spawnPointName or "__default__" -- the default spawnpoint has no name, so we store this internal name as equivalent in the stats file
local stats = getStats()
local now = os.date("!%Y-%m-%dT%H:%M:%SZ") -- ISO8601 format
stats.levels[levelName] = stats.levels[levelName] or {}
local l = stats.levels[levelName]
l.count = (l.count or 0) + 1
l.lastUsed = now
l.spawnPoints = l.spawnPoints or {}
l.spawnPoints[spawnPointName] = l.spawnPoints[spawnPointName] or {}
local s = l.spawnPoints[spawnPointName]
s.spawnPointName = spawnPointName
s.count = (s.count or 0) + 1
s.lastUsed = now
log('D', '', string.format("Saving stats for level %q, spawnpoint %q, to file: %q", levelName, spawnPointName, statsFilePath))
jsonWriteFile(statsFilePath, stats, true)
end
Callers
@/ui/modules/levelselect/levelselect.js
bngApi.engineLua(`freeroam_freeroam.startFreeroamByName('${levelName}', ${spawnPointName})`)
bngApi.engineLua(`extensions.freeroam_levelStats.recordLevelSpawn('${levelName}', ${spawnPointName})`)
// we do not want to have all the level data hanging around all the time