Jump to content

[AJUDA] Salvar Datas


Recommended Posts

Bem três topicos em um dia ;-; devo se burro para fica quase toda hora aqui mas vamos direto para a explicação.

Seguinte to tentando Salvar data do Item mas toda vez que eu reconnect  servidor/restart o script o valor volta padrão e não o salvo. Digamos gastei uma água ai do painel ia fica 4/5 como não salvar quando eu saio do servidor e volta para o 5/5.

Espero que tenham entendidos.
Queria pedir desculpas por fazer topicos quase toda hora
 

Server_side

Quote

function Salvar_Itens_Agua(conta)
    if conta then
        local source = getAccountPlayer(conta)
        if isElement(source) then
            local ItemAgua = getElementData(source,"Agua") or 0
            setAccountData(conta, "ItemAgua",tonumber(ItemAgua))
        end
    end 
end
function Carregar_Itens_Agua(conta)
    if not (isGuestAccount (conta)) then
        if (conta) then 
            local source = getAccountPlayer(conta)  
            if isElement(source) then
                local ItemsAgua = getAccountData(conta,"ItemsAgua")
                if type(ItemsAgua) == "boolean" or "ItemsAgua" == nil then
                    ItemsAgua = 0
                end
                setElementData(source, "Agua", tonumber(ItemsAgua))                       
            end
        end
    end 
end

addEventHandler("onPlayerLogin", root,
  function(_, acc)
    setTimer(Carregar_Itens_Agua,1000,1,acc)
  end
)

function Salvar_Itens_Script_Carregar(res)
    if res == getThisResource() then
        for i, player in ipairs(getElementsByType("player")) do
            local acc = getPlayerAccount(player)
            if not isGuestAccount(acc) then
                Carregar_Itens_Agua(acc)          
            end
        end
    end
end
addEventHandler("onResourceStart", getRootElement(), Salvar_Itens_Script_Carregar)

function Salvar_Itens_Script_Descarregar(res)
    if res == getThisResource() then
        for i, player in ipairs(getElementsByType("player")) do
            local acc = getPlayerAccount(player)
            if not isGuestAccount(acc) then
                Carregar_Itens_Agua(acc)          
            end
        end
    end
end
addEventHandler("onResourceRestart", getRootElement(), Salvar_Itens_Script_Descarregar)

function Salvar_Itens_Script_Desligar(res)
    if res == getThisResource() then
        for i, player in ipairs(getElementsByType("player")) do
            local acc = getPlayerAccount(player)
            if not isGuestAccount(acc) then
                Salvar_Itens_Agua(acc)   
            end
        end
    end
end 
addEventHandler("onResourceStop", getRootElement(), Salvar_Itens_Script_Desligar)



function Salvar_Itens_Sair(quitType)
    local acc = getPlayerAccount(source)
    if not (isGuestAccount(acc)) then
        if acc then
            Salvar_Itens_Agua(acc)
        end
    end
end
addEventHandler("onPlayerQuit", getRootElement(), Salvar_Itens_Sair)

 

 

Edited by +[T]rakin
Link to comment

 

function Salvar_Itens_Sair(quitType)
    local acc = getPlayerAccount(source)
    if not (isGuestAccount(acc)) then
        if acc then
            Salvar_Itens_Agua(acc)
        end
    end
end
addEventHandler("onPlayerQuit", getRootElement(), Salvar_Itens_Sair)
function Salvar_Itens_Agua(conta)
    if conta then
        local source = getAccountPlayer(conta) --< CONTA DE UM CARA QUE QUITO?
        if isElement(source) then
            local ItemAgua = getElementData(source,"Agua") or 0 ---< como ele vai pega o elemento do cara se ele quito?
            setAccountData(conta, "ItemAgua",tonumber(ItemAgua))
        end
    end 
end

so pensa comigo

como vai pega elemento? se o cara quito? so pensa um pouco

 

toda essa função se torna nula

Edited by brunob22
  • Thanks 1
Link to comment
  • Other Languages Moderators
2 hours ago, +[T]rakin said:

Bem três topicos em um dia ;-; devo se burro para fica quase toda hora aqui mas vamos direto para a explicação.

Não há problema em criar mais de um tópico no mesmo dia. Inclusive não há nada proibindo isso nas regras. No entanto, o ideal é que você conclua um tópico primeiro para depois criar outro.

2 hours ago, +[T]rakin said:

Seguinte to tentando Salvar data do Item mas toda vez que eu reconnect  servidor/restart o script o valor volta padrão e não o salvo. Digamos gastei uma água ai do painel ia fica 4/5 como não salvar quando eu saio do servidor e volta para o 5/5.

Então mano, como vc já deve saber. Pra salvar dados entre as sessões dos jogadores, é necessário salvá-las em um banco de dados. Mas pra isso você precisa saber que tipo de dado você está salvando. Se ele é uma data de uma conta de um jogador específico, ou se é uma data de um resource. Você precisa saber a diferença, pois cada uma delas é salva em um banco de dados diferente.

A propósito. Seu código não está funcionando pois você está tentando obter um jogador que quitou. Então sempre dará erro. Além disso, se o seu servidor permitir que o jogador deslogue sem sair do servidor. Ele perderá dados, pois você não configurou pra salvar ao dar logout.

  • Like 1
  • Thanks 1
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...