Huhu Leute, mein Login/Registersystem buggt ein wenig.
Wenn ich connecte folgt der Dialog, was auch richtig ist. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_MSGBOX,"Great-Life Registrierung","Willkommen auf Great-Life.\nDieser Name ist noch nicht auf dem Server registriert.\nMöchtest du einen Account anlegen, so drücke nun bitte Ja.","Ja","Abbrechen");
Aber wenn ich auf Ja drücke, passiert nichts hier mal die Codes.
stock Register(playerid,key[])
{
new Spielerdatei[64];
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
dini_Create(Spielerdatei);
dini_Set(Spielerdatei,"Passwort",key);
dini_IntSet(Spielerdatei,"LoginVersuch",0);
return 1;
}
stock Login(playerid,key[])
{
new Spielerdatei[64];
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
{
SpielerLaden(playerid);
}
else
{
SetPVarInt(playerid, "LoginVersuch", GetPVarInt(playerid, "LoginVersuch") + 1);
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Great-Life Login","Bitte gebe nun dein selbst gewähltes Passwort ein, was du bei der Registrierung eingegeben hast.\nSolltest du dein Passwort vergessen haben, melde dich bei einem höheren Admin für weitere Informationen.","Login","Abbrechen");
if(GetPVarInt(playerid,"LoginVersuch") == 3)
{
Kick(playerid);
}
}
return 1;
}
stock SpielerLaden(playerid)
{
new Spielerdatei[64];
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
return 1;
}
stock SpielerSpeichern(playerid)
{
new Spielerdatei[64];
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_LOGIN)
{
if(response==0)
{
SendClientMessage(playerid,Hellrot,"Du hast auf Abbrechen gedrückt, sodass du vom Server gekickt wurdest.");
Kick(playerid);
}
if(response==1)
{
if(!strlen(inputtext))
{
SetPVarInt(playerid, "LoginVersuch", GetPVarInt(playerid, "LoginVersuch") + 1);
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Great-Life Login","Bitte gebe nun dein selbst gewähltes Passwort ein, was du bei der Registrierung eingegeben hast.\nSolltest du dein Passwort vergessen haben, melde dich bei einem höheren Admin für weitere Informationen.","Login","Abbrechen");
if(GetPVarInt(playerid,"LoginVersuch") == 3)
{
Kick(playerid);
}
return 1;
}
else
{
Login(playerid,(inputtext));
}
}
if(dialogid == DIALOG_REGISTER)
{
if(response==1)
{
ShowPlayerDialog(playerid,DIALOG_PASSWORT,DIALOG_STYLE_INPUT,"Great-Life Registrierung","Du möchtest dir also einen Account erstellen, nun gebe dein gewünschtes Passwort ein.\nSolltest du dein Passwort vergessen haben, melde dich bei einem höheren Admin für weitere Informationen.","Registrieren","Abbrechen");
}
if(response==0)
{
SendClientMessage(playerid,Hellrot,"Du hast auf Abbrechen gedrückt, sodass du vom Server gekickt wurdest.");
Kick(playerid);
}
}
if(dialogid==DIALOG_PASSWORT)
{
if(response==0)
{
SendClientMessage(playerid,Hellrot,"Du hast auf Abbrechen gedrückt, sodass du vom Server gekickt wurdest.");
Kick(playerid);
}
if(response==1)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_PASSWORT,DIALOG_STYLE_INPUT,"Great-Life Registrierung","Du möchtest dir also einen Account erstellen, nun gebe dein gewünschtes Passwort ein.\nSolltest du dein Passwort vergessen haben, melde dich bei einem höheren Admin für weitere Informationen.","Registrieren","Abbrechen");
return 1;
}
else
{
Register(playerid,(inputtext));
}
}
}
}
return 1;
}
public OnPlayerConnect(playerid)
{
SetPVarInt(playerid,"LoginVersuch",0);
SetPlayerVirtualWorld(playerid,0);
new Spielerdatei[64];
if(IsPlayerNPC(playerid))return 1;
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
if(dini_Exists(Spielerdatei))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Great-Life Login","Bitte gebe nun dein selbst gewähltes Passwort ein, was du bei der Registrierung eingegeben hast.\nSolltest du dein Passwort vergessen haben, melde dich bei einem höheren Admin für weitere Informationen.","Login","Abbrechen");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_MSGBOX,"Great-Life Registrierung","Willkommen auf Great-Life.\nDieser Name ist noch nicht auf dem Server registriert.\nMöchtest du einen Account anlegen, so drücke nun bitte Ja.","Ja","Abbrechen");
}
return 1;
}
Gruß
/e: Text