Sziasztok, segítségeteket szeretném kérni abban hogy van ez a kis regisztrációs rendszerem és az lenne a probléma , hogy regisztrálok utána eltűnik a dialog és nem történik semmi. A scriptfilesban se hoz létre fájlt.
Kód:
#define regisztracio 0
#define bejelentkezes 1
new nev[MAX_PLAYER_NAME];
new Belepve[MAX_PLAYERS];
enum JatekosAdatok
{
jOra,
Penz,
}
new PlayerInfo[MAX_PLAYERS][JatekosAdatok];
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
//TogglePlayerSpectating(playerid, true);
new file[256];
GetPlayerName(playerid,nev,sizeof(nev));
format(file,sizeof(file),\"/Felhasznalok/%s.ini\",nev);
new string[256];
if(!fexist(file))
{
format(string,sizeof string, \"Üdvözöllek a szerveren %s!\\nKérlek regisztrálj!\\n\\nÍrd be a kívánt jelszavadat!\",nev);
ShowPlayerDialog(playerid,regisztracio,DIALOG_STYLE_INPUT,\"Regisztráció\",string,\"Regisztráció\",\"Kilépés\");
}
if(fexist(file))
{
format(string,sizeof string, \"Üdvözöllek a szerveren újra %s!\\nKérlek jelentkezz be!\\n\\nÍrd be a jelszavadat!\",nev);
ShowPlayerDialog(playerid,bejelentkezes,DIALOG_STYLE_INPUT,\"Bejelentkezés\",string,\"Belépés\",\"Kilépés\");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new file[128];
format(file,sizeof(file),\"/Felhasznalok/%s.ini\",nev);
if(!fexist(file) && Belepve[playerid] == 1)
{
dini_IntSet(file,\"Jatszott ora\", PlayerInfo[playerid][jOra]);
dini_IntSet(file,\"Penz\", GetPlayerMoney(playerid));
}
GetPlayerName(playerid,nev,sizeof(nev));
Belepve[playerid] = 0;
PlayerInfo[playerid][jOra] = 0;
PlayerInfo[playerid][Penz] = 0;
printf(\"%s kilépett.\",nev);
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == regisztracio)
{
if(response)
{
new file[128];
new string[128];
GetPlayerName(playerid,nev,sizeof(nev));
if(strlen(inputtext) < 4)
{
format(string,sizeof string, \"Üdvözöllek a szerveren %s!\\nKérlek regisztrálj!\\n\\nÍrd be a kívánt jelszavadat!\",nev);
ShowPlayerDialog(playerid,regisztracio, DIALOG_STYLE_INPUT, \"Regisztráció\",string,\"Regisztráció\",\"Kilépés\");
return 0;
}
format(file,sizeof(file),\"/Felhasznalok/%s.ini\",nev);
if(!fexist(file))
{
dini_Create(file);
dini_IntSet(file,\"Antibug\",0);
dini_IntSet(file,\"Jelszo\",udb_hash(inputtext));
dini_IntSet(file,\"Jatszott ora\", 0);
dini_IntSet(file,\"Penz\", 0);
format(string,sizeof string, \"Üdvözöllek a szerveren újra %s!\\nKérlek jelentkezz be!\\n\\nÍrd be a jelszavadat!\",nev);
ShowPlayerDialog(playerid,bejelentkezes,DIALOG_STYLE_INPUT,\"Bejelentkezés\",string,\"Belépés\",\"Kilépés\");
PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
printf(\"%s regisztrált a szerverre!\",nev);
}
else
{
format(string,sizeof string, \"Üdvözöllek a szerveren %s!\\nKérlek regisztrálj!\\n\\nÍrd be a kívánt jelszavadat!\",nev);
ShowPlayerDialog(playerid,regisztracio, DIALOG_STYLE_INPUT, \"Regisztráció\",string,\"Regisztráció\",\"Kilépés\");
}
}
}
if(dialogid == bejelentkezes)
{
if(response)
{
new file[128];
new string[128];
GetPlayerName(playerid,nev,sizeof(nev));
if(strlen(inputtext) < 4)
{
format(string,sizeof string, \"Üdvözöllek a szerveren újra %s!\\nKérlek jelentkezz be!\\n\\nÍrd be a jelszavadat!\",nev);
ShowPlayerDialog(playerid,bejelentkezes,DIALOG_STYLE_INPUT,\"Bejelentkezés\",string,\"Belépés\",\"Kilépés\");
return 0;
}
format(file,sizeof(file),\"/Felhasznalok/%s.ini\",nev);
if(!fexist(file))
{
new jelszo = dini_Int(file,\"Jelszo\");
if(udb_hash(inputtext) == jelszo)
{
Belepve[playerid] = 1;
ResetPlayerMoney(playerid);
//GivePlayerMoney(playerid,dini_Int(file,\"Penz\"));
PlayerInfo[playerid][jOra] = dini_Int(file,\"Jatszott ora\");
PlayerInfo[playerid][Penz] = dini_Int(file,\"Penz\");
}
else
{
SendClientMessage(playerid,HIBA,\"Hibás bejelentkezési kísérlet!\");
printf(\"%s bejelentkezése nem sikerült!\",nev);
Kick(playerid);
}
}
}
else
{
Kick(playerid);
}
}
return 1;
}