Brendo Posted February 13, 2019 Share Posted February 13, 2019 Outra dúvida klkkk mds eu sou mt burro, Enfim to com um sistema de fome e sede, e eu fiz uma gambiarra meio loka (peguei código de um mod e taquei em outro) que salvava a fome e sede do player ao deslogar e quando ele logasse voltava doque tava e a princípio funcionou (n sei como mais funcionou, me senti o fodao) porém agora parou de funcionar e a fome e sede reseta quando o player reloga (volta pra 100) vcs podem me ajudar? Oque aparece no console é isso: Código: addEventHandler ("onPlayerLogin",root,function(_,Acc) local FomeAcc2 = getAccountData (Acc,"AtualHunger") local SedeAcc2 = getAccountData (Acc,"AtualSede") if FomeAcc2 == false then setElementData (source,"hunger",100) else setElementData (source,"hunger",FomeAcc2) end if SedeAcc2 == false then setElementData (source,"sede",100) else setElementData (source,"sede",SedeAcc2) end end) function saveAccountData ( account ) if isGuestAccount ( account ) then return false end Player = getAccountPlayer (account) Fomes = getElementData (Player,"hunger") Sedes = getElementData (Player,"sede") setAccountData (account,"AtualHunger",Fomes) setAccountData (account,"AtualSede",Sedes) end addEventHandler ( 'onPlayerQuit', root, function ( ) local acc = getPlayerAccount ( source ) saveAccountData ( acc ) end ) addEventHandler( "onResourceStart", getResourceRootElement( getThisResource() ), function( ) for _, plr in pairs( getElementsByType( "player" ) ) do local Acc = getPlayerAccount (plr) if not isGuestAccount (Acc) then local FomeAcc = getAccountData (Acc,"AtualHunger") local SedeAcc = getAccountData (Acc,"AtualSede") if FomeAcc == false then setElementData (plr,"hunger",100) else setElementData (plr,"hunger",FomeAcc) end if SedeAcc == false then setElementData (plr,"sede",100) else setElementData (plr,"sede",SedeAcc) end end end end) addEventHandler ("onResourceStop",getResourceRootElement( getThisResource()),function() for index,players in ipairs(getElementsByType("player")) do local acc = getPlayerAccount ( players ) saveAccountData ( acc ) end end) function saveHungerData(player, account) if account then local account = player:getAccount() -- @Obtém a conta do jogador if player:getData("hunger") then -- @Verifica se o elemento possui a data "fome" account:setData("hunger", player:getData("hunger")) -- @Transfere a data do elemento, para a conta else account:setData("hunger", 100) end end end -- @Salva a fome function loadHungerData(player, account) if account then local account = player:getAccount() -- @Obtém a conta do jogador if account:getData("hunger") then -- @Verifica se a data existe na conta player:setData("hunger", account:getData("hunger")) -- @Transfere a data da conta, para o elemento else player:setData("hunger", 100) end end end -- @Carrega a fome function saveHunger() for index, p in ipairs(getElementsByType("player")) do local acc = p:getAccount() if acc then saveHungerData(p, acc) end end end addEventHandler("onPlayerQuit", root, saveHunger) addEventHandler("onResourceStop", resourceRoot, saveHunger) -- @Salva a fome quando o recurso da stop, ou o jogador sai function loadHunger() for index, p in ipairs(getElementsByType("player")) do -- @Loop para obter jogadores local acc = p:getAccount() -- @Obtém a conta do jogador if acc then -- @Verifica se a conta existe loadHungerData(p, acc) -- @Executa a função de carregar os dados else p:setData("hunger", 100) -- @Caso não esteja logado, irá definir a fome para 100 end end end addEventHandler("onResourceStart", resourceRoot, loadHunger) addEventHandler("onPlayerLogin", root, loadHunger) addEventHandler("onPlayerJoin", root, loadHunger) -- @Carrega a fome quando o jogador loga/entra, ou o resource inicia Link to comment
Other Languages Moderators Lord Henry Posted February 13, 2019 Other Languages Moderators Share Posted February 13, 2019 Evite flood de tópicos. Aguarde seu outro tópico ser resolvido antes de criar outro. 1 Link to comment
Brendo Posted February 13, 2019 Author Share Posted February 13, 2019 11 minutes ago, Lord Henry said: Evite flood de tópicos. Aguarde seu outro tópico ser resolvido antes de criar outro. Foi mal, achei que não teria problema. Link to comment
#DaNiLiN Posted February 13, 2019 Share Posted February 13, 2019 Apareceu algum erro no debugscript 3? A sua imagem não está funcionando. 1 Link to comment
Brendo Posted February 13, 2019 Author Share Posted February 13, 2019 5 hours ago, #DaNiLiN said: Apareceu algum erro no debugscript 3? A sua imagem não está funcionando. SourceS.Lua:99 attemp to index local 'p' (a user data value) Link to comment
Other Languages Moderators Lord Henry Posted February 13, 2019 Other Languages Moderators Share Posted February 13, 2019 (edited) 37 minutes ago, Brendo said: SourceS.Lua:99 attemp to index local 'p' (a user data value) GetAccount não funciona a partir de um playerElement. Somente a partir de uma string de accountName. Substitua por getPlayerAccount. Edited February 13, 2019 by Lord Henry 1 Link to comment
Brendo Posted February 13, 2019 Author Share Posted February 13, 2019 3 hours ago, Lord Henry said: GetAccount não funciona a partir de um playerElement. Somente a partir de uma string de accountName. Substitua por getPlayerAccount. Consegui, vlw. Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now