From 4bb134dbf89a9fca9dcfb47ccf0a7df90c7e8fac Mon Sep 17 00:00:00 2001 From: Bruno Borges Date: Tue, 4 Jan 2022 10:57:17 -0300 Subject: [PATCH] =?UTF-8?q?Corre=C3=A7=C3=A3o=20memor=20e=20banco=20de=20d?= =?UTF-8?q?ados?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api.lua | 12 ++++++------ comandos.lua | 2 +- lib/memor.lua | 28 ++++++++++++---------------- ranking.lua | 4 ++-- 4 files changed, 21 insertions(+), 25 deletions(-) diff --git a/api.lua b/api.lua index 9d40429..f7bef71 100644 --- a/api.lua +++ b/api.lua @@ -68,12 +68,12 @@ end -- Pegar xp de um jogador (informar) xpro.get_player_xp = function(name) - return xpro.bd.pegar("jogador_"..name, "xp") + return xpro.bd.pegar("player:"..name, "xp") end -- Pegar nivel de um jogador (informar) xpro.get_player_lvl = function(name) - return xpro.bd.pegar("jogador_"..name, "lvl") + return xpro.bd.pegar("player:"..name, "lvl") end @@ -81,10 +81,10 @@ end minetest.register_on_joinplayer(function(player) -- Verifica se jogador ja possui registro no BD - if xpro.bd.verif("jogador_"..player:get_player_name(), "xp") ~= true then + if xpro.bd.verif("player:"..player:get_player_name(), "xp") ~= true then -- Criar registro - local tb_name = "jogador_"..player:get_player_name() + local tb_name = "player:"..player:get_player_name() -- XP xpro.bd.salvar(tb_name, "xp", 0) @@ -107,7 +107,7 @@ end xpro.add_xp = function(name, xp_add) -- Nome da tabela referente ao jogador no banco de dados - local tb_name = "jogador_"..name + local tb_name = "player:"..name local xp_atual = xpro.get_player_xp(name) @@ -142,7 +142,7 @@ end xpro.rem_xp = function(name, xp_rem) -- Nome da tabela referente ao jogador no banco de dados - local tb_name = "jogador_"..name + local tb_name = "player:"..name local xp_atual = xpro.get_player_xp(name) diff --git a/comandos.lua b/comandos.lua index 1100aef..5611b0c 100644 --- a/comandos.lua +++ b/comandos.lua @@ -31,7 +31,7 @@ minetest.register_chatcommand("xpro", { local param1, param2, param3 = m[1], m[2], m[3] -- Check account - if xpro.bd.verif("jogador_"..param1, "xp") ~= true then + if xpro.bd.verif("player:"..param1, "xp") ~= true then return false, S("Jogador inexistente.") end diff --git a/lib/memor.lua b/lib/memor.lua index bee9823..13f4978 100644 --- a/lib/memor.lua +++ b/lib/memor.lua @@ -253,48 +253,44 @@ end -- Fim +-- ImplementaĆ§Ć£o em mod_storage + +local mod_storage = minetest.get_mod_storage() + +-- Fim + -- Montagem de banco de dados bd = {} -- Inserir dados comuns bd.salvar = function(tb, index, valor) - return memor.inserir(tb, index, valor) + return mod_storage:set_string("memor."..tb.."."..index, minetest.serialize(valor)) end -- Inserir textos complexos bd.salvar_texto = function(tb, index, valor) - return memor.inserir(tb, index, valor, true) + return mod_storage:set_string("memor."..tb.."."..index, valor) end -- Consultar dados bd.pegar = function(tb, index) - return memor.consultar(tb, index) + return minetest.deserialize(mod_storage:get_string("memor."..tb.."."..index)) end -- Inserir dados bd.pegar_texto = function(tb, index, valor) - return memor.consultar(tb, index, true) + return mod_storage:get_string("memor."..tb.."."..index) end -- Verificar dados bd.verif = function(tb, index) - return memor.verificar(tb, index) + return mod_storage:contains("memor."..tb.."."..index) end -- Remover dados bd.remover = function(tb, index) - return memor.deletar(tb, index) -end - --- Remover tabela -bd.drop_tb = function(tb) - return memor.deletar_dir(tb) -end - --- Listar dados -bd.listar = function(tb) - return memor.listar(tb) + return mod_storage:set_string("memor."..tb.."."..index, "") end return bd diff --git a/ranking.lua b/ranking.lua index 905be40..cbb977d 100644 --- a/ranking.lua +++ b/ranking.lua @@ -25,7 +25,7 @@ xpro.update_rank = function(name) local att_name = {} local rank = xpro.get_rank() local pontos = 0 - if xpro.bd.verif("jogador_"..name, "xp") == true then pontos = xpro.bd.pegar("jogador_"..name, "xp") end + if xpro.bd.verif("player:"..name, "xp") == true then pontos = xpro.bd.pegar("player:"..name, "xp") end local m1 = {name=name,pontos=pontos} local m2 = {} for x=1, 10 do @@ -129,7 +129,7 @@ local update_formspec = function() for x=1, 10 do local w = (0.4+(0.5*x))+(0.1*x) local liga = nil - if xpro.bd.verif("jogador_"..rank[tostring(x)].name, "lvl") == true then liga = xpro.ligas[xpro.bd.pegar("jogador_"..rank[tostring(x)].name, "lvl")] end + if xpro.bd.verif("player:"..rank[tostring(x)].name, "lvl") == true then liga = xpro.ligas[xpro.bd.pegar("player:"..rank[tostring(x)].name, "lvl")] end if liga ~= nil then liga = "image[1.75,"..(w*0.995-0.05)..";0.66,0.66;"..liga.img.."]" else