GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: vardanega le 02 Août 2010, 21:38:37
-
Bonsoir, j'ai un systeme de Login/Register a mon GM qui fonctionne avec Dini, il enregistre bien les joueurs, les logs bien aussi mais quand il s'agit par exemple de mettre a jour les variables aucune variable n'est mise a jour.
exemple:
Contenue d'un fichier joueur.
IP=127.0.0.1
pLevel=1
pAdmin=0
.....
pAdmin ici et a 0 mais quand je me connecte la première fois (en créant un compte) il me dit que je suis connecté au level 55 Admin alors que la variable dans le fichier texte et toujours a 0.
D'ou vient ce problème ?
Merci beaucoup pour votre aide.
-
tente comme ceci
dini_IntSet(PlayerAccount(playerid), "pAdmin", 0);
-
tente comme ceci
dini_IntSet(PlayerAccount(playerid), "pAdmin", 0);
Mes Variables sont mise a zéro dans le OnPlayerConnect
et le code si dessus, je l'utilise déjà mais je vous suis reconnaissant de l'aide que vous m'apportez.
Bonsoir
-
ok on avance dans le login
Padmin[playerid] = dini_Int(PlayerAccount(playerid), "Padmin");
donc la ta var est a 0 comme on a enregistrer a 0 sinon le mieux ce serais de voir le code
-
Bonjour, merci pour vos réponse;
voici le contenue d'une partie de la callback OnPlayerLogin:
<?php
PlayerInfo[playerid][pLevel] = dini_Int(string2,"pLevel");
PlayerInfo[playerid][pAdmin] = dini_Int(string2,"AdminLevels");
PlayerInfo[playerid][pDonateRank] = dini_Int(string2,"pDonateRank");
PlayerInfo[playerid][pConnectTime] = dini_Int(string2,"pConnectTime");
PlayerInfo[playerid][pReg] = dini_Int(string2,"pReg");
PlayerInfo[playerid][pMuted] = dini_Int(string2,"Muted");
PlayerInfo[playerid][pExp] = dini_Int(string2,"pExp");
PlayerInfo[playerid][pCash] = dini_Int(string2,"pCash");
PlayerInfo[playerid][pAccount] = dini_Int(string2,"pAccount");
PlayerInfo[playerid][pKills] = dini_Int(string2,"pKills");
PlayerInfo[playerid][pDeaths] = dini_Int(string2,"pDeaths");
PlayerInfo[playerid][pJailed] = dini_Int(string2,"pJailed");
PlayerInfo[playerid][pJailTime] = dini_Int(string2,"pJailTime");
PlayerInfo[playerid][pLeader] = dini_Int(string2,"pLeader");
PlayerInfo[playerid][pMember] = dini_Int(string2,"pMember");
PlayerInfo[playerid][pRank] = dini_Int(string2,"pRank");
PlayerInfo[playerid][pChar] = dini_Int(string2,"pChar");
PlayerInfo[playerid][pInt] = dini_Int(string2,"pInt");
PlayerInfo[playerid][pLocal] = dini_Int(string2,"pLocal");
PlayerInfo[playerid][pTeam] = dini_Int(string2,"pTeam");
PlayerInfo[playerid][pModel] = dini_Int(string2,"pModel");
PlayerInfo[playerid][pPnumber] = dini_Int(string2,"pPnumber");
PlayerInfo[playerid][pTut] = dini_Int(string2,"pTut");
PlayerInfo[playerid][pWarns] = dini_Int(string2,"pWarns");
PlayerInfo[playerid][pAdjustable] = dini_Int(string2,"pAdjustable");
PlayerInfo[playerid][pBan] = dini_Int(string2,"pBan");
gPlayerLogged[playerid] = 1;
gPlayerAccount[playerid] = 1;
gPlayerSpawned[playerid] = 0;
Voila, si vous trouvez des erreurs merci de me l'indiqué.
Merci pour votre temps.
Vincent
-
sa fonction est bien mais
PlayerInfo[playerid][pAdmin] = dini_Int(string2,"AdminLevels");
n'est pas equivalent a
PlayerInfo[playerid][pAdmin] = dini_Int(string2,"PAdmin");
plus haut tu indique que dans le fichier c'est ecrit comme ceci
Padmin=0;
donc j'en deduit que AdminLevels n'est pas existant dans le fichier
-
sa fonction est bien mais
PlayerInfo[playerid][pAdmin] = dini_Int(string2,"AdminLevels");
n'est pas equivalent a
PlayerInfo[playerid][pAdmin] = dini_Int(string2,"PAdmin");
plus haut tu indique que dans le fichier c'est ecrit comme ceci
Padmin=0;
donc j'en deduit que AdminLevels n'est pas existant dans le fichier
Je vient de mettre pAdmin et AdminLevel a la même expression, mais il y a toujours le même problème.
Vincent
-
change bien partout
-
Tout est bien changer mais le problème demeure.
Merci
Vincent
-
je peu voir la commande ou tu regarde le level admin stp
-
Bonjour,
voici mes OnPlayerRegister, OnPlayerLogin, OnPlayerDataSave
http://pastebin.com/UjYCErmb (http://pastebin.com/UjYCErmb)
Merci encore pour votre précieuse aide.
Vincent
-
il est la ton probleme
PlayerInfo[playerid][pAdmin] = dini_Int(string2,"pAdmin");
remplace par
PlayerInfo[playerid][pAdmin] = dini_Int(string2,"AdminLevel");
-
Non toujours pas pourtant j'ai tout vérifié et fait comme vous me l'avez dit.
Vincent
-
la je ne pige pas car ta var dans ce cas doit etre utiliser autre part ou il met la valeur a 55
-
Ben quand on créer un compte on ce connecte il dit que je suis au level 55 Admin et quand je me reconnecte pour la deuxième fois cet au level 97 !
Vincent