Sziasztok.Tudjátok irtam egy regisztrációs rendszert na én azt szerkesztgetem de el ronthattam valamit mert mostmár nem akarja menteni a pénzt/pontot.
Mit rontottam el benne?
#include <a_samp>
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, \"\")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#include <lethaldudb2>
#include <zcmd>
#include <sscanf2>
new bekuldottszoveg[MAX_PLAYERS][128];
new bool:kiemelheto[MAX_PLAYERS];
#pragma unused ret_memcpy
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define MUNKA_SCPD 1
#define MUNKA_TUZOLTO 2
enum pInfo
{
pAdminLevel,
pCash,
pScore,
pFrakcio,
}
new PlayerInfo[MAX_PLAYERS][pInfo];
new gPlayerLogged[MAX_PLAYERS];
#define SERVER_USER_FILE \"myserver/%s.ini\"
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Blank Filterscript by your name here\");
print(\"--------------------------------------\\n\");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
public OnPlayerSpawn(playerid)
{
gPlayerLogged[playerid] = 0;
new name[MAX_PLAYER_NAME], file[256];
GetPlayerName(playerid, name, sizeof(name));
format(file, sizeof(file), SERVER_USER_FILE, name);
if (!dini_Exists(file))
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Üdv te nemvagy regisztrálva\", \"Üdvözöljük ön nem regisztált adja meg a bejelentkezési adatát\", \"Regisztráció\", \"Kilép\");
}
if(fexist(file))
{
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Üdv regisztrált\", \"Üdvözöljük regisztrált add meg a bejelentkezési adataidat\", \"Bejelentkez\", \"Kilép\");
}
}
public OnPlayerDisconnect(playerid, reason)
{
new name[MAX_PLAYER_NAME], file[256];
GetPlayerName(playerid, name, sizeof(name));
format(file, sizeof(file), SERVER_USER_FILE, name);
if(gPlayerLogged[playerid] == 1)
{
dini_IntSet(file, \"Score\", PlayerInfo[playerid][pScore]);
dini_IntSet(file, \"Money\", PlayerInfo[playerid][pCash]);
dini_IntSet(file, \"AdminLevel\",PlayerInfo[playerid][pAdminLevel]);
}
gPlayerLogged[playerid] = 0;
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if (dialogid == 1)
{
new name[MAX_PLAYER_NAME], file[256], string[128];
GetPlayerName(playerid, name, sizeof(name));
format(file, sizeof(file), SERVER_USER_FILE, name);
if(!response) return Kick(playerid);
if (!strlen(inputtext)) return
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Üdv te nemvagy regisztrálva\", \"Üdvözöljük ön nem regisztált adja meg a bejelentkezési adatát\", \"Regisztráció\", \"Kilép\");
dini_Create(file);
dini_IntSet(file, \"Password\", udb_hash(inputtext));
dini_IntSet(file, \"AdminLevel\",PlayerInfo[playerid][pAdminLevel] = 0);
dini_IntSet(file, \"Money\",PlayerInfo[playerid][pCash] = 0);
dini_IntSet(file, \"Score\",PlayerInfo[playerid][pScore] = 0);
format(string, 128, \"[sYSTEM]: Sikeresen bejelentkeztél Név: %s Jelszó %s, te automatikusan bejelentkeztél\", name, inputtext);
SendClientMessage(playerid, -1, string);
SetPlayerSkin(playerid,154);
SendClientMessage(playerid,0x449605AA,\"Üdvözöllek téged kiraboltak el vitték mindened csak egy nadrágot hagytak meg neked\");
SendClientMessage(playerid,0x449605AA,\"Viszont téged Carl_Jonson megtalál és ki visz a faluba ahol feltámazkodhatsz és újra gazdag lehetsz\");
SendClientMessage(playerid,0x449605AA,\"Keresd fel egy munkát és éld az életed \");
SendClientMessage(playerid,0x449605AA,\"Várd meg CJ-t hogy el jöjjön érted [MAXIMUM 2PERC]\");
gPlayerLogged[playerid] = 1;
}
if (dialogid == 2)
{
new name[MAX_PLAYER_NAME], file[256];
GetPlayerName(playerid, name, sizeof(name));
format(file, sizeof(file), SERVER_USER_FILE, name);
if(!response) return Kick(playerid);
if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Üdv regisztrál\", \"Üdvözöljük regisztrált add meg a bejelentkezési adataidat\", \"Bejelentkez\", \"Kilép\");
new tmp;
tmp = dini_Int(file, \"Password\");
if(udb_hash(inputtext) != tmp) {
SendClientMessage(playerid, COLOR_RED, \"Wrong PW sir.\");
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Üdv regisztrál\", \"Üdvözöljük regisztrált add meg a bejelentkezési adataidat\", \"Bejelentkez\", \"Kilép\");
}
else
{
gPlayerLogged[playerid] = 1;
PlayerInfo[playerid][pAdminLevel] = dini_Int(file, \"AdminLevel\");
SetPlayerScore(playerid, PlayerInfo[playerid][pScore]);
GivePlayerMoney(playerid, dini_Int(file, \"Money\")-GetPlayerMoney(playerid));
SendClientMessage(playerid,COLOR_RED, \"[sYSTEM]: Sikeresen bejelentkeztél!\");
}
}
return 1;
}