diff --git a/lb_store.lua b/lb_store.lua index 4352d97..d22e4ec 100644 --- a/lb_store.lua +++ b/lb_store.lua @@ -17,6 +17,8 @@ local ColdStore = {} -- Livestore are new records nad records loaded from leaderboard.txt file local LiveStore = {} +-- parse score function +local parseScore -- GLOBAL -- Returns a list of all maps with records @@ -40,13 +42,19 @@ end rawset(_G, "lb_map_list", MapList) -- GLOBAL --- Function for adding records from lua +-- Function for adding a single record from lua local function AddColdStore(record) ColdStore[record.map] = $ or {} table.insert(ColdStore[record.map], record) end rawset(_G, "lb_add_coldstore_record", AddColdStore) +-- GLOBAL +-- Function for adding a single record in string form from lua +local function AddColdStoreString(record) + AddColdStore(parseScore(record)) +end +rawset(_G, "lb_add_coldstore_record_string", AddColdStoreString) -- Insert mode separated records from the flat sourceTable into dest local function insertRecords(dest, sourceTable, modeSep) @@ -204,7 +212,7 @@ local function score_t(map, name, skin, color, time, splits, flags, stat, checks } end -local function parseScore(str) +function parseScore(str) -- Leaderboard is stored in the following tab separated format -- mapnum, name, skin, color, time, splits, flags, stat local t = {}