Problиme systиme d'enregistrement "YSI"
#1

Bonjour / Bonsoir

Comme dit le titre, j'ai un problиme sur ce systиme, c'est que mon mot de passe ne s'enregistre pas dans mon UserPath (fichier concernant mot mot de passe, Adminlevel, Cash,........), j'ai dйjа crйй un compte mais la valeur de mon mot de passe reste toujours а 0

Merci de m'aider et bonne journйe/soirйe.

Cordialement,MEGHNI

PHP Code:
#include <zcmd>
#include <YSI\y_ini>
//////////////////////Couleur//////////////////////////////
#define COLOR_JAUNE              0xFFFF00AA
#define COLOR_ROUGE_FONCE                  0xAA3333AA
#define COLOR_ROUGE             0xFF0000AA
#define COLOR_CYAN             0x33CCFFAA
#define COLOR_ORANGE            0xFFA500AA
#define COLOR_ARGENT             0x666666
#define COLOR_VERT              0x00FF00FF
#define COLOR_BLEU              0x13DCECFF
#define COLOR_NOIR                  0x000000
#define COLOR_BLANC         0xFFFFFFAA
#define COL_ROUGE   "{FF0000}"
#define COL_BLANC   "{FFFFFF}"
#define COL_CYAN    "{00CCCC}"
#define COL_ARGENT  "{666666}"
#define COL_VERT    "{009900}"
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_SUCCESS_1 3
#define DIALOG_SUCCESS_2 4
/////////////////////////////////////////////////////////
#define PATH "/Comptes/%s.ini"
new Logged[MAX_PLAYERS];
new 
IsSpawned[MAX_PLAYERS];
new 
aDisconnectNames[][32] = {
    
"Timeout",
    
"Quit",
    
"Kick/Ban"
};
enum pJoueur
{
    
pPass,
    
pAdmin,
    
pCash,
    
pScore,
    
pDeaths,
    
pKills
}
new 
InfoJoueur[MAX_PLAYERS][pJoueur];
forward LoadUser_data(playerid,name[],value[]);
public 
LoadUser_data(playerid,name[],value[])
{
    
INI_Int("Mot de Passe",InfoJoueur[playerid][pPass]);
    
INI_Int("Niveau d'administration",InfoJoueur[playerid][pAdmin]);
    
INI_Int("Argent",InfoJoueur[playerid][pCash]);
    
INI_Int("Score",InfoJoueur[playerid][pScore]);
    
INI_Int("Kills",InfoJoueur[playerid][pKills]);
    
INI_Int("Deaths",InfoJoueur[playerid][pDeaths]);
    return 
1;
}
stock UserPath(playerid)
{
    new 
string[128],playername[MAX_PLAYER_NAME];
    
GetPlayerName(playerid,playername,sizeof(playername));
    
format(string,sizeof(string),PATH,playername);
    return 
string;
}
stock udb_hash(buf[]) {
    new 
length=strlen(buf);
    new 
s1 1;
    new 
s2 0;
    new 
n;
    for (
n=0n<lengthn++)
    {
        
s1 = (s1 buf[n]) % 65521;
        
s2 = (s2 s1)     % 65521;
    }
    return (
s2 << 16) + s1;
}
main()
{
    print(
"\n----------------------------------");
    print(
"MEGHNI");
    print(
"----------------------------------\n");
}
public 
OnGameModeInit()
{
    
SetGameModeText("MEGHNI");
    
/////////////////Team Anti-Terroriste///////////////////////
    
AddPlayerClass(280,-1631.9373,653.4382,-5.2422,359.4814,22,1000,32,1000,31,2000); //Anti
    
AddPlayerClass(285,-1631.9373,653.4382,-5.2422,359.4814,22,1000,32,1000,31,2000); // Anti
    
AddPlayerClass(287,-1631.9373,653.4382,-5.2422,359.4814,22,1000,32,1000,31,2000); // Anti
    
AddPlayerClass(164,-1631.9373,653.4382,-5.2422,359.4814,22,1000,32,1000,31,2000); // Anti
    ///////////////////////Team Terroriste////////////////////////
    
AddPlayerClass(7,-1577.6412,683.4985,7.1875,178.3397,30,1000,34,10000,23,1000); // Terro
    
AddPlayerClass(23,-1577.6412,683.4985,7.1875,178.3397,30,1000,34,10000,23,1000); // Terro
    
AddPlayerClass(28,-1577.6412,683.4985,7.1875,178.3397,30,1000,34,10000,23,1000); // Terro
    
AddPlayerClass(100,-1577.6412,683.4985,7.1875,178.3397,30,1000,34,10000,23,1000); // Terro
    
return 1;
}
public 
OnGameModeExit()
{
    return 
1;
}
public 
OnPlayerRequestClass(playeridclassid)
{
    return 
1;
}
public 
OnPlayerConnect(playerid)
{
    new 
pname[MAX_PLAYER_NAME], string[222];
    
GetPlayerName(playerid,pname,sizeof(pname));
    
format(string,sizeof(string),"%s(%d) s'est connectй au serveur",pname,playerid);
    
SendClientMessageToAll(0xFFFFFF,string);
//////////////////////////////////////////////////////////////////
    
if(fexist(UserPath(playerid)))
    {
    
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra true, .extra playerid);
    
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Connection","Veuillez entrer votre mot de passe","connexion","Quitter");
    }
    else
    {
    
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Enregistrement","Veuillez taper un mot de passe pour vous enregistrer","s'enregistrer","Quitter");
    }
    return 
1;
    }
    
    
////////////////////////////////////////////////////////////////////////
    
public OnPlayerDisconnect(playeridreason)
{
    new 
Nom[MAX_PLAYER_NAME+1];
    new 
string[128];
    
GetPlayerName(playeridNomsizeof(Nom));
    
format(string,sizeof(string), "%s(%d) Vient de se dйconnecter !",Nom,playerid,aDisconnectNames[reason]);
    
SendClientMessageToAll(COLOR_JAUNEstring);
    if(
Logged[playerid] == 1)
    {
        new 
INI:File INI_Open(UserPath(playerid));
        
INI_SetTag(File,"data");
                
INI_WriteInt(File,"Mot de passe",InfoJoueur[playerid][pPass]);
        
INI_WriteInt(File,"AdminLevel",InfoJoueur[playerid][pAdmin]);
        
INI_WriteInt(File,"Argent",GetPlayerMoney(playerid));
        
INI_WriteInt(File,"Score",GetPlayerScore(playerid));
        
INI_WriteInt(File,"Kills",InfoJoueur[playerid][pKills]);
        
INI_WriteInt(File,"Deaths",InfoJoueur[playerid][pDeaths]);
        
INI_Close(File);
        return 
1;
    }
    
    return 
1;
}
//////////////////////////////////////////////////////////////////////////////////////////
public OnPlayerDeath(playeridkilleridreason)
{
    
IsSpawned[playerid] =0;
    
InfoJoueur[killerid][pKills]++;
    
InfoJoueur[playerid][pDeaths]++;
    return 
1;
}
/////////////////////////////////////////////////////////////////////////////
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch (
dialogid)
    {
        case 
DIALOG_REGISTER:
        {
            if (!
response) return Kick(playerid);
            if (
response)
            {
                if(!
strlen(inputtext)) return ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Enregistrement","Veuillez йcrire un mot de passe correct","s'enregistrer","Quitter");
                new 
INI:File INI_Open(UserPath(playerid));
                
INI_SetTag(File,"data");
                
INI_WriteInt(File,"Mot de passe",InfoJoueur[playerid][pPass]);
                
INI_WriteInt(File,"Niveau d'administration",InfoJoueur[playerid][pAdmin]);
                
INI_WriteInt(File,"Argent",InfoJoueur[playerid][pCash]);
                
INI_WriteInt(File,"Score",InfoJoueur[playerid][pScore]);
                
INI_WriteInt(File,"Deaths",InfoJoueur[playerid][pDeaths]);
                
INI_WriteInt(File,"Kills",InfoJoueur[playerid][pKills]);
                
INI_Close(File);
                
ShowPlayerDialog(playerid,3,DIALOG_STYLE_MSGBOX,"Success!","Vous vous кtes enregistrй avec succиs, Vous кtes а prйsent connectй !","Ok","");
                
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra true, .extra playerid);
                
Logged[playerid] =1;
            }
        }
    case 
DIALOG_LOGIN:
    {
    if(!
response) return Kick(playerid);
    if (
response)
    {
    if(
udb_hash(inputtext) == InfoJoueur[playerid][pPass])
    {
    
INI_ParseFile(UserPath(playerid),"LoadUser_%s", .bExtra true, .extra playerid);
    
SetPlayerScore(playerid,InfoJoueur[playerid][pScore]);
    
GivePlayerMoney(playerid,InfoJoueur[playerid][pCash]);
    
Logged[playerid] = 1;
    }
    else if (
udb_hash(inputtext) != InfoJoueur[playerid][pPass]) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Connexion","Vous avez entrй un mot de passe incorrect.Veuillez rйessayer.","connexion","Quitter");
    }
    return 
1;
    }
}
    return 
1;

Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)