03.07.2012, 22:22
Como faзo para criar senhas com letras, pois ele sу autoriza a criaзгo de senhas com numeros, e isso deixaria o server com muitas contas hackeadas.
pawn Код:
public OnPlayerConnect(playerid)
{
new arquivo[40], name[MAX_PLAYER_NAME], string[180];
GetPlayerName(playerid, name, 32);
format(arquivo, 40, "Contas/%s.ini", name);
if(DOF2_FileExists(arquivo))
{
format(string, sizeof(string),"{FFDAB9}Bem-Vindo ao Nova Era RolePlay\n{FFDAB9}Conta: %s\n{FFDAB9}Status: {008B00}Registrada\n{FFDAB9}Digite sua senha abaixo para logar-se",name);
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{FFFF00}Logando", string, "Logar", "Cancelar");
}
else
{
format(string, sizeof(string),"{FFDAB9}Bem-Vindo ao Nova Era RolePlay\n{FFDAB9}Conta: %s\n{FFDAB9}Status: {FF0000}Nгo Registrada\n{FFDAB9}Digite uma senha abaixo para registrar-se",name);
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "{FFFF00}Registrando", string, "Registrar", "Cancelar");
}
return 1;
}
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new arquivo[40], name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, 32);
format(arquivo, 40, "Contas/%s.ini", name);
if(dialogid == DIALOG_REGISTRO)
{
if(!strval(inputtext))
{
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "{FFFF00}Registrando", "{00008B}Digite uma senha abaixo para registrar-se", "Registrar", "Cancelar");
return 1;
}
if(!response)
{
Kick(playerid);
return 1;
}
else
{
Player[playerid][Senha] = strval(inputtext);
DOF2_CreateFile(arquivo);
DOF2_SetInt(arquivo, "Senha", Player[playerid][Senha]);
DOF2_SetInt(arquivo, "Matou", Player[playerid][Matou]);
DOF2_SetInt(arquivo, "Morreu", Player[playerid][Morreu]);
DOF2_SetInt(arquivo, "Dinheiro", Player[playerid][Dinheiro]);
DOF2_SaveFile();
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{FFFF00}Logando", "{9B30FF}Vocк acabou de registrar-se\n{9B30FF}Digita a senha abaixo para logar-se", "Logar", "Cancelar");
}
}
if(dialogid == DIALOG_LOGAR)
{
if(!strval(inputtext))
{
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{FFFF00}Logando", "{008B00}Vocк jб esta registrado em nosso banco de dados\n{008B00}Digite sua senha abaixo para logar-se", "Logar", "Cancelar");
return 1;
}
if(!response)
{
Kick(playerid);
return 1;
}
else
{
Player[playerid][Senha] = DOF2_GetInt(arquivo, "Senha");
if(strval(inputtext) == Player[playerid][Senha])
{
Player[playerid][Matou] = DOF2_GetInt(arquivo, "Matou");
Player[playerid][Morreu] = DOF2_GetInt(arquivo, "Morreu");
Player[playerid][Dinheiro] = DOF2_GetInt(arquivo, "Dinheiro");
GivePlayerMoney(playerid, Player[playerid][Dinheiro]);
SpawnPlayer(playerid);
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{FFFF00}Logando", "{FF0000}Vocк digitou sua senha errada, digite-a novamente para logar!\n{FF0000}Se errar 5 vezes sua conta serб banida!", "Confirma", "Cancelar");
Erro[playerid]++;
if(Erro[playerid] == 5)
{
SendClientMessage(playerid, -1, "{8B0000}Vocк foi banido por errar a senha 5 vezes. {90EE90}Poste em nosso fуrum na seзгo de desban. {8B008B}O motivo de seu banimento!");
Ban(playerid);
return 1;
}
}
}
}
return 1;
}