• 05 Juin 2026, 17:25:00


Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Glink

Pages: [1]
1
Problème résolu.

2
Exact vincentdu90.
Je n'ai pas à apprendre à le vérifier si j'ai la certitude de l'avoir fait.
A toi aussi de réfléchir chère chneubeul.

3
Les données sont bonnes, les fichiers sont valides etc...
Voici l'enregistrement.
public OnPlayerRegister(playerid, password[])
{
if(IsPlayerConnected(playerid))
{
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)
{
[...] Variables : informations joueur

fclose(hFile);
new loginstring[256];
new loginname[64];
GetPlayerName(playerid,loginname,sizeof(loginname));
format(loginstring,sizeof(loginstring),"Bienvenue, %s\nVotre compte a été detecté sur le serveur.\nEntrez donc votre mot de passe afin de pouvoir jouer.",loginname);
ShowPlayerDialog(playerid,12346,DIALOG_STYLE_INPUT,"Connexion",loginstring,"Connexion","Quitter");
}

4
Sans doute du Callback de connexion, voici.
public OnPlayerLogin(playerid,password[])
{
new tmp2[256];
    new string2[64];
new playername2[MAX_PLAYER_NAME];
new playernamesplit[3][MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
split(playername2, playernamesplit, '_');
format(string2, sizeof(string2), "users/%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 ) ) )
{
(Suite : pInfos)

5
Demande d'aide
Bonjour/Bonsoir,
Avant toute chose je tiens à préciser que je ne suis pas débutant, sans doute pas professionnel mais expérimenté.
Mon problème s'axe sur le gamemode Carson City, d'initiale LARP déplacé à Fort Carson.
Ce soucis est le suivant :
Lors d'une inscription, le fichier .ini se créer bien, comportant les informations, aucun soucis de ce côté. La personne peut donc jouer une fois inscrite. Mais, à la reconnexion, le compte est perdu, mais le fichier est encore existant.
J'ai trouvé cette faille surprenante, mais ayant un peu recherché, j'ai compris que cela s'agissait d'un soucis de nombre de caractères, la limite étant de 12. J'ai donc penché pour un soucis de string, il s'agissait dans le callback OnPlayerLogin, d'un string 64. Je l'ai donc modifié à 24, 128, 250, et 256. Les quatres sans résultats, ma seconde solution aurait été de modifié le MAX_PLAYER_NAME en MAX_PLAYER_NAME+1, mais aucune amélioration.
Je comptais donc, ne pouvant trouver seul, vous demander assistance.
J'ai fais les recherches nécessaire, j'ai trouvé une multitude de posts similaires, mais aucun n'était performant.
Merci par avance, si vous nécessitez d'extrait de code, je suis tout ouïe.

Pages: [1]