Skripta koju koristim: Radim svoju skriptu
Detaljan opis problema: Kada se registriram prvi puta, Y_ini spremi sve u scriptfiles normalno, ali kada se loginam par puta, onda mi odredene linije kopira vise puta u taj isti scriptfile
Dio skripte: PWN
Neke slike/video za lakse dobivanje pomoci(neobavezno): http://imgur.com/a/dNlPd
[POMOC] Y_ini mi kreira dosta crta u scriptfiles
525
pregleda
3
postova
26. Maj 2017.
26. Maj 2017.
enum pInfo
{
pSifra,
pNovac,
pBanka,
pLevel,
pAdmin,
pLider,
pMember,
pRank,
pDozvolaA,
pDozvolaB,
pDozvolaL,
pDozvolaO,
pSpol,
pDrzava,
pDonator,
pSkin,
pGodine,
pTutorialMisija
};
new PlayerInfo;
forward LoadUser_data(playerid,name[],value[]);
public LoadUser_data(playerid,name[],value[])
{
INI_Int("Sifra",PlayerInfo);
INI_Int("Novac",PlayerInfo);
INI_Int("Banka",PlayerInfo);
INI_Int("Level",PlayerInfo);
INI_Int("Admin",PlayerInfo);
INI_Int("Lider",PlayerInfo);
INI_Int("Member",PlayerInfo);
INI_Int("Rank",PlayerInfo);
INI_Int("Dozvola za auto",PlayerInfo);
INI_Int("Dozvola za brod",PlayerInfo);
INI_Int("Dozvola za avion",PlayerInfo);
INI_Int("Dozvola za oružje",PlayerInfo);
INI_Int("Spol",PlayerInfo);
INI_Int("Drzava",PlayerInfo);
INI_Int("Donator",PlayerInfo);
INI_Int("Skin",PlayerInfo);
INI_Int("Godine",PlayerInfo);
INI_Int("Tutorial Misija",PlayerInfo);
return 1;
}
stock UserPath(playerid)
{
new string,playername;
GetPlayerName(playerid,playername,sizeof(playername));
format(string,sizeof(string),PATH,playername);
return string;
}
public OnPlayerConnect(playerid)
{
if(fexist(UserPath(playerid)))
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Molimo upišite šifru kako bi se prijavili na server","Login","Izlaz");
}
else
{
ShowPlayerDialog(playerid, DIALOG_SIFRA, DIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Molimo upiÅ¡ite Å¡ifru kako bi registrirali korisniÄki raÄun","Register","Quit");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Sifra",PlayerInfo);
INI_WriteInt(File,"Novac",GetPlayerMoney(playerid));
INI_WriteInt(File,"Banka",PlayerInfo);
INI_WriteInt(File,"Level",PlayerInfo);
INI_WriteInt(File,"Admin",PlayerInfo);
INI_WriteInt(File,"Lider",PlayerInfo);
INI_WriteInt(File,"Member",PlayerInfo);
INI_WriteInt(File,"Rank",PlayerInfo);
INI_WriteInt(File,"Dozvola za auto",PlayerInfo);
INI_WriteInt(File,"Dozvola za brod",PlayerInfo);
INI_WriteInt(File,"Dozvola za avion",PlayerInfo);
INI_WriteInt(File,"Dozvola za oruzje",PlayerInfo);
INI_WriteInt(File,"Spol",PlayerInfo);
INI_WriteInt(File,"Drzava",PlayerInfo);
INI_WriteInt(File,"Donator",PlayerInfo);
INI_WriteInt(File,"Skin",PlayerInfo);
INI_WriteInt(File,"Godine",PlayerInfo);
INI_WriteInt(File,"Tutorial Misija",PlayerInfo);
INI_Close(File);
return 1;
}
if(dialogid == DIALOG_SIFRA)
{
if (!response) return Kick(playerid);
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_SIFRA, DIALOG_STYLE_INPUT, ""COL_WHITE"Registering...",""COL_RED"You have entered an invalid password.\n"COL_WHITE"Type your password below to register a new account.","Register","Quit");
PlayerInfo = udb_hash(inputtext);
ShowPlayerDialog(playerid, DIALOG_SPOL, DIALOG_STYLE_LIST, "Jeste li muško ili žensko?", "Muško\nŽensko", "Dalje", "Napusti");
}
}
if(dialogid == DIALOG_SPOL)
{
if(response) // If they clicked 'Select' or double-clicked a weapon
{
switch(listitem)// Checking which listitem was selected
{
case 0:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 1;
ShowPlayerDialog(playerid, DIALOG_GODINE, DIALOG_STYLE_INPUT,""COL_WHITE"Godine",""COL_RED"Upisite koliko imate godina\n"COL_WHITE"Aha.","Login","Quit");
}
case 1:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 2;
ShowPlayerDialog(playerid, DIALOG_GODINE, DIALOG_STYLE_INPUT,""COL_WHITE"Godine",""COL_RED"Upisite koliko imate godina\n"COL_WHITE"Aha.","Login","Quit");
}
}
}
return 1;
}
if(dialogid == DIALOG_GODINE)
{
if( response )
{
new godine;
godine = strval(inputtext);
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = godine;
ShowPlayerDialog(playerid, DIALOG_DRZAVA, DIALOG_STYLE_LIST, "Odakle nam dolazite?", "Hrvatska\nBosna i Hercegovina\nSrbija\nCrna Gora\nSlovenija\nAlbanija\nOstale države", "Dalje", "Napusti");
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"You have entered an incorrect password.\n"COL_WHITE"Type your password below to login.","Login","Quit");
}
return 1;
}
if(dialogid == DIALOG_DRZAVA)
{
if(response) // If they clicked 'Select' or double-clicked a weapon
{
switch(listitem)// Checking which listitem was selected
{
case 0:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 1;
SpawnPlayer(playerid);
PlayerInfo = 1;
}
case 1:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 2;
SpawnPlayer(playerid);
PlayerInfo = 1;
}
case 2:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 3;
SpawnPlayer(playerid);
PlayerInfo = 1;
}
case 3:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 4;
SpawnPlayer(playerid);
PlayerInfo = 1;
}
case 4:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 5;
SpawnPlayer(playerid);
PlayerInfo = 1;
}
case 5:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 6;
SpawnPlayer(playerid);
PlayerInfo = 1;
}
case 6:
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
PlayerInfo = 7;
SpawnPlayer(playerid);
PlayerInfo = 1;
}
}
}
return 1;
}
if(dialogid == DIALOG_LOGIN)
{
if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == PlayerInfo)
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
GivePlayerMoney(playerid, PlayerInfo);
ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"You have successfully logged in!","Ok","");
SpawnPlayer(playerid);
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"You have entered an incorrect password.\n"COL_WHITE"Type your password below to login.","Login","Quit");
}
return 1;
}
}
return 0;
}
stock udb_hash(buf[]) {
new length=strlen(buf);
new s1 = 1;
new s2 = 0;
new n;
for (n=0; n {
s1 = (s1 + buf) % 65521;
s2 = (s2 + s1) % 65521;
}
return (s2 << 16) + s1;
} evo tu je sve.. OnPlayerConnect/Disconnect, Login/register sistem...
Morate biti prijavljeni da biste odgovorili na ovu temu.
Prijava
