Demande d'aide YSI
#1

Hello,

Donc voilа, c'est la premiиre fois que j'utilise YSI et je rencontre un petit problиme.
Je m'explique tout marche parfaitement sauf la connexion, j'ai utiliser le tutoriel qui est prйsent sur le forum,
tout se sauvegarde le mot de passe et hasher, mais quand je veut me connecter sa me dit Mot de passe invalide voici mon code :
Code:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch( dialogid )
    {
        case DIALOG_REGISTER:
        {
            if (!response) return Kick(playerid);
            if(response)
            {
                if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Enregistrement",""COL_WHITE"Vous avez entrй un mot de passe invalide\n"COL_WHITE"Entrer un mot de passe afin de vous enregistrer.","S'enregistrer","Quitter");
                new INI:File = INI_Open(ComptePath(playerid));
                INI_SetTag(File,"InfosJoueurs");
                INI_WriteInt(File,"MotDePasse",udb_hash(inputtext));
				INI_WriteInt(File,"Argent",0);
                INI_WriteInt(File,"RangAdmin",0);
                INI_WriteInt(File,"Meurtre",0);
                INI_WriteInt(File,"Mort",0);
                INI_Close(File);

                SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0);
                SpawnPlayer(playerid);
                ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"Super! Votre systиme de Y_Ini marche parfaitement. Reconnecter vous afin de sauvegarder vos stats!","OK","");
            }
        }

        case DIALOG_LOGIN:
        {
            if ( !response ) return Kick ( playerid );
            if( response )
            {
                if(udb_hash(inputtext) == InfosJoueurs[playerid][pMotDePasse])
                {
                    INI_ParseFile(ComptePath(playerid), "LoadCompte_%s", .bExtra = true, .extra = playerid);
                    GivePlayerMoney(playerid, InfosJoueurs[playerid][pArgent]);
                    ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"Vous vous кtes correctement connectй!","Ok","");
                }
                else
                {
                    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Connection",""COL_RED"Vous avez entrй un mot de passe invalide.\n"COL_WHITE"Veuillez entrer votre mot de passe pour vous connecter.","Connexion","Quitter");
                }
                return 1;
            }
        }
    }
    return 1;
}
Merci d'avance.

Satsho.
Reply
#2

Utilise des printfs et vois oщ зa bloque.
Reply
#3

Mais lol quoi, udb hash je sais pas si vous кtes au courant mais il a йtй reverse.

Et sinon, c'est quand que tu rйcupиres le mdp du joueur dans le fichier ?
Reply
#4

Je sais pas moi j'ai jamais utiliser YSI et franchement j'arrive pas а comprendre sa logique

Edit : if(udb_hash(inputtext) == InfosJoueurs[playerid][pMotDePasse]) la
Reply
#5

La logique imperturbable de Y_Less...

y_ini est probablement un des meilleurs outils pour йcrire et lire des fichiers mais son comportement ne respete aucune logique connue exceptйe celle de son crйateur.

Quand le joueur se co, tu dois faire un INI_ParseFile pour pouvoir explorer son fichier joueur et lire ses stats sauvegardйes.
Reply
#6

Moi je n'y comprend pas, sinon le INI_ParseFile est la : INI_ParseFile(ComptePath(playerid), "LoadCompte_%s", .bExtra = true, .extra = playerid);
Reply
#7

Je crois que l'extra doit correspondre a ce a quoi correspond le %s.
J'en suis pas sur du tout par contre.
Reply
#8

Non je pense pas, je vais voir, en attendant d'autre rйponse
Reply
#9

Up toujours pas rйgler !
Reply
#10

Bug rйsolu merci quand mкme......
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)