#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
#include <dhudmessage>

#pragma tabsize 0

#define PLUGIN "Rankrendszer (HUD + prefix)"
#define VERSION "1.5"
#define AUTHOR "6lmasok,qKKKJ;>, RaZ_HU" ///Szerk:. Jucika

#define ACCESS_LEVEL ADMIN_CHAT
#define ADMIN_LISTEN ADMIN_CHAT
#define VIPJOG ADMIN_LEVEL_D

#define RANK_SILVER 0
#define RANK_SILVER2 1
#define RANK_SILVER3 2
#define RANK_SILVER4 3
#define RANK_SILVERE 4
#define RANK_SILVEREM 5
#define RANK_NOVA 6
#define RANK_NOVA2 7
#define RANK_NOVA3 8
#define RANK_NOVAM 9
#define RANK_AK 10
#define RANK_AK2 11
#define RANK_DAK 12
#define RANK_SHERIFF 13
#define RANK_SAS 14
#define RANK_SASM 15
#define RANK_SUPREME 16
#define RANK_GLOBAL 17
#define RANK_UBER 18

#define MAXRANKS 19

new PREFIX[] = "VIP"

new m4a1[33], ak47[33], awp[33], deagle[33], knife[33]
new g_nev[32], message[192], Temp[192]
static color[10]
new sebesseg_knife
new strName[191]
new strText[191]
new sayText
new teamInfo
new maxPlayers
new PlayerRank[33]
new bool: g_bHud[ 33 ]
new Float:HUD_INTERVAL
new static color[10]

new const RANKS[MAXRANKS][] =
{
"Újonc",
"Amatőr",
"Haladó",
"Tud valamit",
"Tag",
"Gyilkos",
"Vérbeli gyilkos",
"Alázó",
"Profi",
"Őrűlt",
"Kíméletlen",
"Legyőzhetetlen",
"Psychopata",
"Fél Isten",
"Radioaktív állat",
"Mester",
"Őstag",
"Őskövület",
"LEGENDA"
}

#define size 18

new const szamok[size] =
{
150,
300,
450,
550,
700,
800,
1250,
1500,
1700,
1950,
2300,
2550,
2600,
2900,
3300,
3600,
4100,
8000,
}

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
//*EVENT*//
register_event("CurWeapon","fegyver_valtas","be","1=1")

//*PARANCSOK*//
register_clcmd("say /vip", "vip_menu_nyit");
register_clcmd("say_team /vip", "vip_menu_nyit");
register_clcmd("chooseteam", "csapat_valtas");
register_clcmd("say", "chat");

//*CVAROK*//
register_cvar("vip_menu", "1"); //Plugin BE/KI kapcsolĂˇsa
register_cvar("chat_prefix", "2"); //[VIP] Prefix BE/KI kapcsolĂˇsa
register_cvar("granat_adas", "2"); //Minden kĂ¶r elejĂ©n adjon grĂˇnĂˇtokat Igen: 1 / Nem: 2
register_cvar("hp_adas", "15"); //Mennyi HP-t adjon a kĂ¶r elejĂ©n
register_cvar("gyors_kes", "1"); //Gyors kĂ©s BE/KI kapcsolĂˇsa
sebesseg_knife = register_cvar("kes_sebesseg", "345") //KĂ©s sebessĂ©g

//*EGYĂ‰B*//
set_task(120.0, "hirdetes", 0, "", 0, "b", 0)
RegisterHam(Ham_Spawn, "player", "jatekos_spawn", 1)

register_clcmd("say /rang", "hud")
register_clcmd("say rang", "hud")
register_clcmd( "say /rangok", "cmdRangs" );
register_clcmd( "say /hud", "cmdHud" );
register_clcmd ("say", "hook_say")
register_clcmd ("say_team", "hook_say")

register_cvar("sv_rankrendszer","1") // A plugin be- illetve kikapcsolása
register_cvar("sv_rankrendszer_HUD","1") // A HUD-ra való kijelzés be- illetve kikapcsolása
sethudtime()

sayText = get_user_msgid ("SayText")
teamInfo = get_user_msgid ("TeamInfo")
maxPlayers = get_maxplayers()

set_task(160.0, "korUzenet", 0, _, _, "b")

register_message (sayText, "avoid_duplicated")
}
public plugin_precache()
{
//*M4A1 SKINEK*//
precache_model("models/vip_2016/m4a1/v_m4a1_1.mdl");
precache_model("models/vip_2016/m4a1/v_m4a1_2.mdl");
precache_model("models/vip_2016/m4a1/v_m4a1_3.mdl");
precache_model("models/vip_2016/m4a1/v_m4a1_4.mdl");
precache_model("models/vip_2016/m4a1/v_m4a1_5.mdl");
//*AK47 SKINEK*//
precache_model("models/vip_2016/ak47/v_ak47_1.mdl");
precache_model("models/vip_2016/ak47/v_ak47_2.mdl");
precache_model("models/vip_2016/ak47/v_ak47_3.mdl");
precache_model("models/vip_2016/ak47/v_ak47_4.mdl");
precache_model("models/vip_2016/ak47/v_ak47_5.mdl");
//*AWP SKINEK*//
precache_model("models/vip_2016/awp/v_awp_1.mdl");
precache_model("models/vip_2016/awp/v_awp_2.mdl");
precache_model("models/vip_2016/awp/v_awp_3.mdl");
precache_model("models/vip_2016/awp/v_awp_4.mdl");
precache_model("models/vip_2016/awp/v_awp_5.mdl");
//*DEAGLE SKINEK*//
precache_model("models/vip_2016/deagle/v_deagle_1.mdl");
precache_model("models/vip_2016/deagle/v_deagle_2.mdl");
precache_model("models/vip_2016/deagle/v_deagle_3.mdl");
precache_model("models/vip_2016/deagle/v_deagle_4.mdl");
precache_model("models/vip_2016/deagle/v_deagle_5.mdl");
//*KĂ‰S SKINEK*//
precache_model("models/vip_2016/knife/v_knife_1.mdl");
precache_model("models/vip_2016/knife/v_knife_2.mdl");
precache_model("models/vip_2016/knife/v_knife_3.mdl");
precache_model("models/vip_2016/knife/v_knife_4.mdl");
precache_model("models/vip_2016/knife/v_knife_5.mdl");
//*KINĂ‰ZETEK*//
precache_model("models/player/james_bond/james_bond.mdl");
precache_model("models/player/barack_obama/barack_obama.mdl");
precache_model("models/player/batman/batman.mdl");
precache_model("models/player/ironman/ironman.mdl");
precache_model("models/player/spiderman/spiderman.mdl");
precache_model("models/player/assasin/assasin.mdl");
}
public fegyver_valtas(id)
{
new fegyver = get_user_weapon(id)

if(m4a1[id] == 1 && fegyver == CSW_M4A1)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/m4a1/v_m4a1_1.mdl")
}
else if(m4a1[id] == 2 && fegyver == CSW_M4A1)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/m4a1/v_m4a1_2.mdl")
}
else if(m4a1[id] == 3 && fegyver == CSW_M4A1)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/m4a1/v_m4a1_3.mdl")
}
else if(m4a1[id] == 4 && fegyver == CSW_M4A1)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/m4a1/v_m4a1_4.mdl")
}
else if(m4a1[id] == 5 && fegyver == CSW_M4A1)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/m4a1/v_m4a1_5.mdl")
}
else if(ak47[id] == 1 && fegyver == CSW_AK47)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/ak47/v_ak47_1.mdl")
}
else if(ak47[id] == 2 && fegyver == CSW_AK47)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/ak47/v_ak47_2.mdl")
}
else if(ak47[id] == 3 && fegyver == CSW_AK47)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/ak47/v_ak47_3.mdl")
}
else if(ak47[id] == 4 && fegyver == CSW_AK47)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/ak47/v_ak47_4.mdl")
}
else if(ak47[id] == 5 && fegyver == CSW_AK47)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/ak47/v_ak47_5.mdl")
}
else if(awp[id] == 1 && fegyver == CSW_AWP)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/awp/v_awp_1.mdl")
}
else if(awp[id] == 2 && fegyver == CSW_AWP)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/awp/v_awp_2.mdl")
}
else if(awp[id] == 3 && fegyver == CSW_AWP)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/awp/v_awp_3.mdl")
}
else if(awp[id] == 4 && fegyver == CSW_AWP)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/awp/v_awp_4.mdl")
}
else if(awp[id] == 5 && fegyver == CSW_AWP)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/awp/v_awp_5.mdl")
}
else if(deagle[id] == 1 && fegyver == CSW_DEAGLE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/deagle/v_deagle_1.mdl")
}
else if(deagle[id] == 2 && fegyver == CSW_DEAGLE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/deagle/v_deagle_2.mdl")
}
else if(deagle[id] == 3 && fegyver == CSW_DEAGLE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/deagle/v_deagle_3.mdl")
}
else if(deagle[id] == 4 && fegyver == CSW_DEAGLE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/deagle/v_deagle_4.mdl")
}
else if(deagle[id] == 5 && fegyver == CSW_DEAGLE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/deagle/v_deagle_5.mdl")
}
else if(knife[id] == 1 && fegyver == CSW_KNIFE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/knife/v_knife_1.mdl")
}
else if(knife[id] == 2 && fegyver == CSW_KNIFE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/knife/v_knife_2.mdl")
}
else if(knife[id] == 3 && fegyver == CSW_KNIFE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/knife/v_knife_3.mdl")
}
else if(knife[id] == 4 && fegyver == CSW_KNIFE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/knife/v_knife_4.mdl")
}
else if(knife[id] == 5 && fegyver == CSW_KNIFE)
{
	set_pev(id, pev_viewmodel2, "models/vip_2016/knife/v_knife_5.mdl")
}
if(get_cvar_num("gyors_kes") == 1 && get_cvar_num("vip_menu") == 1 && get_user_flags(id) & VIPJOG)
{
	if(fegyver == CSW_KNIFE)
	{
		new Float: sebesseg = get_pcvar_float(sebesseg_knife)
		set_user_maxspeed(id, sebesseg)
	}
}
}
public csapat_valtas(id)
{
cs_reset_user_model(id)
}
public vip_menu_nyit(id)
{
if(get_cvar_num("vip_menu") == 1 && get_user_flags(id) & VIPJOG)
{
	new menu = menu_create("\wV\d.\yI\d.\rP  \d|  \wFő Menü^n\yby \rKoKo", "vip_menu_handler")
	
	menu_additem(menu, "Fegyver Skinek", "0")
	menu_additem(menu, "Kinézet Választás", "1")
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
	menu_setprop(menu, MPROP_BACKNAME, "Vissza")
	menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
	menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
	menu_display(id, menu, 0)
}
else
{
	ChatColor(id, "^4[%s] ^1Sajnálom, nem tudod megnyitni a ^3VIP Menü^1-t, mert nem vagy ^4VIP^1!", PREFIX)
}
}
public vip_menu_handler(id, menu, item)
{
if(item == MENU_EXIT) 
{ 
	menu_destroy(menu) 
	return PLUGIN_HANDLED; 
}

new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);

switch(key)
{
	case 0:
	{
		fegyver_skinek_menu(id)
	}
	case 1:
	{
		kinezet_valasztas_menu(id)
	}
}
return PLUGIN_HANDLED;
}
public fegyver_skinek_menu(id)
{
new menu = menu_create("\wV\d.\yI\d.\rP  \d|  \wFegyver Skinek", "fegyver_skin_menu_handler")

menu_additem(menu, "\yM4A1 \wSkinek", "0")
menu_additem(menu, "\yAK47 \wSkinek", "1")
menu_additem(menu, "\yAWP \wSkinek", "2")
menu_additem(menu, "\yDEAGLE \wSkinek", "3")
menu_additem(menu, "\yKÉS \wSkinek", "4")

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_BACKNAME, "Vissza")
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public fegyver_skin_menu_handler(id, menu, item)
{
if(item == MENU_EXIT) 
{ 
	menu_destroy(menu) 
	return PLUGIN_HANDLED; 
}

new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);

switch(key)
{
	case 0:
	{
		m4a1_skin_menu(id)
	}
	case 1:
	{
		ak47_skin_menu(id)
	}
	case 2:
	{
		awp_skin_menu(id)
	}
	case 3:
	{
		deagle_skin_menu(id)
	}
	case 4:
	{
		knife_skin_menu(id)
	}
}
return PLUGIN_HANDLED;
}
public m4a1_skin_menu(id)
{
new menu = menu_create("\wV\d.\yI\d.\rP  \d|  \wM4A1 Skinek", "m4a1_skinek_menu_handler")

menu_additem(menu, "GreenLine | M4A1", "0")
menu_additem(menu, "Camo | M4A1", "1")
menu_additem(menu, "Asiimov | M4A4", "2")
menu_additem(menu, "Arany | M4A1", "3")
menu_additem(menu, "Epic | M4A1", "4")

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_BACKNAME, "Vissza")
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public m4a1_skinek_menu_handler(id, menu, item)
{
if(item == MENU_EXIT) 
{ 
	menu_destroy(menu) 
	return PLUGIN_HANDLED; 
}

new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);

switch(key)
{
	case 0:
	{
		m4a1[id] = 1;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3GreenLine | M4A1^1-et!", PREFIX);
	}
	case 1:
	{
		m4a1[id] = 2;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Camo | M4A1^1-et!", PREFIX);
	}
	case 2:
	{
		m4a1[id] = 3;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Asiimov | M4A1^1-et!", PREFIX);
	}
	case 3:
	{
		m4a1[id] = 4;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Arany | M4A1^1-et!", PREFIX);
	}
	case 4:
	{
		m4a1[id] = 5;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Epic | M4A1^1-et!", PREFIX);
	}
}
fegyver_skinek_menu(id)
return PLUGIN_HANDLED;
}
public ak47_skin_menu(id)
{
new menu = menu_create("\wV\d.\yI\d.\rP  \d|  \wAK47 Skinek", "ak47_skinek_menu_handler")

menu_additem(menu, "Asiimov | Ak47", "0")
menu_additem(menu, "Arany | Ak47", "1")
menu_additem(menu, "Aquamarine | Ak47", "2")
menu_additem(menu, "Blood Beast | Ak47", "3")
menu_additem(menu, "Vulcan | Ak47", "4")

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_BACKNAME, "Vissza")
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public ak47_skinek_menu_handler(id, menu, item)
{
if(item == MENU_EXIT) 
{ 
	menu_destroy(menu) 
	return PLUGIN_HANDLED; 
}

new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);

switch(key)
{
	case 0:
	{
		ak47[id] = 1;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Asiimov | Ak47^1-et!", PREFIX);
	}
	case 1:
	{
		ak47[id] = 2;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Arany | Ak47^1-et!", PREFIX);
	}
	case 2:
	{
		ak47[id] = 3;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Aquamarine | Ak47^1-et!", PREFIX);
	}
	case 3:
	{
		ak47[id] = 4;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Blood Beast | Ak47^1-et!", PREFIX);
	}
	case 4:
	{
		ak47[id] = 5;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Vulcan | Ak47^1-et!", PREFIX);
	}
}
fegyver_skinek_menu(id)
return PLUGIN_HANDLED;
}
public awp_skin_menu(id)
{
new menu = menu_create("\wV\d.\yI\d.\rP  \d|  \wAWP Skinek", "awp_skinek_menu_handler")

menu_additem(menu, "Asiimov | AWP", "0")
menu_additem(menu, "Dragon Lore | AWP", "1")
menu_additem(menu, "Hyper Beast | AWP", "2")
menu_additem(menu, "Elf Ranger | AWP", "3")
menu_additem(menu, "Hawking | AWP", "4")

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_BACKNAME, "Vissza")
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public awp_skinek_menu_handler(id, menu, item)
{
if(item == MENU_EXIT) 
{ 
	menu_destroy(menu) 
	return PLUGIN_HANDLED; 
}

new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);

switch(key)
{
	case 0:
	{
		awp[id] = 1;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Asiimov | AWP^1-t!", PREFIX);
	}
	case 1:
	{
		awp[id] = 2;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Dragon Lore | AWP^1-t!", PREFIX);
	}
	case 2:
	{
		awp[id] = 3;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Hyper Beast | AWP^1-t!", PREFIX);
	}
	case 3:
	{
		awp[id] = 4;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Elf Ranger | AWP^1-t!", PREFIX);
	}
	case 4:
	{
		awp[id] = 5;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Hawking | AWP^1-t!", PREFIX);
	}
}
fegyver_skinek_menu(id)
return PLUGIN_HANDLED;
}
public deagle_skin_menu(id)
{
new menu = menu_create("\wV\d.\yI\d.\rP  \d|  \wDEAGLE Skinek", "deagle_skinek_menu_handler")

menu_additem(menu, "Asiimov | Deagle", "0")
menu_additem(menu, "Hawk | Deagle", "1")
menu_additem(menu, "Snake | Deagle", "2")
menu_additem(menu, "Asking | Deagle", "3")
menu_additem(menu, "Fire | Deagle", "4")

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_BACKNAME, "Vissza")
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public deagle_skinek_menu_handler(id, menu, item)
{
if(item == MENU_EXIT) 
{ 
	menu_destroy(menu) 
	return PLUGIN_HANDLED; 
}

new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);

switch(key)
{
	case 0:
	{
		deagle[id] = 1;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Asiimov | Deagle^1-t!", PREFIX);
	}
	case 1:
	{
		deagle[id] = 2;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Hawk | Deagle^1-t!", PREFIX);
	}
	case 2:
	{
		deagle[id] = 3;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Snake | Deagle^1-t!", PREFIX);
	}
	case 3:
	{
		deagle[id] = 4;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Asking | Deagle^1-t!", PREFIX);
	}
	case 4:
	{
		deagle[id] = 5;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Fire | Deagle^1-t!", PREFIX);
	}
}
fegyver_skinek_menu(id)
return PLUGIN_HANDLED;
}
public knife_skin_menu(id)
{
new menu = menu_create("\wV\d.\yI\d.\rP  \d|  \wKÉS Skinek", "knife_skinek_menu_handler")

menu_additem(menu, "Bayonet | Knife", "0")
menu_additem(menu, "Karambit | Knife", "1")
menu_additem(menu, "Hungary | Knife", "2")
menu_additem(menu, "Asiimov Butterfly | Knife", "3")
menu_additem(menu, "SpongeBob | Knife", "4")

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_BACKNAME, "Vissza")
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public knife_skinek_menu_handler(id, menu, item)
{
if(item == MENU_EXIT) 
{ 
	menu_destroy(menu) 
	return PLUGIN_HANDLED; 
}

new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);

switch(key)
{
	case 0:
	{
		knife[id] = 1;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Bayonet | Knife^1-t!", PREFIX);
	}
	case 1:
	{
		knife[id] = 2;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Karambit | Knife^1-t!", PREFIX);
	}
	case 2:
	{
		knife[id] = 3;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Hungary | Knife^1-t!", PREFIX);
	}
	case 3:
	{
		knife[id] = 4;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Asiimov Butterfly | Knife^1-t!", PREFIX);
	}
	case 4:
	{
		knife[id] = 5;
		ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3SpongeBob | Knife^1-t!", PREFIX);
	}
}
fegyver_skinek_menu(id)
return PLUGIN_HANDLED;
}
public kinezet_valasztas_menu(id)
{
new menu = menu_create("\wV\d.\yI\d.\rP  \d|  \wKINÉZETEK", "kinezet_valasztas_menu_handler")

menu_additem(menu, "Vasember \r[T]", "0")
menu_additem(menu, "Pókember \r[T]", "1")
menu_additem(menu, "Assasin \r[T]", "2")
menu_additem(menu, "James Bond \r[CT]", "3")
menu_additem(menu, "Batman \r[CT]", "4")
menu_additem(menu, "Barack Obama \r[CT]", "5")

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_BACKNAME, "Vissza")
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public kinezet_valasztas_menu_handler(id, menu, item)
{
if(item == MENU_EXIT) 
{ 
	menu_destroy(menu) 
	return PLUGIN_HANDLED; 
}

new data[6], szName[64];
new access, callback;
new CsTeams:csapat = cs_get_user_team(id)
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);

switch(key)
{
	case 0:
	{
		if(csapat == CS_TEAM_T)
		{
			cs_set_user_model(id, "ironman");
			ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Vasember ^1kinézetet!", PREFIX);
		}
		else
		{
			ChatColor(id, "^4[%s] ^1Sajnálom, nem tudod kiválasztani a ^3Vasember ^1skint, mert nem vagy ^3Terrorista^1!", PREFIX);
		}
	}
	case 1:
	{
		if(csapat == CS_TEAM_T)
		{
			cs_set_user_model(id, "spiderman");
			ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Pókember ^1kinézetet!", PREFIX);
		}
		else
		{
			ChatColor(id, "^4[%s] ^1Sajnálom, nem tudod kiválasztani a ^3Pókember ^1skint, mert nem vagy ^3Terrorista^1!", PREFIX);
		}
	}
	case 2:
	{
		if(csapat == CS_TEAM_T)
		{
			cs_set_user_model(id, "assasin");
			ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad az ^3Assasin ^1kinézetet!", PREFIX);
		}
		else
		{
			ChatColor(id, "^4[%s] ^1Sajnálom, nem tudod kiválasztani az ^3Assasin ^1skint, mert nem vagy ^3Terrorista^1!", PREFIX);
		}
	}
	case 3:
	{
		if(csapat == CS_TEAM_CT)
		{
			cs_set_user_model(id, "james_bond");
			ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3James Bond ^1kinézetet!", PREFIX);
		}
		else
		{
			ChatColor(id, "^4[%s] ^1Sajnálom, nem tudod kiválasztani a ^3James Bond ^1skint, mert nem vagy ^3Anti-Terrorista^1!", PREFIX);
		}
	}
	case 4:
	{
		if(csapat == CS_TEAM_CT)
		{
			cs_set_user_model(id, "batman");
			ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Batman ^1kinézetet!", PREFIX);
		}
		else
		{
			ChatColor(id, "^4[%s] ^1Sajnálom, nem tudod kiválasztani a ^3Batman ^1skint, mert nem vagy ^3Anti-Terrorista^1!", PREFIX);
		}
	}
	case 5:
	{
		if(csapat == CS_TEAM_CT)
		{
			cs_set_user_model(id, "barack_obama");
			ChatColor(id, "^4[%s] ^1Sikeresen kiválasztottad a ^3Barack Obama ^1kinézetet!", PREFIX);
		}
		else
		{
			ChatColor(id, "^4[%s] ^1Sajnálom, nem tudod kiválasztani a ^3Barack Obama ^1skint, mert nem vagy ^3Anti-Terrorista^1!", PREFIX);
		}
	}
}
vip_menu_nyit(id)
return PLUGIN_HANDLED;
}
public client_putinserver(id)
{
set_task(3.0, "udvozlo_uzenet", id)
}
public client_disconnect(id)
{
set_task(1.0, "kilepo_uzenet", id)
}
public hirdetes(id)
{
if(get_cvar_num("vip_menu") == 1)
{
	ChatColor(id, "^4[%s] ^1Ha ^3VIP ^1tagsággal rendelkezel, akkor ^4VIP ^1Menü elérése: ^4/vip", PREFIX)
}
}
public udvozlo_uzenet(id)
{
if(get_cvar_num("vip_menu") == 1 && get_user_flags(id) & VIPJOG)
{
	get_user_name(id, g_nev, 31)
	
	set_dhudmessage(random(255), random(255), random(255), -1.0, 0.29, 0, 6.0, 5.0)
	show_dhudmessage(id, "Üdvözöllek a szerveren VIP: %s^nJó játékot kívánunk!", g_nev)
	
	ChatColor(0, "^4[%s] ^3VIP ^1csatlakozott: ^3%s", PREFIX, g_nev)
}
}
public kilepo_uzenet(id)
{
if(get_cvar_num("vip_menu") == 1 && get_user_flags(id) & VIPJOG)
{
	get_user_name(id, g_nev, 31)
	ChatColor(0, "^4[%s] ^3VIP ^1tag ^4%s ^1lecsatlakozott.", PREFIX, g_nev)
}
}
public jatekos_spawn(id)
{
if(!is_user_alive(id))
{
	return PLUGIN_HANDLED;
}
if(get_cvar_num("vip_menu") == 1 && get_cvar_num("granat_adas") == 1 && get_user_flags(id) & VIPJOG)
{
	give_item(id, "weapon_hegrenade")
	give_item(id, "weapon_flashbang")
	give_item(id, "weapon_flashbang")
	give_item(id, "item_assaultsuit")
}
if(get_cvar_num("vip_menu") == 1 && get_user_flags(id) & VIPJOG)
{
	set_user_health(id, get_user_health(id) + get_cvar_num("hp_adas"))
}
return PLUGIN_HANDLED;
}
stock ChatColor(const id, const szMessage[], any:...) 
{
static pnum, players[32], szMsg[190], IdMsg 
vformat(szMsg, charsmax(szMsg), szMessage, 3)

if(!IdMsg) IdMsg = get_user_msgid("SayText")

if(id) 
{ 
	if(!is_user_connected(id)) return
	players[0] = id
	pnum = 1 
} 
else get_players(players, pnum, "c")

for(new i; i < pnum; i++) 
{
	message_begin(MSG_ONE, IdMsg, .player = players[i])
	write_byte(players[i])
	write_string(szMsg)
	message_end()
}
}

public cmdRangs( iPlayerId )
{
static iLen = 0, sMotd[ 2048 ], iMotdLen = charsmax( sMotd );

iLen = formatex( sMotd, iMotdLen, "<meta charset=utf-8><style>table{color:#FFB000;} td,th{border:1px solid #666;text-align:center;}</style><body bgcolor=#000000><center><table width='400'><tr><th>Rang</th><th>Ölés</th><tr>" );
iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>0</td><tr>", RANKS[ 0 ] );

for ( new i; i < size; ++i )
iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>%d</td><tr>", RANKS[ i + 1 ], szamok[ i ] );

show_motd( iPlayerId, sMotd, "Rangrendszer infó" );
}

public cmdHud( iPlayerId )
{
ColorChat( iPlayerId, "^1A hud kijelző ^3%skapcsolva^1!", ( g_bHud[ iPlayerId ] ^= true ) ? "be" : "ki" );

if ( !g_bHud[ iPlayerId ] ) remove_task( iPlayerId );
else { if ( !task_exists( iPlayerId ) ) set_task( HUD_INTERVAL, "setDisplay", iPlayerId ); }
}

public sethudtime()
{
new refreshtime = register_cvar("sv_rankrendszer_HUDtime","0.9") // A HUD-ra való kijelzés frissítési ideje másodpercben
if (refreshtime == 0.9)
{
	HUD_INTERVAL = 0.9
}
else if (refreshtime != 0.9)
{
	HUD_INTERVAL = get_pcvar_float(refreshtime)
}

return PLUGIN_CONTINUE
}

public avoid_duplicated (msgId, msgDest, receiver)
{
return PLUGIN_HANDLED
}

public korUzenet()
{
ColorChat( 0, "^3Írd be ^4/rang ^3vagy ^4rang ^3hogy megnézd hány ölés kell a következő ranghoz.")
return PLUGIN_HANDLED;
}

public hud(id)
{
new stats[8]
new bodyhits[8]
get_user_stats(id, stats, bodyhits)

ColorChat( id, "^4Rangod: ^3%s ^1| ^4Ölések: ^3%d",RANKS[PlayerRank[id]], stats[0])

if(PlayerRank[id] == MAXRANKS-1)
{
	//client_print(id, print_chat, "^4Rangod: ^3%s ^1| ^4Ölések: ^3%d ^n^4A következő szinthez kell még: ^3%d",RANKS[PlayerRank[id]], stats[0],szamok[PlayerRank[id]]-stats[0])
	ColorChat( id, "^4Már elérted a legnagyobb ^4rangot.")
}
else
{
	//client_print(id, print_chat, "^4Rangod: ^3%s ^1| ^4Ölések: ^3%d ^n^4Már elérted a legnagyobb rangot.",RANKS[PlayerRank[id]], stats[0])
	ColorChat( id, "^4Következő rang: ^3%s ^1| ^4A következő szinthez kell még: ^3%d",RANKS[PlayerRank[id]+1], szamok[PlayerRank[id]]-stats[0])
}
}

public hook_say(id)
{
read_args (message, 191)
remove_quotes (message)

if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
	return PLUGIN_CONTINUE
	
	new name[32]
	get_user_name (id, name, 31)
	
	new isAlive, alive[32]
	
	if (is_user_alive (id))
	{
		isAlive = 1
		alive = ""
	}
	else
	{
		isAlive = 0
		alive = "^1*Halott* "
	}
	
	//static color[10]
	
	if(get_user_flags(id)&ADMIN_CVAR)
	{
		//get_user_team (id, color, 9)
		getTeam(id)
		format (strName, 191, "%s^4[Tulaj]^4[%s] ^3%s^1:", alive, RANKS[PlayerRank[id]], name)
		format (strText, 191, "^4%s", message)
	}  
	
	else if(get_user_flags(id)&ADMIN_MAP)
	{
		getTeam(id)
		format (strName, 191, "%s^4[Admin][%s] ^3%s^1:", alive, RANKS[PlayerRank[id]], name)
		format (strText, 191, "^4%s", message)
	}    
	
	else if(get_user_flags(id)&ADMIN_MENU)
	{
		getTeam(id)
		format (strName, 191, "%s^4[Vip][%s] ^3%s^1:", alive, RANKS[PlayerRank[id]], name)
		format (strText, 191, "^4%s", message)
	}
	
	else if(get_user_flags(id)&ADMIN_USER)
	{
		getTeam(id)
		format (strName, 191, "%s^4[Játékos][%s] ^3%s^1:",alive, RANKS[PlayerRank[id]], name)
		format (strText, 191, "^1%s", message)
	}
	
	format (message, 191, "%s ^1%s", strName, strText)
	sendMessage (color, isAlive)
	
	return PLUGIN_CONTINUE
}

public hook_teamsay(id)
{
	new playerTeam = get_user_team(id)
	new playerTeamName[19]
	
	switch (playerTeam)
	{
		case 1:
			copy (playerTeamName, 11, "Terrorista")
		
		case 2:
			copy (playerTeamName, 18, "Anti-Terrorista")
		
		default:
		copy (playerTeamName, 9, "Néző")
	}
	
	read_args (message, 191)
	remove_quotes (message)
	
	if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
		return PLUGIN_CONTINUE
	
	new isAlive, alive[32]
	
	if (is_user_alive (id))
	{
		isAlive = 1
		alive = ""
	}
	else
	{
		isAlive = 0
		alive = "^1*Halott* "
	}
	
	new name[32]
	get_user_name (id, name, 31)
	
	//static color[10]
	
	if(get_user_flags(id)&ADMIN_CVAR)
	{
		//get_user_team (id, color, 9)
		getTeam(id)
		format (strName, 191, "%s(%s)^4[Tulaj]^3[%s] ^3%s^1:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
		format (strText, 191, "^4%s", message)
	}  
	
	else if(get_user_flags(id)&ADMIN_MAP)
	{
		getTeam(id)
		format (strName, 191, "%s(%s)^4[Admin][%s] ^3%s^1:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
		format (strText, 191, "^4%s", message)
	}    
	
	else if(get_user_flags(id)&ADMIN_MENU)
	{
		getTeam(id)
		format (strName, 191, "%s(%s)^4[Vip][%s] ^3%s^1:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
		format (strText, 191, "^4%s", message)
	}
	
	else if(get_user_flags(id)&ADMIN_USER)
	{
		getTeam(id)
		format (strName, 191, "%s(%s)^4[Játékos][%s] ^3%s^1:",alive ,playerTeamName, RANKS[PlayerRank[id]], name)
		format (strText, 191, "^1%s", message)
	}
	
	format (message, 191, "%s ^1%s", strName, strText)
	sendTeamMessage (color,isAlive, playerTeam)
	
	return PLUGIN_CONTINUE
}

public sendMessage (color[], alive)
{
	new teamName[10]
	
	for (new player = 1; player < maxPlayers; player++)
	{
		if (!is_user_connected(player))
			continue
		if((alive && is_user_alive(player)) || (!alive && !is_user_alive(player)) || (get_user_flags(player) && ADMIN_LISTEN))
		{
			get_user_team (player, teamName, 9)
			changeTeamInfo (player, color)
			writeMessage (player, message)
			changeTeamInfo (player, teamName)
		}
	}
}

public sendTeamMessage (color[], alive, playerTeam)
{
	new teamName[10]
	
	for (new player = 1; player < maxPlayers; player++)
	{
		if (!is_user_connected(player))
			continue
		
		if (get_user_team(player) == playerTeam || get_user_flags(player) & ADMIN_LISTEN)
		{
			if (alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_user_flags(player) & ADMIN_LISTEN)
			{
				get_user_team (player, teamName, 9)
				changeTeamInfo (player, color)
				writeMessage (player, message)
				changeTeamInfo (player, teamName)
			}
		}
	}
}

public changeTeamInfo (player, team[])
{
	message_begin (MSG_ONE, teamInfo, _, player)  
	write_byte (player)
	write_string (team)
	message_end()  
}

public writeMessage (player, message[])
{
	message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
	write_byte (player)
	write_string (message)
	message_end ()
}

stock bool:is_user_steam(id)
{
	static dp_pointer;
	
	if (dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
	{
		server_cmd("dp_clientinfo %d", id);
		server_exec();
		return (get_pcvar_num(dp_pointer) == 2) ? true : false;
	}
	
	return false;
}

public client_putinserver(id)
{
	if(get_cvar_num("sv_rankrendszer")==0)
	{
		return PLUGIN_HANDLED
	}
	else if (get_cvar_num("sv_rankrendszer")==1 && get_cvar_num("sv_rankrendszer_HUD")==1)
	{
		g_bHud[ id ] = true;
		set_task(HUD_INTERVAL, "setDisplay", id)
	}
	else
	{
		set_task(0.5, "remTask", id)
	}
	
	return PLUGIN_CONTINUE
}

public remTask(id)
{
	remove_task(id, 0)
}

public getTeam(id)
{
	get_user_team (id, color, 9)
}

public setDisplay(id)
{
	if(!is_user_connected(id))
		return PLUGIN_CONTINUE
	
	new stats[8]
	new bodyhits[8]
	get_user_stats(id, stats, bodyhits)
	
	if(stats[0] < 50)
	{
		PlayerRank[id] = RANK_SILVER
	}
	else if(stats[0] >= 50 && stats[0] < 200)
	{
		PlayerRank[id] = RANK_SILVER2
	}
	else if(stats[0] >= 200 && stats[0] < 350)
	{
		PlayerRank[id] = RANK_SILVER3
	}
	else if(stats[0] >= 350 && stats[0] < 450)
	{
		PlayerRank[id] = RANK_SILVER4
	}
	else if(stats[0] >= 450 && stats[0] < 600)
	{
		PlayerRank[id] = RANK_SILVERE
	}
	else if(stats[0] >= 600 && stats[0] < 800)
	{
		PlayerRank[id] = RANK_SILVEREM
	}
	else if(stats[0] >= 800 && stats[0] < 1150)
	{
		PlayerRank[id] = RANK_NOVA
	}
	else if(stats[0] >= 1150&& stats[0] < 1400)
	{
		PlayerRank[id] = RANK_NOVA2
	}
	else if(stats[0] >= 1400 && stats[0] < 1600)
	{
		PlayerRank[id] = RANK_NOVA3
	}
	else if(stats[0] >= 1600 && stats[0] < 1850)
	{
		PlayerRank[id] = RANK_NOVAM
	}
	else if(stats[0] >= 1850 && stats[0] < 2200)
	{
		PlayerRank[id] = RANK_AK
	}
	else if(stats[0] >= 2200 && stats[0] < 2450)
	{
		PlayerRank[id] = RANK_AK2
	}
	else if(stats[0] >= 2450 && stats[0] < 2600)
	{
		PlayerRank[id] = RANK_DAK
	}
	else if(stats[0] >= 2600 && stats[0] < 2800)
	{
		PlayerRank[id] = RANK_SHERIFF
	}
	else if(stats[0] >= 2800 && stats[0] < 3200)
	{
		PlayerRank[id] = RANK_SAS
	}
	else if(stats[0] >= 3200 && stats[0] < 3500)
	{
		PlayerRank[id] = RANK_SASM
	}
	else if(stats[0] >= 3500 && stats[0] < 4000)
	{
		PlayerRank[id] = RANK_SUPREME
	}
	else if(stats[0] >= 4000 && stats[0] < 4500)
	{
		PlayerRank[id] = RANK_GLOBAL
	}
	else if(stats[0] >= 4500)
	{
		PlayerRank[id] = RANK_UBER
	}
	
	set_hudmessage(random(255), random(255), random(255), 0.01, 0.20, 0, 6.0, 1.0, 0.0, 0.0, -1)
	show_hudmessage(id, "[-=FPS=-] ^nÖléseid: %i^nRangod: %s^nParancsok: /rang, /rangok, /hud^nJó Játékot", stats[0], RANKS[PlayerRank[id]])
	//show_hudmessage(id, "%s ^nÖlések: %i ^nRang: %s", name, stats[0], RANKS[PlayerRank[id]])
	
	set_task(HUD_INTERVAL, "setDisplay", id)
	
	return PLUGIN_CONTINUE
}

stock ColorChat(const id, const input[], any:...)
{
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^4"); // Green Color
	replace_all(msg, 190, "!y", "^1"); // Default Color
	replace_all(msg, 190, "!t", "^3"); // Team Color
	
	if (id) players[0] = id; else get_players(players, count, "ch");
{
	for (new i = 0; i < count; i++)
	{
		if (is_user_connected(players[i]))
		{
			message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
			write_byte(players[i]);
			write_string(msg);
			message_end();
		}
	}
}
}
stock print_color(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!t", "^3")
replace_all(msg, 190, "", "á")
replace_all(msg, 190, "", "é")
replace_all(msg, 190, "", "í")
replace_all(msg, 190, "", "ó")
replace_all(msg, 190, "", "ö")
replace_all(msg, 190, "", "ő")
replace_all(msg, 190, "", "ú")
replace_all(msg, 190, "", "ü")
replace_all(msg, 190, "", "ű")
replace_all(msg, 190, "", "Á")
replace_all(msg, 190, "", "É")
replace_all(msg, 190, "", "Í")
replace_all(msg, 190, "", "Ó")
replace_all(msg, 190, "", "Ö")
replace_all(msg, 190, "", "Ő")
replace_all(msg, 190, "", "Ú")
replace_all(msg, 190, "", "Ü")
replace_all(msg, 190, "", "Ű")

}
