17.02.2019, 23:51
Estou criando um sistema de registro simples, mas quando o player sai, as vezes buga e a senha fica assim:
Senha=g117
Atй entгo tava tudo certinho... Nгo sei aonde errei.
Senha=g117
PHP код:
new result[128];
new arquivo[40];
new name[MAX_PLAYER_NAME]; // Cria a variavel de nome
GetPlayerName(playerid, name, 32);
format(arquivo, 40, "Players/%s.ini", name);
if(dialogid == DIALOG_REGISTRO) // Dialog registro
{
if(!response)
{
Kick(playerid);
return 1;
}
format(result,128, "Senha digitada: %s.", inputtext);
SendClientMessage(playerid,Branco, result);
format(PlayerInfo[playerid][pSenha], 128, inputtext);
DOF2_CreateFile(arquivo);
DOF2_SetString(arquivo, "Senha", PlayerInfo[playerid][pSenha]);
DOF2_SetInt(arquivo, "Admin", PlayerInfo[playerid][pAdmin]);
DOF2_SaveFile();
return 1;
}
if(dialogid == DIALOG_LOGAR)
{
if(!response)
{
Kick(playerid);
return 1;
}
format(PlayerInfo[playerid][pSenha], 128, DOF2_GetString(arquivo, "Senha"));
// format(result,128, "Senha agora: %s e %s.", inputtext, PlayerInfo[playerid][pSenha]);
// SendClientMessage(playerid,Branco, result);
if(!strcmp(inputtext, PlayerInfo[playerid][pSenha], false))
{
format(PlayerInfo[playerid][pAdmin], 128, DOF2_GetString(arquivo, "Admin"));
SendClientMessage(playerid, -1, "Vocк foi logado com sucesso, Bem - vindo novamente!");
}
else //errou a senha
{
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Login", "Status da conta : Registrada\n digite sua senha para logar!\nSe errar 5 vezes sua conta serб banida!", "Logar", "Cancelar");
format(result,128,"Vocк errou sua senha: %i/5", ERRO[playerid]);
SendClientMessage(playerid, -1, result);
ERRO[playerid]++;
if(ERRO[playerid] == 5) // se ele errar 5 vezes ele serб banido !
{
SendClientMessage(playerid, -1, "Vocк foi kickado por nгo logar!");
Kickar(playerid);
return 1;
}
}
}
PHP код:
public OnPlayerDisconnect(playerid, reason)
{
new arquivo[40];
new name[MAX_PLAYER_NAME]; // Cria a variavel de nome
GetPlayerName(playerid, name, 32);
format(arquivo, 40, "Players/%s.ini", name);
if(DOF2_FileExists(arquivo)) // se o arquivo existir
{
DOF2_SetString(arquivo, "Senha", PlayerInfo[playerid][pSenha]);
DOF2_SetInt(arquivo, "Admin", PlayerInfo[playerid][pAdmin]);
DOF2_SaveFile();
}