Guten Abend liebe Community,
ich versuche seit 3 Tagen einen Fehler in meinem Speicherrungssystem
zu finden, doch ich finde den Fehler nicht. Ich benutze Dini und dieses Register System
[ SCRIPTING ] GUI Login/Register System
So zu meiner Frage, warum speichert der Server die Spielerdaten nicht.
Hier mal meine Pawncodes:
#define DIALOG_LOGIN 3
#define DIALOG_REG 4
enum spielerdaten
{
Skin,
Adminlevel,
Geld,
Score,
Premium,
eingeloggt,
DeathMatch
}
new Spieler[MAX_PLAYER_NAME][spielerdaten];
public OnPlayerConnect(playerid)
{
new pid[24],string[64];
GetPlayerName(playerid,pid,24);
format(string,sizeof(string),"%s hat den Server betreten.",pid);
SendClientMessageToAll(COLOR_GRAY,string);
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/Spieler/%s.txt",pname);
if(fexist(accFormat))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Schön das du wieder einmal auf German Stunts vorbei schaust.\n Bitte gebe dein Passwort ein um dich einzuloggen.\nViel Spaß auf dem Server wünscht das Admin Team","Abbrechen","Weiter");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Wilkommen auf [GS] - German Stunts. Du bist anscheined neu,\n bitte gebe ein Passwort ein um deinen Account zu sichern","Abbrechen","Weiter");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new pid[24], string[64];
GetPlayerName(playerid,pid,24);
format(string,sizeof(string),"%s hat den Server verlassen.",pid);
SendClientMessageToAll(COLOR_GRAY,string);
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/Spieler/%s.txt",pname);
if(fexist(accFormat))
{
dini_IntSet(accFormat,"Skin",GetPlayerSkin(playerid));
dini_IntSet(accFormat,"Adminlevel",Spieler[playerid][Adminlevel]);
dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
dini_IntSet(accFormat,"Premium",Spieler[playerid][Premium]);
dini_IntSet(accFormat,"DeathMatch",Spieler[playerid][DeathMatch]);
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/Spieler/%s.txt",pname);
if(response)
{
switch(dialogid)
{
case DIALOG_LOGIN:
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Schön das du wieder einmal auf German Stunts vorbei schaust.\n Bitte gebe dein Passwort ein um dich einzuloggen.\nViel Spaß auf dem Server wünscht das Admin Team","Abbrechen","Weiter");
return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
}
if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0)
{
SetPlayerSkin(playerid,dini_Int(accFormat,"Skin"));
Spieler[playerid][Adminlevel] = dini_Int(accFormat,"Adminlevel");
GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
Spieler[playerid][Premium] = dini_Int(accFormat,"Premium");
Spieler[playerid][DeathMatch] = dini_Int(accFormat,"DeathMatch");
Spieler[playerid][eingeloggt] = 1;
SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
}
else
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Schön das du wieder einmal auf German Stunts vorbei schaust.\n Bitte gebe dein Passwort ein um dich einzuloggen.\nViel Spaß auf dem Server wünscht das Admin Team","Abbrechen","Weiter");
SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort war Falsch!");
}
}
case DIALOG_REG:
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Wilkommen auf [GS] - German Stunts. Du bist anscheined neu,\n bitte gebe ein Passwort ein um deinen Account zu sichern","Abbrechen","Weiter");
return SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort ist zu kurz!");
}
dini_Create(accFormat);
dini_Set(accFormat,"Passwort",inputtext);
Spieler[playerid][eingeloggt] = 1;
SendClientMessage(playerid,0xFFFFFFFF,"Account wurde angelegt und du wurdest eingeloggt.");
}
}
}
else
{
switch(dialogid)
{
case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Schön das du wieder einmal auf German Stunts vorbei schaust.\n Bitte gebe dein Passwort ein um dich einzuloggen.\nViel Spaß auf dem Server wünscht das Admin Team","Abbrechen","Weiter");
case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Wilkommen auf [GS] - German Stunts. Du bist anscheined neu,\n bitte gebe ein Passwort ein um deinen Account zu sichern","Abbrechen","Weiter");
}
}
Bitte um Hilfe