public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new string[256];
new playername[MAX_PLAYER_NAME];
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
if (dialogid == DLOGIN || dialogid == DLOGIN3)
{
if (response == 1)
{
if(IsNull(inputtext))
{
ShowLoginDialog(playerid,DLOGIN);
return 1;
}
Encrypt(inputtext);
OnPlayerLogin(playerid,inputtext);
//SetPlayerSpawn(playerid);
}
else
{
Kick(playerid);
}
return 1;
}
if (dialogid == DLOGIN2)
{
if (response == 1)
{
if(IsNull(inputtext))
{
ShowLoginDialog(playerid,DLOGIN);
return 1;
}
Encrypt(inputtext);
OnPlayerLogin(playerid,inputtext);
}
else
{
Kick(playerid);
}
return 1;
}
public OnPlayerLogin(playerid,password[])
{
new tmp2[256];
new string2[256];
new playername2[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername2, sizeof(playername2));
format(string2, sizeof(string2), "%s.ini", playername2);
new File: UserFile = fopen(string2, io_read);
if ( UserFile )
{
new PassData[256];
new keytmp[256], valtmp[256];
fread( UserFile , PassData , sizeof( PassData ) );
keytmp = ini_GetKey( PassData );
if( strcmp( keytmp , "Key" , true ) == 0 )
{
valtmp = ini_GetValue( PassData );
strmid(PlayerInfo[playerid][pKey], valtmp, 0, strlen(valtmp)-1, 255);
}
if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
{
new key[ 256 ] , val[ 256 ];
new Data[ 256 ];
while ( fread( UserFile , Data , sizeof( Data ) ) )
{
key = ini_GetKey( Data );
if( strcmp( key , "Level"
Double post
Je viens de faire des essayes :
- Quand je crée mon compte et que je me connecte, sa marche que si je met le bon pass.
- Quand j'éteint le serveur, que je me connecte, sa marche que si je met le bon pass.
- Quand j'ouvre le fichier .ini du compte et que je le ferme et que je me connecte sa marche même avec le mauvais mot de passe..
Donc faut que je regarde où ?