CMD:login(playerid, params[])
{
if(fexist(UserPath(playerid)))
{
if(gPlayerLogged[playerid] == 0){
ShowPlayerDialog(playerid, 667, DIALOG_STYLE_INPUT, "Login", "Type your password here.", "Submit", "Cancel");
}
else
{
SCM(playerid, COLOR_RED, "You are already logged in.");
}
return 1;}
else
{
SCM(playerid, COLOR_RED, "Account not found. Please use /register.");
}
return 1;
}
if(dialogid == 667)
{
if(response)
{
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
gPlayerLogged[playerid] = 1;
GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
SCM(playerid, COLOR_RED, "You have logged in. You may now spawn.");
}
else
{
gPlayer[playerid] += 1;
if(gPlayer[playerid] == 1)
{
SCM(playerid, COLOR_RED, "Wrong Password. 1/3");
}
if(gPlayer[playerid] == 2)
{
SCM(playerid, COLOR_RED, "Wrong Password. 2/3");
}
if(gPlayer[playerid] == 3)
{
SCM(playerid, COLOR_RED, "Wrong Password. 3/3. You have been kicked.");
Kick(playerid);
}
}
}
}
return 1;
}
hmm to figure out the problem
Why don't you try running the GM without password hash ? To see if it is saving password correctly or not |
if(dialogid == 666)
{
if(response)
{
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Password",udb_hash(inputtext));
INI_WriteInt(File, "Level",PlayerInfo[playerid][pLevel] = 1);
INI_WriteInt(File, "Respect",PlayerInfo[playerid][pLevel] = 0);
INI_WriteInt(File, "RP Points",PlayerInfo[playerid][pLevel] = 0);
INI_WriteInt(File, "Money",PlayerInfo[playerid][pCash] = 0);
INI_WriteInt(File, "Admin",PlayerInfo[playerid][pAdmin] = 0);
INI_WriteInt(File, "Vip", PlayerInfo[playerid][pVip] = 0);
INI_WriteInt(File, "FirstJoined", PlayerInfo[playerid][pFirstJoined] = 0);
INI_WriteInt(File, "Exp", PlayerInfo[playerid][pExp] = 0);
INI_WriteInt(File, "Warns", PlayerInfo[playerid][pWarns] = 0);
INI_WriteInt(File, "Muted", PlayerInfo[playerid][pMuted] = 0);
INI_WriteInt(File, "MuteTime", PlayerInfo[playerid][pMuteTime] = 0);
INI_Close(File);
SCM(playerid, COLOR_RED, "You have registered. You may now spawn.");
gPlayerLogged[playerid] = 1;
new INIFile = INI_Open(UserPath(playerid));
INI_SetTag(File,data);
INI_WriteInt(File, "Level",PlayerInfo[playerid][pLevel]);
INI_WriteInt(File, "Pass",PlayerInfo[playerid][pPass]);
INI_WriteInt(File, "Respect",PlayerInfo[playerid][pRespect]);
INI_WriteInt(File, "Money",PlayerInfo[playerid][pCash]);
INI_WriteInt(File, "Admin",PlayerInfo[playerid][pAdmin]);
INI_WriteInt(File, "Vip",PlayerInfo[playerid][pVip]);
INI_WriteInt(File, "FirstJoined", PlayerInfo[playerid][pFirstJoined]);
INI_WriteInt(File, "Exp", PlayerInfo[playerid][pExp]);
INI_WriteInt(File, "Warns", PlayerInfo[playerid][pWarns]);
INI_WriteInt(File, "Muted", PlayerInfo[playerid][pMuted]);
INI_WriteInt(File, "MuteTime", PlayerInfo[playerid][pMuteTime]);
INI_Close(File);
INI_WriteInt(File, "Pass",PlayerInfo[playerid][pPass]);
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,data);
INI_WriteInt(File, "Level",PlayerInfo[playerid][pLevel]);
INI_WriteInt(File, "Pass",PlayerInfo[playerid][pPass]);
INI_WriteInt(File, "Respect",PlayerInfo[playerid][pRespect]);
INI_WriteInt(File, "Money",PlayerInfo[playerid][pCash]);
INI_WriteInt(File, "Admin",PlayerInfo[playerid][pAdmin]);
INI_WriteInt(File, "Vip",PlayerInfo[playerid][pVip]);
INI_WriteInt(File, "FirstJoined", PlayerInfo[playerid][pFirstJoined]);
INI_WriteInt(File, "Exp", PlayerInfo[playerid][pExp]);
INI_WriteInt(File, "Warns", PlayerInfo[playerid][pWarns]);
INI_WriteInt(File, "Muted", PlayerInfo[playerid][pMuted]);
INI_WriteInt(File, "MuteTime", PlayerInfo[playerid][pMuteTime]);
INI_Close(File);
Haha, okay. You made the same mistake I did.
Remove the line pawn Код:
What's happening is that the password is not being hashed when you are saving. So, when you log off your password is zero, and the udb_hash is not reading it as so. Tell me what happens. Goodluck P.S pawn Код:
|