Здравствуйте, есть проблема. Сделал регистрацию и авторизацию на сервер. Проблема в том, что когда я запускаю сервер, регистрирую аккаунт, потом релогуюсь и прохожу авторизацию. Все хорошо, но стоит мне перезапустить сервер и после ввода пароля авторизации пропадает диалог и пишет, что пароль верный, но при этом не спавнит игрока. Что делать - не знаю. Заранее спасибо) Вот код авторизации:
case DLG_LOG:
{
if(response)
{
new checkpass[65];
SHA256_PassHash(inputtext, player_info[playerid][SALT], checkpass, 65);
if(strcmp(player_info[playerid][PASSWORD], checkpass, false, 64) == 0)
{
static const fmt_query[] = "SELECT * FROM `accaunts` WHERE `login` = '%s' AND `password` = '%s'";
new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)+(-2+64)];
format(query, sizeof(query), fmt_query, player_info[playerid][NAME], player_info[playerid][PASSWORD]);
mysql_tquery(dbHandle, query, "PlayerLogin", "i", playerid);
SCM(playerid, COLOR_WHITE, "Пароль верный");
}
else
{
new string[87];
SetPVarInt(playerid, "WrongPassword", GetPVarInt(playerid, "WrongPassword")-1);
if(GetPVarInt(playerid, "WrongPassword") > 0)
{
format(string, sizeof(string), "[Ошибка] {FFFFFF}Вы ввели неверный пароль от аккаунта. У вас осталось %d попыток входа.", GetPVarInt(playerid, "WrongPassword"));
SCM(playerid, COLOR_RED, string);
}
if(GetPVarInt(playerid, "WrongPassword") == 0)
{
SCM(playerid, COLOR_RED, "[Ошибка] {FFFFFF}Вы исчерпали лимит попыток входа и были отключены от сервера");
SPD(playerid, -1, 0, " "," "," ","");
return Kick(playerid);
}
ShowLogin(playerid);
}
}
else
{
SCM(playerid, COLOR_RED, "Используйте \"/q\" чтобы покинуть сервер");
SPD(playerid, -1, 0, " "," "," ","");
return Kick(playerid);
}
}
}