GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: ghettoman94 le 11 Février 2008, 13:32:38
-
Bonjour j' ai un problème, avec l' include File j' ai sauvegarder les contenue de certaine variable mais je n' arrive pas a les lire
par exemple j' ai une variable PermisDeConduire[MAX_PLAYERS] qui est egal a 1.
Avec l' include file je la sauvegarde dans un fichier txt.Jusqu a la tout va bien.
Maintenant j' aimerais que quand la personne se reconnecte cette variable reprend la meme valeur qu elle avait quand la personne a quitter le jeu.
Merci de bien vouloir m aidé. :)
A oui aussi ne me dite pas d' aller sur le wiki samp je suis deja aller et je n 'ai pas bien compris.
-
utilise les inlcudes les inlcudes de draco blue (je confond toujours dubd,dutils et dini donc je sais pas lequel c'est ^^)
dans ta commande register tu mets
dUserSetINT(PlayerName(playerid)).("Permis",0);
dans login
PermisDeConduire[playerid] =dUserINT(PlayerName(playerid)).("Permis");
et dans OnPlayerDisconect
dUserSetINT(PlayerName(playerid)).("Permis",PermisDeConduire[playerid]);
++
R@f
-
ok merci je vais tester sa.
EDIT : heu tu peut m expliquer cette ligne stp :
dUserSetINT(PlayerName(playerid)).("Permis",0);
Surtout le zero a la fin.
Merci
RE EDIT : a oui dsl de demander plein de chose a la fois mais serait il possible de garder les valeur de ses variable meme apres
un reboot du serveur.Parce que moi je n arrive pas.
Merci d avance.
-
le 0 de cette ligne représente la valeur qu'a le permis, quand le joueur s'enregistre on va pas lui donner le permis directement ;)
dUserSetINT(PlayerName(playerid)).("Permis",0);
Pour la sauvegarde des données, pourrais-je voire tes commande ? (je pourrais te les faire mais c'est pas mon but et je suis un peu occupé ;) )
++
R@f
-
ok le script que j utilise pour les stats ses celui de urban ghetto
-
ah ouai, je l'avais oublié celui là :P
Donc, voici ce que donne le RewStats
public RewStats(playerid) {
if (dUserINT(PlayerName(playerid)).("X")!=0) {
SetPlayerPos(playerid,float(dUserINT(PlayerName(playerid)).("X")),float(dUserINT(PlayerName(playerid)).("Y")),float(dUserINT(PlayerName(playerid)).("Z")));
SetPlayerFacingAngle(playerid,dUserINT(PlayerName(playerid)).("Angle"));
GivePlayerMoney(playerid,dUserINT(PlayerName(playerid)).("Argent")-GetPlayerMoney(playerid));
SetPlayerSkin(playerid,dUserINT(PlayerName(playerid)).("Skin"));
SetPlayerArmour(playerid,dUserINT(PlayerName(playerid)).("Armure"));
SetPlayerInterior(playerid,dUserINT(PlayerName(playerid)).("Interieur"));
PermisDeConduire[playerid]=dUserINT(PlayerName(playerid)).("Permis");
}
}
Et le saveStats
public SaveStats(playerid) {
if (PLAYERLIST_authed[playerid]) {
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
dUserSetINT(PlayerName(playerid)).("X",floatround(x));
dUserSetINT(PlayerName(playerid)).("Y",floatround(y));
dUserSetINT(PlayerName(playerid)).("Z",floatround(z));
dUserSetINT(PlayerName(playerid)).("Argent",GetPlayerMoney(playerid));
dUserSetINT(PlayerName(playerid)).("Skin",GetPlayerSkin(playerid));
dUserSetINT(PlayerName(playerid)).("Armure",GetPlayerArmour(playerid,PlayerArmour));
dUserSetINT(PlayerName(playerid)).("Interieur",GetPlayerInterior(playerid));
dUserSetINT(PlayerName(playerid)).("Permis",PermisDeConduire[playerid]);
}
}
Sa deverai donner sa environ ... Enfin, je suis pas un pro avec dini,dubd ou dutils...
++
R@f
-
Merci je vais tester sa tout de suite
EDIT : Re, j ai tester tout marche mais il n' y aurait pas un moyens de garder le contenue de
la variable meme apres un reboot du serveur.
-
ben vu que tu as sauvegarder ta variable sur un fichier txt, même après le reboot, le fichier ne va pas se supprimer, enfin je pense.
-
Ben en fait dans le fichier texte sa me mais
permis = 1
et quand je reboot sa le remet a 0 alors que moi je veut qu il rest a 1.
-
ah ouai, je l'avais oublié celui là :P
Bravo raf, Tu as réussi à me rendre comme ça :
image trop grande
Bon pour ton problème Ghettoman y'a que toi qui as ce genre de soucil, Tu dois surement avoir un autre truc qui doit géner le SaveStats, Un timer avec le même nom ou une variable pareil, Essaye de le testé dans un script vierge et regardes si tu as le même problème, Si c'est le cas ben on peut pas trop t'aider vu que c'est ton script...
-
Oui j' ai reussi c est bon.
-
Ben donnes-nous la solution, Mets toi à la place de celui qui recherche la solution à ce problème, Il trouve le problème avec le message qui dis que c'est réglé mais pas la solution...
PS: Désolé pour l'image trop grande.
-
:D ben en fait j' ai remplacer le fs savestats par un autre tout frai.
j avais du enlever un truc dedans