Was nun? is ja nur ein Code Ich schätze mal dini_Int
Durch Serverrestart resetten sich Accounts
- [GGR]GamerXDFreak
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
ja
-
Die Staatsfraktion wird jetzt nun gespeichert ,doch das Adminlevel nicht LOL?!
stock Login(playerid,key[])
{
SetPVarInt(playerid,"EG",1);
SpawnPlayer(playerid);
new Spieler[64];
new Sname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Sname,sizeof(Sname));
format(Spieler,sizeof(Spieler),"/Accounts/%s.txt",Sname);
sSpieler[playerid][Adminlevel] = dini_Int(Spieler,"Adminlevel"); // grad ka wie die Funktion zum Holen eines Integer Wertes heißt. oder dini_IntGet?
sSpieler[playerid][Staatsfraktion] = dini_Int(Spieler,"Staatsfraktion"); // grad ka wie die Funktion zum Holen eines Integer Wertes heißt. oder dini_IntGet?
sSpieler[playerid][Mafia] = dini_Int(Spieler,"Mafia"); // grad ka wie die Funktion zum Holen eines Integer Wertes heißt. oder dini_IntGet?
sSpieler[playerid][Adminlevel] = dini_Int(Spieler,"Gang"); // grad ka wie die Funktion zum Holen eines Integer Wertes heißt. oder dini_IntGet?
if(!strcmp(key,dini_Get(Spieler,"Passwort"),false))
{
SendClientMessage(playerid,Blau,"Du hast dich erfolgreich eingeloggt!");
}
else
{
SendClientMessage(playerid,Rot,"Du hast ein falsches Passwort eingegeben ,das System hat dich gekickt!");
Kick(playerid);
}
return 1;
}stock SpielerSpeichern(playerid)
{
new Accounts[64];
new Sname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Sname,sizeof(Sname));
format(Accounts,sizeof(Accounts),"/Accounts/%s.txt",Sname);
if(dini_Exists(Accounts) && GetPVarInt(playerid,"EG")==1)
{
dini_IntSet(Accounts,"Adminlevel",sSpieler[playerid][Adminlevel]);
dini_IntSet(Accounts,"Staatsfraktion",sSpieler[playerid][Staatsfraktion]);
dini_IntSet(Accounts,"Gang",sSpieler[playerid][Gang]);
dini_IntSet(Accounts,"Mafia",sSpieler[playerid][Mafia]);
}
return 1;
}stock SpielerLaden(playerid)
{
new Spieler[64];
new Sname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Sname,sizeof(Sname));
format(Spieler,sizeof(Spieler),"/Accounts/%s.txt",Sname);
if(dini_exists(Spieler))
{
SetPlayerScore(playerid = dini_Get(Accounts,"Level");
sSpieler[playerid][AdminLevel] = dini_Get(Accounts,"Adminlevel");
sSpieler[playerid][Staatsfraktion] = dini_Get(Accounts,"Staatfraktion");
sSpieler[playerid][Gang] = dini_Get(Accounts,"Gang");
sSpieler[playerid[Login] = 1;
SpawnPlayer(playerid);}
return 1;
} -
liegt vllt daran das dini nich alles speichern kann weil der callback game mode exit schnell ist ?
ich hatte das ja auch un hab ein anderes system genommen
-
Könnt ihr mir genauer helfen ich bin ein Scripter Anfänger und durch die Tutorials von Nemesus kommen solche Probleme.
public OnGameModeExit()
{
for(new i = 0; i < GetMaxPlayers(); i++)
{
SpielerSpeichern(i);
print("Alle Accounts wurden nach einem Serverneustart gespeichert.");
}
return 1;
} -
breadfish.de
Hat das Thema geschlossen.