#include <a_samp>
#include <zcmd>
#include <sscanf2>
#include <fixchars.h>
#include <foreach>
#include <dini>
#include <dutils>
#include <dudb>
new file[128];
new Update;
new playerIP[16];
new id;
#pragma unused ret_memcpy
#define DIALOG_REGISTER 10
#define DIALOG_LOGIN 11
#define Red 0xFF0000AA
#define Green 0x00FF00FF
enum Jatekos
{
Ido,
LVL
};
forward UpdateTime(playerid);
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Blank Filterscript by your name here\");
print(\"--------------------------------------\\n\");
SetTimer(\"XP_Level\", 200, 1);
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
public OnPlayerConnect(playerid)
{
new str[1000];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(file, 128, \"Blaise/players/%s.txt\", pName(playerid));
GetPlayerIp(playerid, playerIP, 16);
if(!dini_Exists(file))
{
format(str, 500, \"Üdvözöllek %s \\n\\nKérlek regisztrálj\", pName(playerid));
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, \"Felhasználó Menedzser\", str, \"Regisztráció\", \"Kilépés\");
}
if(dini_Exists(file))
{
if(strcmp(playerIP, dini_Get(file, \"IP\"), true) == 0)
{
dini_Set(file, \"IP\", playerIP);
SetPVarInt(playerid, \"Logged\", 1);
SetPVarInt(playerid, \"VIP\",dini_Int(file,\"VIP\"));
SetPVarInt(playerid, \"LVL\",dini_Int(file,\"LVL\"));
Update = SetTimerEx(\"UpdateTime\", 60*1000, 1, \"i\", playerid);
SendClientMessage(playerid, Green, \"{00FF00}Te regisztrálva vagy ezért autómatikusan bejelentkeztél.\");
}
else
{
format(str, 500, \"Üdvözöllek %s \\n\\nKérlek jelentkezz be a felhasználódba!\", pName(playerid));
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"Felhasználó menedzser\", str, \"Bejelentkezés\", \"Kilépés\");
}
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new name[MAX_PLAYER_NAME];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(file, 128, \"Blaise/players/%s.txt\", pName(playerid));
if(GetPVarInt(playerid, \"Logged\") == 1)
{
dini_IntSet(file, \"VIP\",GetPVarInt(playerid,\"VIP\"));
dini_IntSet(file, \"LVL\",GetPVarInt(playerid,\"LVL\"));
KillTimer(Update);
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
format(file, 500, \"Blaise/players/%s.txt\", pName(playerid));
if(dialogid == DIALOG_REGISTER)
{
if(!response) return Kick(playerid);
if(response)
{
if(strlen(inputtext) == 0)
{
new str[1000];
format(str,500,\"Üdvözöllek {FFFF00}%s a {FF0000}Magyar {FFFFFF}Epic {0000FF}RolePlay Party {FF0000}Szerveren! \\n\\n{00FF00}Kérlek regisztrálj a szerverre!\", pName(playerid));
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, \"Felhasználó menedzser\", str, \"Regisztráció\", \"Kilépés\");
return 0;
}
if(!dini_Exists(file))
{
dini_Create(file);
dini_IntSet(file, \"Jelszó\", udb_hash(inputtext));
dini_IntSet(file, \"VIP\",GetPVarInt(playerid,\"VIP\"));
dini_IntSet(file, \"LVL\",GetPVarInt(playerid,\"LVL\"));
new str[1000];
format(str,500,\"{FF0000}Ez a felhasználó már regisztrálva van \\n\\n\\n{FFFF00}Üdvözöllek %s {FF0000}Magyar {FFFFFF}Epic {0000FF}RolePlay Party {FF0000}Szerveren!\\n\\n {00FF00}Kérlek jelentkezz be a felhasználódba\", pName(playerid));
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"Felhasználó menedzser\", str, \"Bejelentkezés\", \"Kilépés\");
}
}
}
if(dialogid == DIALOG_LOGIN)
{
if(!response) return Kick(playerid);
if(response)
{
if(strlen(inputtext) == 0)
{
new str[1000];
format(str,500,\"Üdvözöllek {FFFF00}%s a {FF0000}Magyar {FFFFFF}Epic {0000FF}RolePlay Party {FF0000}Szerveren! \\n\\n{00FF00}Kérlek, lépj be a felhasználódba\", pName(playerid));
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"Felhasználó menedzser\", str, \"Bejelentkezés\", \"Kilépés\");
return 0;
}
if(fexist(file))
{
new str[1000];
new password = dini_Int(file, \"Jelszó\");
if(udb_hash(inputtext) != password)
{
if(GetPVarInt(playerid, \"Attempts\") == 0)
{
SetPVarInt(playerid, \"Attempts\", 1);
SendClientMessage(playerid, Red, \"Hibás jelszó még 1 próbálkozásod maradt\");
format(str, 128, \"Üdvözöllek %s \\n\\nKérlek lépj be a felhasználódba\", pName(playerid));
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"Felhasználó menedzser\", str, \"Bejelentkezés\", \"Kilépés\");
}
else if(GetPVarInt(playerid, \"Attempts\") == 1)
{
SendClientMessage(playerid, Red, \"Hibás jelszó, nincs már egy próbálkozásod sem.!\");
Kick(playerid);
}
}
else
{
SetPVarInt(playerid, \"Logged\", 1);
SetPVarInt(playerid, \"VIP\",dini_Int(file,\"VIP\"));
SetPVarInt(playerid, \"LVL\",dini_Int(file,\"LVL\"));
Update = SetTimerEx(\"UpdateTime\", 60*1000, 1, \"i\", playerid);
GetPlayerIp(playerid, playerIP, 16);
dini_Set(file, \"IP\", playerIP);
SendClientMessage(playerid, Green, \"{00FF00}Te sikeresen bejelentkeztél.\");
}
}
}
}
return 0;
}
forward Exp_Level();
public Exp_Level()
{
if(GetPlayerScore(id) == 0)
{
SetPVarInt(id, \"LVL\",0);
}
else if(GetPlayerScore(id) >= 1 && GetPlayerScore(id) <= 4999)
{
SetPVarInt(id, \"LVL\",1);
}
else if(GetPlayerScore(id) >= 5000 && GetPlayerScore(id) <= 9999)
{
SetPVarInt(id,\"LVL\",2);
}
else if(GetPlayerScore(id) >= 10000 && GetPlayerScore(id) <= 29999)
{
SetPVarInt(id,\"LVL\",3);
SetPVarInt(id,\"VIP\",1);
GameTextForPlayer(id,\"Sikeresen megkaptad a 1-es V.I.P. Szintet!\",1000,5);
}
else if(GetPlayerScore(id) >= 30000 && GetPlayerScore(id) <= 59999)
{
SetPVarInt(id,\"LVL\",4);
}
else if(GetPlayerScore(id) >= 60000 && GetPlayerScore(id) <= 119999)
{
SetPVarInt(id,\"LVL\",5);
}
else if(GetPlayerScore(id) >= 120000 && GetPlayerScore(id) <= 179999)
{
SetPVarInt(id,\"LVL\",6);
}
else if(GetPlayerScore(id) >= 180000 && GetPlayerScore(id) <= 359999)
{
SetPVarInt(id,\"LVL\",7);
SetPVarInt(id,\"VIP\",2);
GameTextForPlayer(id,\"Sikeresen megkaptad a 2-es V.I.P. Szintet!\",1000,5);
}
else if(GetPlayerScore(id) >= 360000 && GetPlayerScore(id) <= 719999)
{
SetPVarInt(id,\"LVL\",8);
}
else if(GetPlayerScore(id) >= 720000 && GetPlayerScore(id) <= 1439999)
{
SetPVarInt(id,\"LVL\",9);
}
else if(GetPlayerScore(id) >= 1440000 && GetPlayerScore(id) <= 2879999)
{
SetPVarInt(id,\"LVL\",10);
}
else if(GetPlayerScore(id) >= 2880000 && GetPlayerScore(id) <= 5759999)
{
SetPVarInt(id,\"LVL\",11);
}
else if(GetPlayerScore(id) >= 5760000 && GetPlayerScore(id) <= 11520000)
{
SetPVarInt(id,\"LVL\",12);
SetPVarInt(id,\"VIP\",3);
GameTextForPlayer(id,\"Sikeresen megkaptad a 3-as V.I.P. Szintet! Ezzel vége a fejlődésnek! Gratulál hozzá az {FF0000}\'Admin Team\'\",1000,5);
}
return 1;
}
stock pName(playerid) {
new name[24];
GetPlayerName(playerid,name,24);
return name;
}
Ennél mit tudnék csinálni hogy rendesen múködjön?!?! Vmiért Nem adja meg a szintet amit szeretnék pedig minden megvan!
[gmod]Javítottam helyetted a
taget
tagre![/gmod]