09.06.2014, 19:04
(
Last edited by MEGHNI; 10/06/2014 at 11:22 AM.
)
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
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=0; n<length; n++)
{
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(playerid, classid)
{
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(playerid, reason)
{
new Nom[MAX_PLAYER_NAME+1];
new string[128];
GetPlayerName(playerid, Nom, sizeof(Nom));
format(string,sizeof(string), "%s(%d) Vient de se dйconnecter !",Nom,playerid,aDisconnectNames[reason]);
SendClientMessageToAll(COLOR_JAUNE, string);
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(playerid, killerid, reason)
{
IsSpawned[playerid] =0;
InfoJoueur[killerid][pKills]++;
InfoJoueur[playerid][pDeaths]++;
return 1;
}
/////////////////////////////////////////////////////////////////////////////
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,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;
}