Evo Citav Register Login Sistem //Definicija#define Korisnici_File "/Korisnici/%s.ini"
enum pInfo
{
pLozinka,
pEmail,
pNovac,
pAdmin,
pPol,
pGodine,
pDrzava,
pSkin,
pLevel,
pRespekti,
pPaytime
};
new PlayerInfo;
//===================================
public OnPlayerConnect(playerid)
{
if(fexist(UserPath(playerid)))
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
new name;
new string;
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"{008CFF}Dobro Dosli na Balkan Life RolePlay\n\n{FFFFFF}• Vase Ime: {008CFF}%s\n\n{FFFFFF}• Forum: {008CFF}www.uskoro-life.info\n\n{FFFFFF}• Nalog: {008CFF}Registrovani ste.\n\n{FFFFFF}Molimo vas unesite vasu {FF0000}lozinku{FFFFFF}.",name);
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"{FFFFFF}BL:RP Prijavljivanje",string,"Prijava","Izlaz");
}
else
{
new name;
new string;
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"{008CFF}Dobro Dosli na Balkan Life RolePlay\n\n{FFFFFF}• Vase Ime: {008CFF}%s\n\n{FFFFFF}• Forum: {008CFF}www.uskoro-life.info\n\n{FFFFFF}• Nalog: {008CFF}Niste registrovani.\n\n{FFFFFF}Molimo vas unesite zeljenu {FF0000}lozinku{FFFFFF}.",name);
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"{FFFFFF}BL:RP Registracija",string,"Registracija","Izlaz");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteString(File,"Email",PlayerInfo);
INI_WriteInt(File,"Novac",GetPlayerMoney(playerid));
INI_WriteInt(File,"AdminLevel",PlayerInfo);
INI_WriteInt(File,"Pol",PlayerInfo);
INI_WriteInt(File,"Godine",PlayerInfo);
INI_WriteInt(File,"Drzava",PlayerInfo);
INI_WriteInt(File,"Skin",PlayerInfo);
INI_WriteInt(File,"Paytime",PlayerInfo);
INI_WriteInt(File,"Respekti",PlayerInfo);
INI_WriteInt(File,"Level",GetPlayerScore(playerid));
INI_Close(File);
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetSpawnInfo(playerid, 0, 60, 816.0443, -1342.2937, 13.5293, 2.4655, 0, 0, 0, 0, 0, 0);// Ovde stavite koordinate svog spawna
SpawnPlayer(playerid);
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
if(!response) return Kick(playerid);
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"{FFFFFF}VL:RP Registracija","{008CFF}Dobro Dosli na Balkan Life RolePlay\n\n{FFFFFF}Lozinka koju ste uneli je {FF0000}nepravilna.\n\n{FFFFFF}Molimo vas unesite zeljenu {FF0000}lozinku{FFFFFF}.","Registracija","Izlaz");
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Lozinka",udb_hash(inputtext));
INI_WriteString(File,"Email",inputtext);
INI_WriteInt(File,"Novac",2000);
INI_WriteInt(File,"AdminLevel",0);
INI_WriteInt(File,"Pol",0);
INI_WriteInt(File,"Godine",0);
INI_WriteInt(File,"Drzava",0);
INI_WriteInt(File,"Skin",60);
INI_WriteInt(File,"Paytime",0);
INI_WriteInt(File,"Respekti",0);
INI_WriteInt(File,"Level",1);
INI_Close(File);
SetSpawnInfo(playerid, 0, 60, 816.0443, -1342.2937, 13.5293, 2.4655, 0, 0, 0, 0, 0, 0);// Ovde stavite koordinate svog spawna
SpawnPlayer(playerid);
ShowPlayerDialog(playerid,3,DIALOG_STYLE_LIST,"{FFFFFF}Da li ste {0008FF}Musko {FFFFFF}ili {FF00F7}Zensko{FFFFFF}?","{0008FF}Musko\n{FF00F7}Zensko","Izaberi","Izlaz");
}
}
if(dialogid == 2)
{
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);
}
else
{
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"{FFFFFF}BL:RP Prijavljivanje","{008CFF}Dobro Dosli na Balkan Life RolePlay\n\n{FFFFFF}Lozinka koju ste uneli je {FF0000}netacna.\n\n{FFFFFF}Molimo vas unesite vasu {FF0000}lozinku{FFFFFF}.","Prijava","Izlaz");
}
return 1;
}
}
if(dialogid == 3)
{
if(response)
{
if(listitem == 0)
{
PlayerInfo = 1;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"________________");
SendClientMessage(playerid,COLOR_LIGHTRED,"Ok,vi ste Musko.");
SendClientMessage(playerid,COLOR_LIGHTRED,"________________");
PlayerInfo = 20;
SetPlayerSkin(playerid, 20);
ShowPlayerDialog(playerid,4,DIALOG_STYLE_INPUT,"{FFFFFF}Koliko imate godina?","{008CFF}Molimo vas upisite koliko imate godina.\n\n{008CFF}Najvise: {FF0000}30.\n{008CFF}Najmanje: {FF0000}10.","Izaberi","Izlaz");
}
if(listitem == 1)
{
PlayerInfo = 2;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"_________________");
SendClientMessage(playerid,COLOR_LIGHTRED,"Ok,vi ste Zensko.");
SendClientMessage(playerid,COLOR_LIGHTRED,"_________________");
PlayerInfo = 91;
SetPlayerSkin(playerid, 91);
ShowPlayerDialog(playerid,4,DIALOG_STYLE_INPUT,"{FFFFFF}Koliko imate godina?","{008CFF}Molimo vas upisite koliko imate godina.\n\n{008CFF}Najvise: {FF0000}30.\n{008CFF}Najmanje: {FF0000}10.","Izaberi","Izlaz");
}
}
}
if(dialogid == 4)
{
if(!response)
{
Kick(playerid);
}
else
{
if(strlen(inputtext))
{
new age = strval(inputtext);
if(age > 30 || age < 10)
{
ShowPlayerDialog(playerid,4,DIALOG_STYLE_INPUT,"{FFFFFF}Koliko imate godina?","{008CFF}Molimo vas upisite koliko imate godina.\n\n{008CFF}Najvise: {FF0000}30.\n{008CFF}Najmanje: {FF0000}10.","Izaberi","Izlaz");
}
else
{
PlayerInfo = age;
new string;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"______________________");
format(string, sizeof(string),"Ok,vi imate %d godine.",age);
SendClientMessage(playerid,COLOR_LIGHTRED,string);
SendClientMessage(playerid,COLOR_LIGHTRED,"______________________");
ShowPlayerDialog(playerid,5,DIALOG_STYLE_LIST,"{FFFFFF}Odakle ste?","{FF0000}Srbija\n{FF0000}Republika Srpska\n{008CFF}Bosna i Hercegovina\n{008CFF}Makedonija\n{FFFFFF}Crna Gora\n{FFFFFF}Hrvatska","Izaberi","Izlaz");
}
}
else
{
return 0;
}
}
}
if(dialogid == 5)
{
if(response)
{
if(listitem == 0)
{
PlayerInfo = 1;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"____________________");
SendClientMessage(playerid,COLOR_LIGHTRED,"Ok,vi ste iz Srbije.");
SendClientMessage(playerid,COLOR_LIGHTRED,"____________________");
ShowPlayerDialog(playerid,6,DIALOG_STYLE_INPUT,"{FFFFFF}Unesite vasu e-mail adresu.","{008CFF}Molimo vas unesite vasu e-mail adresu.\n{FFFFFF}Balkan Life Staff Tim.","Izaberi","Izlaz");
}
if(listitem == 1)
{
PlayerInfo = 2;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"______________________________");
SendClientMessage(playerid,COLOR_LIGHTRED,"Ok,vi ste iz Republika Srpska.");
SendClientMessage(playerid,COLOR_LIGHTRED,"______________________________");
ShowPlayerDialog(playerid,6,DIALOG_STYLE_INPUT,"{FFFFFF}Unesite vasu e-mail adresu.","{008CFF}Molimo vas unesite vasu e-mail adresu.\n{FFFFFF}Balkan Life Staff Tim.","Izaberi","Izlaz");
}
if(listitem == 2)
{
PlayerInfo = 3;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"_________________________________");
SendClientMessage(playerid,COLOR_LIGHTRED,"Ok,vi ste iz Bosna i Hercegovina.");
SendClientMessage(playerid,COLOR_LIGHTRED,"_________________________________");
ShowPlayerDialog(playerid,6,DIALOG_STYLE_INPUT,"{FFFFFF}Unesite vasu e-mail adresu.","{008CFF}Molimo vas unesite vasu e-mail adresu.\n{FFFFFF}Balkan Life Staff Tim.","Izaberi","Izlaz");
}
if(listitem == 3)
{
PlayerInfo = 4;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"________________________");
SendClientMessage(playerid,COLOR_LIGHTRED,"Ok,vi ste iz Makedonije.");
SendClientMessage(playerid,COLOR_LIGHTRED,"________________________");
ShowPlayerDialog(playerid,6,DIALOG_STYLE_INPUT,"{FFFFFF}Unesite vasu e-mail adresu.","{008CFF}Molimo vas unesite vasu e-mail adresu.\n{FFFFFF}Balkan Life Staff Tim.","Izaberi","Izlaz");
}
if(listitem == 4)
{
PlayerInfo = 5;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"_______________________");
SendClientMessage(playerid,COLOR_LIGHTRED,"Ok,vi ste iz Crne Gore.");
SendClientMessage(playerid,COLOR_LIGHTRED,"_______________________");
ShowPlayerDialog(playerid,6,DIALOG_STYLE_INPUT,"{FFFFFF}Unesite vasu e-mail adresu.","{008CFF}Molimo vas unesite vasu e-mail adresu.\n{FFFFFF}Balkan Life Staff Tim.","Izaberi","Izlaz");
}
if(listitem == 5)
{
PlayerInfo = 6;
ClearChatBox(playerid, 5);
SendClientMessage(playerid,COLOR_LIGHTRED,"______________________");
SendClientMessage(playerid,COLOR_LIGHTRED,"Ok,vi ste iz Hrvatske.");
SendClientMessage(playerid,COLOR_LIGHTRED,"______________________");
ShowPlayerDialog(playerid,6,DIALOG_STYLE_INPUT,"{FFFFFF}Unesite vasu e-mail adresu.","{008CFF}Molimo vas unesite vasu e-mail adresu.\n{FFFFFF}Balkan Life Staff Tim.","Izaberi","Izlaz");
}
}
}
if(dialogid == 6)
{
if(strlen(inputtext))
{
if(strfind(inputtext,"@",true) !=-1);
{
new string;
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteString(File,"Email",inputtext);
format(string, sizeof(string),"%s",inputtext);
PlayerInfo = string;
ClearChatBox(playerid, 5);
format(string, sizeof(string),"* Vasa e-mail adresa je: %s",string);
SendClientMessage(playerid,COLOR_WHITE,string);
ClearChatBox(playerid, 5);
INI_Close(File);
}
else
{
ShowPlayerDialog(playerid,6,DIALOG_STYLE_INPUT,"{FFFFFF}Unesite vasu e-mail adresu.","{008CFF}E-mail koji ste uneli je {FF0000}nepravilan.\n\n{008CFF}Primer: |infovilliaro@gmail.com|","Izaberi","Izlaz");
}
}
return 1;
}
public LoadUser_data(playerid,name[],value[])
{
INI_Int("Lozinka",PlayerInfo);
INI_String("Email",PlayerInfo,100);
INI_Int("Novac",PlayerInfo);
INI_Int("AdminLevel",PlayerInfo);
INI_Int("Pol",PlayerInfo);
INI_Int("Godine",PlayerInfo);
INI_Int("Drzava",PlayerInfo);
INI_Int("Skin",PlayerInfo);
INI_Int("Paytime",PlayerInfo);
INI_Int("Respekti",PlayerInfo);
INI_Int("Level",PlayerInfo);
return 1;
}
stock UserPath(playerid)
{
new string,playername;
GetPlayerName(playerid,playername,sizeof(playername));
format(string,sizeof(string),Korisnici_File,playername);
return string;
}
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;
}
stock ClearChatBox(playerid, lines)
{
if(IsPlayerConnected(playerid))
{
for(new i=0; i {
SendClientMessageToAll(COLOR_WHITE,"");
}
}
}