Portal SAMP
[Ajuda] Meu sistema não salva quando da serve closed - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Meu sistema não salva quando da serve closed (/showthread.php?tid=4416)



Meu sistema não salva quando da serve closed - overlordfy - 15/01/2024

Olá, criei um sistema de salvamento de dados em DINI, com salvamento de skin, dinheiro, punição, admin e etc. mas quando eu dou "reset" no meu serve sem quitar do gta "Famoso serve closed" ele não salva nada, as verificações de salvamento esta em OnPlayerRequestClass e OnPlayerDisconnect, esse sistema esta criado em uma stock, já tentei de tudo mas acho que pode ser a include. não sei resolver isso alguém poderia me ajudar ?

Código:
public OnPlayerRequestClass(playerid, classid)
{
      CarregarConta(playerid);
      return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
      SalvarConta(playerid);
      return 1;
}

stock SalvarConta(playerid)
{
    pInfo[playerid][Skin] = GetPlayerSkin(playerid);
    pInfo[playerid][Dinheiro] = GetPlayerMoney(playerid);
    dini_IntSet(Arquivo(playerid), "Fome", pInfo[playerid][Fome]);
    dini_IntSet(Arquivo(playerid), "Sede", pInfo[playerid][Sede]);
    dini_IntSet(Arquivo(playerid), "Sono", pInfo[playerid][Sono]);
    dini_IntSet(Arquivo(playerid), "Skin", pInfo[playerid][Skin]);
    dini_IntSet(Arquivo(playerid), "Dinheiro", pInfo[playerid][Dinheiro]);
    dini_IntSet(Arquivo(playerid), "Admin", pInfo[playerid][Admin]);
    SalvarArmas(playerid);
    return 1;
}

stock CarregarConta(playerid)
{
    pInfo[playerid][Fome] = dini_Int(Arquivo(playerid), "Fome");
    pInfo[playerid][Sede] = dini_Int(Arquivo(playerid), "Sede");
    pInfo[playerid][Sono] = dini_Int(Arquivo(playerid), "Sono");
    pInfo[playerid][Skin] = dini_Int(Arquivo(playerid), "Skin");
    pInfo[playerid][Dinheiro] = dini_Int(Arquivo(playerid), "Dinheiro");
    pInfo[playerid][Admin] = dini_Int(Arquivo(playerid), "Admin");
    return 1;
}



RE: Meu sistema não salva quando da serve closed - xbruno1000x - 15/01/2024

Tenta colocar isso na OnGameModeExit

Código:
    for(new i = 0; i != MAX_PLAYERS; i++){
        SalvarConta(i);
    }