[Ajuda] Senhas salvam como 0
#1

Eu fiz esse sistema de registro e quando eu fui testar, as senhas salvavam como 0 e qualquer um poderia entrar com qualquer senha nas contas. Tentei algumas maneiras de resolver mas nгo deu certo e apelei para o Fуrum .


pawn Код:
#include <a_samp>
#include <DOF2>

//Sistema de Login

#define DIALOG_LOGIN    0001
#define DIALOG_REGISTRO 0002
#define DIALOG_CHECK    0003

enum
Info
{
    Senha,
    Dinheiro
};

new pInfo[MAX_PLAYERS][Info];
new Erro[MAX_PLAYERS];

public OnPlayerConnect(playerid)
{
    new arquivo[40], Nome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Nome, 32);
    format(arquivo, 40, "Contas/%s.ini", Nome);
    if(DOF2_FileExists(arquivo))
        {
            ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Sistema de Login", "Bem Vindo Novamente.\n Digite Sua Senha Para Efetuar o Login.", "Login", "Sair");
        }
    else
        {
            ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "Sistema de Registro", "Bem Vindo ao Brasil New Start.\n Digite uma Senha Para Efetuar o Registro.\n A Senha Deve Conter Mais de 6 Caracteres.", "Registrar", "Sair");
        }
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    new arquivo[40], Nome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Nome, 32);
    format(arquivo, 40, "Contas/%s.ini", Nome);
    if(DOF2_FileExists(arquivo))
        {
            pInfo[playerid][Dinheiro] = GetPlayerMoney(playerid);
            DOF2_SetInt(arquivo, "Senha", pInfo[playerid][Senha]);
            DOF2_SetInt(arquivo, "Dinheiro", pInfo[playerid][Dinheiro]);
            DOF2_SaveFile();
        }
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    new arquivo[40], Nome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Nome, 32);
    format(arquivo, 40, "Contas/%s.ini", Nome);
    if(dialogid == DIALOG_REGISTRO)
        {
            if(!response)
                {
                    SendClientMessage(playerid, COR_VERMELHO, "Vocк Foi Desconectado Pelo Servidor por Nгo Efetuar o Registro.");
                    Kick(playerid);
                }
            if(strlen(inputtext) <= 6)
                {
                    ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "Sistema de Registro", "Sua Senha Deve Conter Mais de 6 Caracteres.", "Registrar", "Sair");
                }
            else
                {
                    pInfo[playerid][Senha] = strval(inputtext);
                    DOF2_CreateFile(arquivo);
                    DOF2_SetInt(arquivo, "Senha", pInfo[playerid][Senha]);
                    DOF2_SetInt(arquivo, "Dinheiro", pInfo[playerid][Dinheiro]);
                    DOF2_SaveFile();
                    ShowPlayerDialog(playerid, DIALOG_CHECK, DIALOG_STYLE_PASSWORD, "Sistema de Registro", "Para Prosseguir, Confirme sua Senha.", "Confirmar", "Cancelar");
                }
        }
    if(dialogid == DIALOG_CHECK)
        {
            pInfo[playerid][Senha] = DOF2_GetInt(arquivo, "Senha");
            if(strval(inputtext) != pInfo[playerid][Senha])
                {
                    DOF2_RemoveFile(arquivo);
                    ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "Sistema de Registro", "A Senhas Digitadas Nгo Correspondem.\n Digite Novamente.", "Registrar", "Sair");
                }
        }
    if(dialogid == DIALOG_LOGIN)
        {
            if(!response)
                {
                    SendClientMessage(playerid, COR_VERMELHO, "Vocк Foi Desconectado Pelo Servidor por Nгo Efetuar o Registro.");
                    Kick(playerid);
                }
            if(response)
                {
                    pInfo[playerid][Senha] = DOF2_GetInt(arquivo, "Senha");
                    if(strval(inputtext) == pInfo[playerid][Senha])
                        {
                            pInfo[playerid][Dinheiro] = DOF2_GetInt(arquivo, "Dinheiro");
                            GivePlayerMoney(playerid, pInfo[playerid][Dinheiro]);
                            SpawnPlayer(playerid);
                        }
                }
            if(response)
                {
                    pInfo[playerid][Senha] = DOF2_GetInt(arquivo, "Senha");
                    if(strval(inputtext) != pInfo[playerid][Senha])
                        {
                            ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Sistema de Login", "Senha Incorreta. Digite sua Senha Corretamente ou Serб Desconectado", "Login", "Sair");
                            Erro[playerid]++;
                            if(Erro[playerid] == 3)
                                {
                                    SendClientMessage(playerid, COR_VERMELHO, "Vocк Foi Desconectado Pelo Servidor por\n Errar Sua Senha 3 Vezes.");
                                    Kick(playerid);
                                }
                        }
                }
        }
    return 1;
}
Ele й muito simples e ainda estб incompleto, estou fazendo por partes e preciso resolver esse probleminha que apareceu.

Agradeзo desde jб.




______
Reply


Messages In This Thread
Senhas salvam como 0 - by TTheGustavo - 24.03.2015, 02:47
Re: Senhas salvam como 0 - by ipsLuan - 24.03.2015, 02:54
Re: Senhas salvam como 0 - by TTheGustavo - 24.03.2015, 02:58
Re: Senhas salvam como 0 - by SkullFire - 24.03.2015, 02:59
Re: Senhas salvam como 0 - by Whoo - 24.03.2015, 03:00
Re: Senhas salvam como 0 - by Ever_SH - 24.03.2015, 03:01
Re: Senhas salvam como 0 - by n0minal - 24.03.2015, 03:02
Re: Senhas salvam como 0 - by TTheGustavo - 24.03.2015, 03:11
Re: Senhas salvam como 0 - by Ever_SH - 24.03.2015, 03:16
Re: Senhas salvam como 0 - by n0minal - 24.03.2015, 03:17

Forum Jump:


Users browsing this thread: 2 Guest(s)