Skripta koju koristim: Ma moje nesto
Detaljan opis problema: Ovako kad pogrijesim pass ili napravim GMX resitira mi se skin i score vec sam bio otvorio temu ali nemogu nikako popravit!
Dio skripte:
if(fexist(UserPath(playerid)))
{
for(new i =0; i<=20; i++) SendClientMessage(playerid, 0xFFFFFFFF, " ");
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD,"Prijava", "{0000FF}__________________________________________\n\n{FFFFFF}Dobrodosao na "Server_Name"\n\n{00FF00}Tvoj account je pronadjen!\n\n{FFFFFF}Molimo upisi svoju lozinku kako bi usao na server:\n{0000FF}__________________________________________","Prijava","Odustani");
GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
}
else
{
for(new i =0; i<=20; i++) SendClientMessage(playerid, 0xFFFFFFFF, " ");
TogglePlayerSpectating(playerid, 1);
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT,"Registracija", "{0000FF}__________________________________________\n\n{FFFFFF}Dobrodosao na "Server_Name"\n\n{FF00FF}Tvoj account nije pronadjen!\n\n{FFFFFF}Molimo upisi zeljenu lozinku:\n{0000FF}__________________________________________","Registracija","Odustani");
}
switch( dialogid )
{
case 2:
{
if (!response) return Kick(playerid);
if(response)
{
TogglePlayerSpectating(playerid, 1);
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Registracija", "{0000FF}__________________________________________\n\n{FFFFFF}Dobrodosao na "Server_Name"\n\n{FF00FF}Tvoj account nije pronadjen!\n\n{FFFFFF}Molimo upisi zeljenu lozinku:\n{0000FF}__________________________________________","Registracija","Odustani");
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Password",udb_hash(inputtext));
INI_WriteInt(File,"Score",0);
INI_WriteInt(File,"Cash",0);
INI_WriteInt(File,"Banka",0);
INI_WriteInt(File,"Admin",0);
INI_WriteInt(File,"GameSage",0);
INI_WriteInt(File,"Skin",0);
INI_WriteInt(File,"Kills",0);
INI_WriteInt(File,"Deaths",0);
INI_WriteInt(File,"Podaci",0);
INI_WriteInt(File,"Spol",0);
INI_WriteInt(File,"Godine",0);
INI_WriteInt(File,"Drzava",0);
INI_WriteInt(File,"BorbeniStil",0);
INI_WriteInt(File,"Tutorial",0);
INI_WriteInt(File,"Minute",0);
INI_WriteInt(File,"Online",0);
INI_WriteInt(File,"Respekti",0);
INI_WriteInt(File,"Sat",0);
INI_WriteInt(File,"VrstaSata",0);
INI_Close(File);
TogglePlayerSpectating(playerid, 1);
ShowPlayerDialog(playerid,3,DIALOG_STYLE_LIST,"Koji ste spol?","Musko\nZensko","Uredu","Odustani");
}
}
case 1:
{
if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
}
else
{
SendClientMessage(playerid, CRVENA, "Izbaceni ste");
SendClientMessage(playerid, CRVENA, "{FFFFFF}Razlog: Pogresna Lozinka!");
Kick(playerid);
}
return 1;
}
}
}
Neke slike/video za lakse dobivanje pomoci(neobavezno): http://balkan-samp.com/forum/index.php?topic=37182.0
Staviš ovo INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
Pod OnPlayerConnect
ja misli da je kriv ovaj dio!
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
}
Pa to staviš u OnPlayerConnect napisao sam ti , a tu staviš da mu postavi neku varijablu npr gPlayerLogged na 1 , da ga spawna , postavi score itd.
Pa ima to pod onplaye connect
if(fexist(UserPath(playerid)))
{
for(new i =0; i<=20; i++) SendClientMessage(playerid, 0xFFFFFFFF, " ");
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD,"Prijava", "{0000FF}__________________________________________\n\n{FFFFFF}Dobrodosao na "Server_Name"\n\n{00FF00}Tvoj account je pronadjen!\n\n{FFFFFF}Molimo upisi svoju lozinku kako bi usao na server:\n{0000FF}__________________________________________","Prijava","Odustani");
GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
}
else
{
for(new i =0; i<=20; i++) SendClientMessage(playerid, 0xFFFFFFFF, " ");
TogglePlayerSpectating(playerid, 1);
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT,"Registracija", "{0000FF}__________________________________________\n\n{FFFFFF}Dobrodosao na "Server_Name"\n\n{FF00FF}Tvoj account nije pronadjen!\n\n{FFFFFF}Molimo upisi zeljenu lozinku:\n{0000FF}__________________________________________","Registracija","Odustani");
}
Pa stavi neku varijablu ako je ulogiran i onda pod OnPlayerDisconnect staviš if(varijabla[playerid] == 1) { // dalje za spremanje
Ovako će mu se spremati bez obzira ulogiran ili ne.