Loghain
Wiek: 29 Na forum: 4506 dni Posty: 51
Piwa : 1
Mam problem z logowaniem w moim systemie rejestracji. Ot?? wed?ug niego ka?de has?o jest poprawne, za???my ?e za?o?? konto na ha?le "12345" a jak podczas logowania wpisz? "x" to zaloguje go normalnie ;/
Nie wiem czemu tak jest, m?j system opiera si? na dini.
Kod:
Kod:
#include <a_samp>
#include <md5>
#include <Dini>
#define LOGIN 1
#define REGISTER 1
new LoginCount[MAX_PLAYERS];
public OnPlayerConnect(playerid){
new Nick [30]; //rejestracja
new Gname[MAX_PLAYER_NAME]; //rejestracja
GetPlayerName(playerid,Gname,sizeof(Gname)); //rejestracja
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname); //rejestracja
if(dini_Exists(Nick)){ //rejestracja
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD," ===== [PL] Polish Ghost Truck [PGT] =====","Witamy ponownie na serwerze [PGT], aby sie zalogowac wpisz\n\t haslo ktore podales podczas rejestracji.","Login","Anuluj"); //rejestracja
}else{ //rejestracja
ShowPlayerDialog(playerid, REGISTER, DIALOG_STYLE_PASSWORD," ===== [PL] Polish Ghost Truck [PGT] =====","Witamy po raz pierwszy na serwerze [PGT], aby sie zarejestrowac\n\t\t wprowadz haslo ponizej.\n\t Uzyj takiego hasla ktore zapamietasz !","Rejestracja","Anuluj"); //rejestracja
} //rejestracja
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
ZapisGracza(playerid); //rejestracja
LoginCount[playerid] = 0; //rejestracja
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == REGISTER){ //rejestracja
if(response == 0){ //rejestracja
SendClientMessage(playerid, Czerwony,"Anulowales/as rejestracje"); //rejestracja
Kick(playerid); //rejestracja
} //rejestracja
if(response == 1){ //rejestracja
if(!strlen(inputtext)){ //rejestracja
ShowPlayerDialog(playerid, REGISTER, DIALOG_STYLE_PASSWORD," ===== [PL] Polish Ghost Truck [PGT] =====","Witamy po raz pierwszy na serwerze [PGT], aby sie zarejestrowac\n\t\t wprowadz haslo ponizej.\n\t Uzyj takiego hasla ktore zapamietasz !","Rejestracja","Anuluj"); //rejestracja
} //rejestracja
Rejestruj(playerid,MD5_Hash(inputtext)); //rejestracja
} //rejestracja
} //rejestracja
if(dialogid == LOGIN){ //logowanie
if(response == 0){ //pierwszy przycisk
SendClientMessage(playerid, Czerwony,"Anulowales/as logowanie"); //rejestracja
Kick(playerid);
return 1;
}
if(response == 1){ //rejestracja
if(!strlen(inputtext)){ //rejestracja
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD," ===== [PL] Polish Ghost Truck [PGT] =====","Witamy ponownie na serwerze [PGT], aby sie zalogowac wpisz\n\t haslo ktore podales podczas rejestracji.","Login","Anuluj"); //rejestracja
} //rejestracja
Login(playerid,MD5_Hash(inputtext)); //rejestracja
} //rejestracja
} //rejestracja
return 1;
}
stock Rejestruj(playerid,key[])
{
new Nick [30];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Gname,sizeof(Gname));
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname);
dini_Create(Nick);
dini_Set(Nick,"Haslo",key);
dini_IntSet(Nick,"Kasa",1000);
dini_IntSet(Nick,"Score",0);
return 1;
}
stock Login(playerid, key[])
{
if(LoginCount[playerid] == 3){
Kick(playerid);
return 1;
}
new Nick [30];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Gname,sizeof(Gname));
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname);
if(!strcmp(key,dini_Get(Nick,"Haslo"), true)){
WczytajGracza(playerid);
}else{
LoginCount[playerid]++;
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD,"Login","Zle haslo","Login","Anuluj");
}
return 1;
}
stock WczytajGracza(playerid)
{
new Nick [30];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Gname,sizeof(Gname));
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname);
if(dini_Exists(Nick)){
GivePlayerMoney(playerid, dini_Int(Nick,"Kasa"));
SetPlayerScore(playerid, dini_Int(Nick,"Score"));
}
return 1;
}
stock ZapisGracza(playerid)
{
new Nick [30];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Gname,sizeof(Gname));
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname);
if(dini_Exists(Nick)){
dini_IntSet(Nick,"Kasa",GetPlayerMoney(playerid));
dini_IntSet(Nick,"Score",GetPlayerScore(playerid));
}
}
Prosz? o pomoc, bo pr?bowa?em ju? wszystkiego, m?czy?em si? ca?y dzie? a i tak nic nie daje. Nie jestem zbyt dobry w te klocki ;/