GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: NoLimit le 21 Octobre 2013, 19:51:42

Titre: [Problème] Comptes se sauvegarde mais redemande l'inscription
Posté par: NoLimit le 21 Octobre 2013, 19:51:42
Bonjour, j'ai un problème dont je me suis rendu compte y'a peu de temps, le problème est le suivant :Je créer un compte, celui ci se créer mais le soucis c'est à la déconnexion, le compte est bien présent dans le dossier "scriptfiles/users/%s.ini". Mais le problème est qu'a la demande de connexion on me redemande de créer un compte et quand je met un mot de passe on me dit : Ce pseudo est déjà pris. Je ne comprend pas, on devrait m'amener directement vers la boite de dialog pour se logger..
Donc j'ai regarder mon code et tout marche normalement il ne devrait pas y avoir se problème.. La redirection vers la boite de dialog pour se logger et s'enregistrer est indiquer par "gPlayerAccount[playerid]".. Si vous pouvez m'aider je vous en serait très reconnaissant. Merci d'avance.
Titre: Re : [Problème] Comptes se sauvegarde mais redemande l'inscription
Posté par: » Lukubi™ le 21 Octobre 2013, 20:10:26
Ya un probleme au moment ou tu vérifie si le fichier du compte existe. Regarde cette partie du code.
Titre: Re : [Problème] Comptes se sauvegarde mais redemande l'inscription
Posté par: NoLimit le 21 Octobre 2013, 20:39:23
Oui exate et c'est la première que chose que je suis aller voir et apparament il n'y a pas de soucis... Extrait du code : GetPlayerName(playerid, plname, sizeof(plname));
format(string, sizeof(string), "users/%s.ini", plname);
if(fexist(string))
{
gPlayerAccount[playerid] = 1;
}
else
{
gPlayerAccount[playerid] = 0;
}
Titre: Re : [Problème] Comptes se sauvegarde mais redemande l'inscription
Posté par: cristab le 22 Octobre 2013, 11:22:40
montre le code ou tu l'enregistre le fichier
Titre: Re : [Problème] Comptes se sauvegarde mais redemande l'inscription
Posté par: NoLimit le 22 Octobre 2013, 11:52:11
Bien-sûr j'utilise LARP comme base justement pour sa fiabilité et sa simplicité, mais se problème je ne vois vraiment pas d'où il peut venir.. Enfin si mais sa ne devrait pas bugger.
Pour la partie où on enregistre le fichier tout se passe sur le OnPlayerRegister à savoir :
new string3[64];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "users/%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
    PlayerInfo... etc etc
    fclose(hFile);
    [ Boite de dialog après l'inscription pour se logger ]
}

EDIT: Je viens de m'apercevoir que ce problème venait du faite qu'il faut un certain délais entre le moment où quelqu'un créer un compte et le moment où le fichier de compte est créer. Je ne sais pas d'où viens se délais d'ailleurs car il est censé, d'après le code, se créer directement. Si vous avez la réponse à pourquoi il y a un délais après la création de compte pour créer le fichier... En gros je créer mon compte je joue un peu (une dizaine de min) je déco, je refresh et regarde les fichiers présent dans mon FTP (aucun fichier portant mon nom dans la partie users) et 5 min après je refresh mon FTP et mon fichier apparaît..