#include <amxmodx>
#include <engine>
#include <nvault>
#include <cstrike>
#include <fun>
#include <fakemeta> 
#include <hamsandwich>
#include <colorchat>
 
#define PLUGIN "Kes olesert"
#define VERSION "1.0"
#define AUTHOR "DeRoiD"
 
new oles[33], kes[33], vault
 
new kes1[121]
new kes2[121]
new kes3[121]
new kes4[121]
new kes5[121]
new kes6[121]
new kes7[121]
 
public plugin_precache() {
precache_model("models/HitBoX_Kes_Skin/HitBoX_Kes.mdl")
precache_model("models/hitbox_kesek/v_karambit.mdl")
precache_model("models/hitbox_kesek/v_pointer.mdl")
precache_model("models/hitbox_kesek/v_szines.mdl")
precache_model("models/hitbox_kesek/v_beba.mdl")
precache_model("models/hitbox_kesek/v_cs16.mdl")
precache_model("models/hitbox_kesek/v_bayonett.mdl")
precache_model("models/hitbox_kesek/v_qwerty.mdl")
}
public plugin_init() 
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("DeathMsg","death","a")
register_clcmd("say /kes","menu")
register_clcmd("say /kesek","menu")
register_clcmd("say /knife","menu")
vault = nvault_open("kes_olessert")
register_clcmd("say /add","addolas")
set_task(30.0, "KESmessage", 0, _, _, "b")
register_event("CurWeapon", "ecw", "be", "1=1")
 
}
public ecw(id)
{
	new fegyver = get_user_weapon(id)
	if(kes[id] == 0 && fegyver == CSW_KNIFE)
		set_pev(id, pev_viewmodel2, "models/HitBoX_Kes_Skin/HitBoX_Kes.mdl")
	if(kes[id] == 1 && fegyver == CSW_KNIFE)
		set_pev(id, pev_viewmodel2, "models/hitbox_kesek/v_karambit.mdl")	
	if(kes[id] == 2 && fegyver == CSW_KNIFE)
		set_pev(id, pev_viewmodel2, "models/hitbox_kesek/v_pointer.mdl")
	if(kes[id] == 3 && fegyver == CSW_KNIFE)
		set_pev(id, pev_viewmodel2, "models/hitbox_kesek/v_szines.mdl")
	if(kes[id] == 4 && fegyver == CSW_KNIFE)
		set_pev(id, pev_viewmodel2, "models/hitbox_kesek/v_beba.mdl")
	if(kes[id] == 5 && fegyver == CSW_KNIFE)
		set_pev(id, pev_viewmodel2, "models/hitbox_kesek/v_cs16.mdl")
	if(kes[id] == 6 && fegyver == CSW_KNIFE)
		set_pev(id, pev_viewmodel2, "models/hitbox_kesek/v_bayonett.mdl")
	if(kes[id] == 7 && fegyver == CSW_KNIFE)
		set_pev(id, pev_viewmodel2, "models/hitbox_kesek/v_qwerty.mdl")
}
public death()
{
	new killer = read_data(1)
	new victim = read_data(2)
 
	if(killer == victim)
		return PLUGIN_HANDLED
	oles[killer]++
	return PLUGIN_HANDLED
}
public menu(id) 
{
	new cim[121]
	format(cim, charsmax(cim), "\r[HitBoX] \w|\yKések\w|^n\yÖlések: [\w%d]",oles[id])
 
	new menu = menu_create(cim, "menu_h" )
 
	format(kes1, charsmax(kes1), "\d[HitBoX] Karambit Kés \r[%d/250 Ölés]",oles[id])
	format(kes2, charsmax(kes2), "\d[HitBoX] Pointer Kés \r[%d/500 Ölés]",oles[id])
	format(kes3, charsmax(kes3), "\d[HitBoX] Színes Kés \r[%d/1000 Ölés]",oles[id])
	format(kes4, charsmax(kes4), "\d[HitBoX] Beba Kés \r[%d/2000 Ölés]",oles[id])
	format(kes5, charsmax(kes5), "\d[HitBoX] Counter Strike 1.6 Kés \r[%d/4000 Ölés]",oles[id])
	format(kes6, charsmax(kes6), "\d[HitBoX] Bayonett Kés \r[%d/8000 Ölés]",oles[id])
	format(kes7, charsmax(kes7), "\d[HitBoX] Qwerty Kés \r[%d/10000 Ölés]",oles[id])
 
	menu_additem(menu,"\r[HitBoX] \wAlap Kés\y [Megszerezve]","1",0)  
	if(oles[id] >= 250)
	menu_additem(menu,"\r[HitBoX] \wKarambit Kés\y [Megszerezve]","2",0)
	else
	menu_additem(menu, kes1, "2", 0);
	if(oles[id] >= 500)
	menu_additem(menu,"\r[HitBoX] \wPointer Kés\y [Megszerezve]","3",0)
	else
	menu_additem(menu, kes2, "3", 0);
	if(oles[id] >= 1000)
	menu_additem(menu,"\r[HitBoX] \wSzínes Kés\y [Megszerezve]","4",0)
	else
	menu_additem(menu, kes3, "4", 0);
	if(oles[id] >= 2000)
	menu_additem(menu,"\r[HitBoX] \wBeba Kés\y [Megszerezve]","5",0)
	else
	menu_additem(menu, kes4, "5", 0);
	if(oles[id] >= 4000)
	menu_additem(menu,"\r[HitBoX] \wCounter Strike 1.6 Kés\y [Megszerezve]","6",0)
	else
	menu_additem(menu, kes5, "6", 0);
	if(oles[id] >= 8000)
	menu_additem(menu,"\r[HitBoX] \wBayonett Kés\y [Megszerezve]","7",0)
	else
	menu_additem(menu, kes6, "7", 0);
	if(oles[id] >= 10000)
	menu_additem(menu,"\r[HitBoX] \wQwery Kés\y [Megszerezve]","8",0)
	else
	menu_additem(menu, kes7, "8", 0);
	menu_setprop(menu, MPROP_EXIT, "Kilépés");
	menu_display(id, menu, 0);
}
public menu_h(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	new data[9], 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 1:{
if(oles[id] >= 0)
kes[id] = 0
}
case 2:{
if(oles[id] >= 250)
kes[id] = 1
else
ColorChat(id, BLUE,"^4[HitBoX] ^3» ^1Túl kevés ölésed van!")
}
case 3:{
if(oles[id] >= 500)
kes[id] = 2
else
ColorChat(id, BLUE,"^4[HitBoX] ^3» ^1Túl kevés ölésed van!")
}
case 4:{
if(oles[id] >= 1000)
kes[id] = 3
else
ColorChat(id, BLUE,"^4[HitBoX] ^3» ^1Túl kevés ölésed van!")
}
case 5:{
if(oles[id] >= 2000)
kes[id] = 4
else
ColorChat(id, BLUE,"^4[HitBoX] ^3» ^1Túl kevés ölésed van!")
}
case 6:{
if(oles[id] >= 4000)
kes[id] = 5
else
ColorChat(id, BLUE,"^4[HitBoX] ^3» ^1Túl kevés ölésed van!")  
}
case 7:{
if(oles[id] >= 8000)
kes[id] = 6
else
ColorChat(id, BLUE,"^4[HitBoX] ^3» ^1Túl kevés ölésed van!")
}
case 8:{
if(oles[id] >= 10000)
kes[id] = 7
else
ColorChat(id, BLUE,"^4[HitBoX] ^3» ^1Túl kevés ölésed van!") 
}
}		
	menu_destroy(menu)
	return PLUGIN_HANDLED
}
public mentes(id)
{
	new vaultkey[64],vaultdata[256], name[32]
	get_user_name(id, name, 31)
	format(vaultkey,63,"%s-KES", name)
	format(vaultdata,255,"%i#%i#", oles[id],kes[id])
	nvault_set(vault,vaultkey,vaultdata)
	return PLUGIN_CONTINUE
}
public betoltes(id)
{
	new vaultkey[64],vaultdata[256], name[32]
	get_user_name(id, name, 31)
	format(vaultkey,63,"%s-KES", name)
	format(vaultdata,255,"%i#%i#",oles[id],kes[id])
	nvault_get(vault,vaultkey,vaultdata,255)
	replace_all(vaultdata, 255, "#", " ")
	new m_o[32], k_o[32]
	parse(vaultdata, m_o, 31, k_o, 31)
	oles[id] = str_to_num(m_o)
	kes[id] = str_to_num(k_o)
	return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
	mentes(id)
}
public client_connect(id)
{
	betoltes(id)
}
 
public KESmessage(id) { 
 
	ColorChat(0, GREEN, "[Információ] ^1Hogy megtekintsd a Kés menüt írd be, ^3/kes")
	return PLUGIN_HANDLED;
}