Portal SAMP
[Ajuda] Problema com sistema de login - 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] Problema com sistema de login (/showthread.php?tid=246)



Problema com sistema de login - Nexus - 28/10/2020

Resolvi refazer meu sistema de login e registro com base em um código mais limpo. O sistema de registro tá funcionando corretamente, mas o sistema de login não carrega os dados do jogador. Acredito que seja alguma falha que deixei passar na stock.

Código:
    if(dialogid == DIALOG_LOGIN)
    {
        if(response)
        {
            if(!strcmp(inputtext, DOF2_GetString(File, "Password")) && !isnull(inputtext))
             {
                 TimerLvlUP[playerid] = SetTimerEx("TimerLevelUP", 600000, 1, "i", playerid);
                LoadAccount(playerid);
                 Connected[playerid] = true;
                 SetInfoLogin[playerid] = false;
             }
             else
             {
                 ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{FFFFFF}Projeto {32CD32}RPG", String, "Entrar", "Sair");
                 SendClientMessage(playerid, -1, "{FF0000}| ERRO | Senha incorreta");
                 Attempts[playerid]++;

                 if(Attempts[playerid] == 5)
                 {
                     SendClientMessage(playerid, -1, "{FF0000}| INFO | Você foi expulso(a) por digitar sua senha incorretamente 5 vezes");
                    Attempts[playerid] = 0;
                    Kick(playerid);
                 }
             }
        }
        else
        {
            SendClientMessage(playerid, -1, "{FF0000}| INFO | Saindo...");
            Kick(playerid);
        }
Código:
stock LoadAccount(playerid)
{
    format(File, sizeof(File), "Contas/%s.ini", GetPlayerNameEx(playerid));

    Health[playerid] = DOF2_GetFloat(File, "Health");
    Score[playerid] = DOF2_GetInt(File, "Score");
    Money[playerid] = DOF2_GetInt(File, "Money");
    Gender[playerid] = DOF2_GetInt(File, "Gender");
    Skin[playerid] = DOF2_GetInt(File, "Skin");

    PosX[playerid] = DOF2_GetFloat(File, "PosX");
    PosY[playerid] = DOF2_GetFloat(File, "PosY");
    PosZ[playerid] = DOF2_GetFloat(File, "PosZ");
    PosA[playerid] = DOF2_GetFloat(File, "PosA");

    Interior[playerid] = DOF2_GetInt(File, "Interior");
    VirtualWorld[playerid] = DOF2_GetInt(File, "VirtualWorld");

    SpawnPlayer(playerid);

    SetPlayerHealth(playerid, Health[playerid]);
    SetPlayerScore(playerid, Score[playerid]);
    GivePlayerMoney(playerid, Money[playerid]);
    SetPlayerSkin(playerid, Skin[playerid]);

    SetPlayerPos(playerid, PosX[playerid], PosY[playerid], PosZ[playerid]);
    SetPlayerFacingAngle(playerid, PosA[playerid]);

    SetPlayerInterior(playerid, Interior[playerid]);
    SetPlayerVirtualWorld(playerid, VirtualWorld[playerid]);
}



RE: Problema com sistema de login - Nexus - 28/10/2020

Resolvido.
Apenas esqueci de formatar o diretório do arquivo "File".