-- states/load_game.lua -- -- Entries are save metadata. The screen draws three columns per row: character -- name, in-game elapsed time, and the real-world save timestamp. We speak all -- three, in that order -- the character name is what identifies a save, but the -- timestamps are how you tell two runs of the same character apart. local capitalize = require("functions.capitalize") local turnsToTime = require("functions.turnsToTime") return { probe = { fn = "keypressed", focus = "selectedOption", list = "metadataList", focusMayBeNil = true, }, render = function(entry, index, total) local parts = {} parts[#parts + 1] = entry.characterName or "Unnamed" if entry.turn then local ok, turnString = pcall(function() return capitalize(turnsToTime(entry.turn)) end) if ok and turnString then parts[#parts + 1] = turnString end end if entry.lastUpdatedTimestamp then local ok, dateString = pcall(os.date, "%X %x", entry.lastUpdatedTimestamp) if ok and dateString then parts[#parts + 1] = dateString end end parts[#parts + 1] = index .. " of " .. total return table.concat(parts, ", ") end, }