[Ajuda] Registro/Login
#5

Tente:
pawn Code:
#include    a_samp
#include    Dof2

#define     DIALOG_REGISTRAR    1
#define     DIALOG_LOGAR    2

enum Informacoes
{
    Matou,
    Morreu
}

new Player[MAX_PLAYERS][Informacoes];
new Erro[MAX_PLAYERS];

public OnFilterScriptExit()
{
    DOF2_Exit();
    return 1;
}

public OnPlayerConnect(playerid)
{
    if(DOF2_FileExists(Contas(playerid))) ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Vocк й Registrado, digite sua senha para logar!", "Login", "Sair");
    else ShowPlayerDialog(playerid, DIALOG_REGISTRAR, DIALOG_STYLE_INPUT, "Registro", "Vocк ainda nгo й Registrado, digite uma senha para se registrar!", "Registar", "Sair");
    return 1;
}

public OnPlayerDisconnect(playerid)
{
    SalvarContas(playerid);
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == DIALOG_REGISTRAR)
    {
        if(!response) return Kick(playerid);
        if(!strval(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTRAR, DIALOG_STYLE_INPUT, "Registro", "Digite apenas nъmeros!\nDigite sua senha novamente para se registrar!", "Confirma", "Cancelar");
        DOF2_CreateFile(Contas(playerid));
        DOF2_SetInt(Contas(playerid),"Senha", inputtext);
        DOF2_SaveFile();
        SalvarContas(playerid);
        ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Vocк se cadastrou, agora й sу logar com sua senha registrada!", "Login", "Sair");
        return 1;
    }
    if(dialogid == DIALOG_LOGAR)
    {
        if(!response) return Kick(playerid);
        if(!strval(inputtext)) return ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Digite apenas nъmeros!\nDigite sua senha cadastrada para logar!\nSe errar 5 vezes sua conta serб banida!", "Confirma", "Cancelar");
        if(strval(inputtext) == DOF2_GetInt(Contas(playerid),"Senha"))
        {
            Player[playerid][Matou] = DOF2_GetInt(Contas(playerid), "Matou");
            Player[playerid][Morreu] = DOF2_GetInt(Contas(playerid), "Morreu");
            GivePlayerMoney(playerid,DOF2_GetInt(Contas(playerid), "Dinheiro"));
        }
        else
        {
            ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Vocк digitou sua senha errado, digite-a novamente para logar!\nSe errar 5 vezes serб Kickado!", "Confirma", "Cancelar");
            Erro[playerid]++;
            if(Erro[playerid] == 5)
            {
                SendClientMessage(playerid, -1, "Vocк foi Kickado por errar a senha 5 vezes!");
                Kick(playerid);
                return 1;
            }
        }
        return 1;
    }
    return 1;
}

Contas(playerid)
{
    new arquivo[40], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    format(arquivo, sizeof(arquivo), "Contas/%s.ini", name);
    return arquivo;
}

SalvarContas(playerid)
{
    if(!DOF2_FileExists(Contas(playerid))) { DOF2_CreateFile(Contas(playerid)); }
    DOF2_SetInt(Contas(playerid), "Matou", Player[playerid][Matou]);
    DOF2_SetInt(Contas(playerid), "Morreu", Player[playerid][Morreu]);
    DOF2_SetInt(Contas(playerid), "Dinheiro", GetPlayerMoney(playerid));
    DOF2_SaveFile();
    return 1;
}
Reply


Messages In This Thread
Registro/Login - by Adriano_MQD - 23.08.2012, 18:19
Re: Registro/Login - by @Riichard - 23.08.2012, 18:21
Re: Registro/Login - by humildadeforever - 23.08.2012, 18:28
Re: Registro/Login - by Jason` - 23.08.2012, 18:33
Re: Registro/Login - by humildadeforever - 23.08.2012, 18:36
Re: Registro/Login - by Jason` - 23.08.2012, 18:38
Re: Registro/Login - by Adriano_MQD - 23.08.2012, 18:46
Re: Registro/Login - by humildadeforever - 23.08.2012, 18:49
Re: Registro/Login - by .FuneraL. - 23.08.2012, 18:52
Re: Registro/Login - by Adriano_MQD - 23.08.2012, 18:54
Re: Registro/Login - by @Riichard - 23.08.2012, 18:58
Re: Registro/Login - by GhosT_[] - 23.08.2012, 19:45
Re: Registro/Login - by humildadeforever - 23.08.2012, 19:47

Forum Jump:


Users browsing this thread: 1 Guest(s)