#include < a_samp >
#include < Dini >
#define RED 0xff0000AA
#define GREEN 0x28a809AA
new File[128], PW[64], WPW[MAX_PLAYERS], S[128];
public OnPlayerConnect(playerid)
{
format(File, sizeof(File), \"User/%s.ini\", Name(playerid));
if(!fexist(File))
{
format(S, sizeof(S), \"Üdvözöllek a szerveren, a(z) %s név még nincs regisztrálva\\nÍrj be egy tetszõleges jelszót!\", Name(playerid));
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", S, \"Rendben\", \"Mégse\");
}
else
{
format(S, sizeof(S), \"Üdvözöllek a szerveren, a(z) %s név már regisztrálva van!\\nÍrd be a jelszót!\", Name(playerid));
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Bejelentkezés\", S, \"Rendben\", \"Mégse\");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
format(S, sizeof(S), \"Üdvözöllek a szerveren, a(z) %s név még nincs regisztrálva\\nÍrj be egy tetszõleges jelszót!\", Name(playerid));
if(!response) Kick(playerid);
if(strlen(inputtext) == 0) ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", S, \"Rendben\", \"Mégsem\");
format(File, sizeof(File), \"User/%s.ini\", Name(playerid));
if(!fexist(File))
{
dini_Create(File);
dini_Set(File, \"Password\", inputtext);
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Bejelentkezés\", \"Írd be a jelszavad.\", \"Rendben\", \"Mégsem\");
}
}
if(dialogid == 2)
{
format(File, sizeof(File), \"User/%s.ini\", Name(playerid));
if(!response) Kick(playerid);
format(PW, 64, \"%s\", dini_Get(File, \"Password\"));
if(!strcmp(inputtext, PW, false))
{
SendClientMessage(playerid, GREEN, \"Sikeres belépés! Nyomj a \'SPAWN\' gombra!\"), Load(playerid);
}
else
{
WPW[playerid] ++;
SendClientMessage(playerid, RED, \"Rossz jelszó!\");
if(WPW[playerid] == 3) return SendClientMessage(playerid, RED, \"Harmadszorra is elrontottad a jelszót, ki lettél rúgva!\"), Kick(playerid);
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Bejelentkezés\", \"Írd a helyes jelszót!\", \"Rendben\", \"Mégsem\");
}
}
return 1;
}
public OnPlayerDisconnect(playerid)
{
Save(playerid);
}
stock Save(playerid)
{
format(File, sizeof(File), \"User/%s.ini\", Name(playerid));
if(fexist(File))
{
dini_IntSet(File, \"Money\", GetPlayerMoney(playerid));
dini_IntSet(File, \"Score\", GetPlayerScore(playerid));
dini_IntSet(File, \"Skin\", GetPlayerSkin(playerid));
}
}
stock Load(playerid)
{
format(File, sizeof(File), \"User/%s.ini\", Name(playerid));
if(fexist(File))
{
GivePlayerMoney(playerid, dini_Int(File, \"Money\"));
SetPlayerScore(playerid, dini_Int(File, \"Score\"));
SetPlayerSkin(playerid, dini_Int(File, \"Skin\"));
}
}
stock Name(playerid)
{
new Name2[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name2, sizeof(Name2));
return Name2;
}