Hallo,
da ich im Moment an einem Mini Games Server scripte, und nach jedem Game ein GMX ist ( damit das nächste Game automatisch los geht ) und es nervt, dass man sich jedes mal wieder einloggen muss, wollte ich euch mal fragen, wie ich es machen kann, dass man sich nach GMX nicht nochmal einloggen muss.
Das Reg-\Loginsystem:
#include <Dini>
#define DIALOG_LOGIN 1
#define DIALOG_REG 2
enum pInfo
{
Kill,
Deaths,
eingeloggt
}
new Spieler[MAX_PLAYERS][pInfo];
public OnPlayerConnect(playerid)
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"%s.ini",pname);
if(fexist(accFormat))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Dein Name wurde gefunden!\nBitte logge dich nun ein!","Login","Abbrechen");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Hallo Fremder!\nBitte registriere dich.","Registrieren","Abbrechen");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"%s.ini",pname);
if(response)
{
switch(dialogid)
{
case DIALOG_LOGIN:
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Dein Name wurde gefunden!\nBitte logge dich nun ein!","Abbrechen","Weiter");
return SendClientMessage(playerid,0xFFFFFFFF,"Es wurde kein Passwort angegeben!");
}
if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0)
{
GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
Spieler[playerid][Kill] = dini_Int(accFormat,"Kill");
Spieler[playerid][Deaths] = dini_Int(accFormat,"Deaths");
SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
Spieler[playerid][eingeloggt] = 1;
SendClientMessage(playerid,0xFFFFFFFF,"Du hast dich erfolgreich eingeloggt!");
SendClientMessage(playerid, blue, "Wenn du Hilfe benötigst, tippe /hilfe.");
}
else
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Dein Name wurde gefunden!\nBitte logge dich nun ein!","Login","Abbrechen");
SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort war falsch!");
}
}
case DIALOG_REG:
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Hallo Fremder!\nBitte Registriere dich.","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,"Dein Account wurde angelegt und du wurdest eingeloggt.");
SendClientMessage(playerid,blue,"Wenn du Hilfe benötigst, tippe /hilfe.");
GivePlayerMoney(playerid, 1000);
}
}
}
else
{
switch(dialogid)
{
case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Dein Name wurde gefunden!\nBitte logge dich nun ein!","Abbrechen","Weiter");
case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Hallo Fremder!\nBitte Registriere dich.","Abbrechen","Weiter");
}
}
return 1;
}