Jump to content

salvar elemento


Recommended Posts

Boa noite senhores,

Estou com problema para salvar uns dados que eu preciso. 

 

saveDataMis = {
	{"_killzombies_"},
	{"_killzombies_Max_"},
	{"_killzombies_City_"},
	{"_explores_"},
	{"_explores_timer_"},
	{"_explores_timer_Max_"},
}


Quero salvar ele usando 2 tabelas para procurar depois do _

ex: level_killzombies_ City    (level e cidade (zona)

Eu fiz assim 


 

component = {"LV01_01", "LV01_02","LV01_03", "LV01_04", "LV01_05", "LV01_06", "LV01_07", "LV01_08", "LV01_09", "LV01_10"}
zones = {"Las Venturas", "Los Santos","Tierra Robada", "Bone County", "San Fierro", "Red County", "Whetstone", "Flint County", "Los Santos"}

function leveis2()
	for i,hud in ipairs(component) do
	    leveis = hud
	end
	for i,hud2 in ipairs(zones) do
	    zone = hud2
	end
	return leveis,zone
end

addEventHandler("onPlayerQuit",getRootElement(),function(quitType, reason, responsibleElement)
    local account = getPlayerAccount(source)
    if account then
        if not getElementData(source,"logedin") then return end
        local level,zone = leveis3()			
        for i,data in ipairs(saveDataMis) do
            setAccountData(account,tostring(level..data[1]..zone),tonumber(getElementData(source,tostring(level..data[1]..zone))))
      	end
    end
end)


Ele nao esta puxando todos os elementos da tabela, ele so pega o elemento final do component e zones. É meio complicado de explicar. Mais espero que entendam eu preciso so fazer salvar estes elementos. Eu queria editar criar varias linhas na tabela por isso fiz isso. obrigado

Link to comment

Sempre que uma função como leveis2() é chamada, para cada iteração do loop as variáveis leveis zones são sobrescritas. Imagine:

local nomes = {"Jeferson", "Robervaldo", "César", "Carlos"}
local currentName

function getNames()
    for _, nome in ipairs(nomes) do
        currentName = nome
        print(currentName) --[[
        1ª iteração: Jeferson
        2ª iteração: Robervaldo
        e assim por diante.
        ]]
    end
    return currentName
end

print(getNames()) --> Carlos | Perceba que é o último elemento da tabela "nomes".

Isso deve explicar o problema:

On 01/02/2022 at 23:55, BruXo said:

ele so pega o elemento final do component e zones

Link to comment

então mais no caso eu quero que ele pega os elementos da tabela e juntem. 


EX: LV01_01_killzombies_Las Venturas


fiz um que deu certo mais ele carrega mais de uma vez dando um certo loop


 

function checkElementLogin(account)
	if account then
		for i,zone in ipairs(zones2) do
			if zone[1] then
				for i,level in ipairs(leveiss) do
					if level[1] then
						for i,data in ipairs(saveDataMis) do
							if data[1] and data[1] and zone[1] then
								local datas = level[1]..data[1]..zone[1]
								local datas2 = data[1]..level[1]
						    	local elementData = getAccountData(account,tostring(datas))
						    	local elementData2 = getAccountData(account,tostring(datas2))
								if datas and elementData then
									outputDebugString("teste 2 "..tostring(datas).." | "..tostring(elementData))
									-- setElementData(source,tostring(datas),elementData)
								end
								if datas2 and elementData2 then
									outputDebugString("teste 3 "..tostring(datas2).." | "..tostring(elementData2))
									-- setElementData(source,tostring(datas2),elementData2)
								end
								
					    	end
					    end
					end
				end
			end
		end
	end
end

 

veja so ele aparece mais de uma vez 

 

[2022-02-05 16:18:52] INFO: teste 3 misMW_LV01_01 | Missão: #01
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_killzombies_Las Venturas | 0
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_killzombies_Max_Las Venturas | 3
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_killzombies_City_Las Venturas | Las Venturas
[2022-02-05 16:18:52] INFO: teste 3 misMW_LV01_01 | Missão: #01
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_explores_Los Santos | Los Santos
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_explores_timer_Los Santos | 0
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_explores_timer_Max_Los Santos | 60
[2022-02-05 16:18:52] INFO: teste 3 misMW_LV01_01 | Missão: #01
[2022-02-05 16:18:52] INFO: teste 3 misMW_LV01_01 | Missão: #01  [DUP x6]
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_explores_Los Santos | Los Santos
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_explores_timer_Los Santos | 0
[2022-02-05 16:18:52] INFO: teste 2 LV01_01_explores_timer_Max_Los Santos | 60

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...