diff --git a/api.lua b/api.lua index 52fcf15..817ec17 100644 --- a/api.lua +++ b/api.lua @@ -7,7 +7,6 @@ achievements_lib = {} ---------------------------------------------- local function update_storage() end -local function generate_access_key() end local storage = minetest.get_mod_storage() local achievements = {} -- KEY: mod; VALUE: {KEY: achievement ID; VALUE: {whatever properties} @@ -20,8 +19,6 @@ for pl_name, mods in pairs(storage:to_table().fields) do p_achievements[pl_name] = minetest.deserialize(mods) end -minetest.log("action", dump(p_achievements)) - @@ -32,15 +29,12 @@ minetest.log("action", dump(p_achievements)) function achievements_lib.register_achievements(mod, mod_achievements) assert(achievements[mod] == nil, "[ACHIEVEMENTS_LIB] There was an attempt to register the mod " .. mod .. " more than once! Be sure you didn't call this function twice and you didn't install any suspicious mod") achievements[mod] = mod_achievements - - return generate_access_key(mod) end -function achievements_lib.add_achievement(p_name, mod_key, achvmt_ID) +function achievements_lib.add_achievement(p_name, mod, achvmt_ID) - local mod = access_keys[mod_key] local achievement = achievements[mod][achvmt_ID] if achievement == nil then return end @@ -108,15 +102,13 @@ end -----------------GETTERS---------------------- ---------------------------------------------- -function achievements_lib.get_achievement(mod_key, achvmt_ID) - local mod = access_keys[mod_key] +function achievements_lib.get_achievement(mod, achvmt_ID) return achievements[mod][achvmt_ID] end -function achievements_lib.get_player_achievements(p_name, mod_key) - local mod = access_keys[mod_key] +function achievements_lib.get_player_achievements(p_name, mod) return p_achievements[p_name][mod] end @@ -131,20 +123,3 @@ end function update_storage(p_name) storage:set_string(p_name, minetest.serialize(p_achievements[p_name])) end - - - -function generate_access_key(mod) - - local access_key = "" - - -- se si è così sfigati da generare due chiavi uguali, continua finché la nuova non è univoca - repeat - for i = 1, 10 do - access_key = access_key .. string.char(math.random(33,126)) - end - until (access_keys[access_key] == nil) - - access_keys[access_key] = mod - return access_key -end diff --git a/init.lua b/init.lua index c2c48de..1632a37 100644 --- a/init.lua +++ b/init.lua @@ -1,4 +1,4 @@ -local version = "0.beta" +local version = "1.0.0" dofile(minetest.get_modpath("achievements_lib") .. "/api.lua") dofile(minetest.get_modpath("achievements_lib") .. "/player_manager.lua")