GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: steve76 le 01 Novembre 2009, 22:08:15

Titre: Problème de Login
Posté par: steve76 le 01 Novembre 2009, 22:08:15
Bonjours à tous

Voilà j'ai un petit soucie avec la partie login de mon gm (enfin plutôt un gros soucie ^^)
En effet n'importe que mot de passe que je tape pour me logguer sera accepté. et ce depuis le passage à la version 0.3a de samp.

Voilci mon code:

Le OnPlayerConnect : http://pastebin.gtaonline.fr/pastebin.php?show=688 (http://pastebin.gtaonline.fr/pastebin.php?show=688)

Le OnDialogResponse :
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
if(response == 1)
{
new idx;
new tmp[256];
new tmppass[64];
tmp = strtok(inputtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "Vous n'avez rien tapé dans la boite");
return 1;
}
strmid(tmppass, tmp, 0, strlen(inputtext), 255);
Encrypt(tmppass);
OnPlayerLogin(playerid,tmppass);
}
if(response == 2)
{
Kick(playerid);
}
}
return 1;
}

Le OnPlayerLogin : http://pastebin.gtaonline.fr/pastebin.php?show=689 (http://pastebin.gtaonline.fr/pastebin.php?show=689)

Voila je vous ai mis tous ce qui est en rapport avec le login

Merci d'avance pour vos réponses.
Cordialement Steve76
Titre: Re : Problème de Login
Posté par: cristab le 01 Novembre 2009, 22:41:39
tente ceci Encrypt(inputtext);
Titre: Re : Problème de Login
Posté par: steve76 le 01 Novembre 2009, 22:53:25
Non désolé même en changeant cela, le problème reste :/
Titre: Re : Problème de Login
Posté par: cristab le 01 Novembre 2009, 22:58:37
voila le code


public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
if(response == 1)
{

OnPlayerLogin(playerid,inputtext);
}
else
{
                       SendClientMessage(playerid, COLOR_GRAD1, "Vous n'avez rien tapé dans la boite");
Kick(playerid);
}
}
return 1;
}

ce n'est pas une commande mais un dialog donc idx strlen ect n'as rien a faire la
Titre: Re : Problème de Login
Posté par: steve76 le 01 Novembre 2009, 23:06:30
Le problème est toujours présent.
C'est assez bizarre car un ami a la même chose que moi et lui ça marche ....
Titre: Re : Problème de Login
Posté par: steve76 le 03 Novembre 2009, 21:34:47
Quelqu'un d'autre à une idée?
Merci d'avance
Titre: Re : Problème de Login
Posté par: Ssk le 03 Novembre 2009, 22:39:22
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
if(response == 1)
{

OnPlayerLogin(playerid,Encrypt(inputtext);
}
else
{
                       SendClientMessage(playerid, COLOR_GRAD1, "Vous n'avez rien tapé dans la boite");
Kick(playerid);
}
}
return 1;
}
Titre: Re : Problème de Login
Posté par: steve76 le 05 Novembre 2009, 13:39:38
Le soucie est toujours le même, il ne voulais pas compiler avec ton code sasuke même en rajoutant la parenthèse manquante.
J'ai donc essayé ça:

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
if(response == 1)
{
                        Encrypt(inputtext);
OnPlayerLogin(playerid,inputtext);
}
else
{
                       SendClientMessage(playerid, COLOR_GRAD1, "Vous n'avez rien tapé dans la boite");
Kick(playerid);
}
}
return 1;
}

Mais je me suis aperçu apres que ça ne pouvais pas marcher...
Titre: Re : Problème de Login
Posté par: cristab le 05 Novembre 2009, 13:55:30
Encrypt(inputtext);
OnPlayerLogin(playerid,inputtext);

completement faux sa


OnPlayerLogin(playerid,inputtext);
puis dans ton OnPlayerLogin

OnPlayerLogin(playerid,passe[])
{
if (dini_Exists(Compte(playerid)))
{
new tmp2[256];
tmp2 = dini_Get(Compte(playerid), "password");
if (Encrypt(passe) != strval(tmp2))
{
SendClientMessage(playerid, COLOR_RED, "Mot de Pass Invallide!");
LOGINSYS(playerid);
}

enfin moi c'est dini mais tu peu adapter sa