#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <dhudmessage>
#include <colorchat>
#include <hamsandwich>
#include <fakemeta>
#include <engine>
#include <sqlx>
 
#pragma tabsize 0
 
#define MAX 3
new szint[33],arany[33], Tapasztalat[33]
 
//fegyverek
new OsszesSkin[33][3], OsszesNev[3], Skin[33][3];

new const PLUGIN [] = "Global Unison"
new const VERSION[] = "1.0"
new const  AUTHOR[] = "GudDevil"

new const Fegyverek[MAX][][] =
{
{"TerepmintĂˇs | AK47"},
{"TerepmintĂˇs | M4A1"},
{"TerepmintĂˇs | AWP"}
}

new const m_ak47[][] =
{
{"models/alap/ak47.mdl"},
{"models/terep/ak47.mdl"}
}
new const m_m4a1[][] =
{
{"models/alap/m4a1.mdl"},
{"models/terep/m4a1.mdl"}
}
new const m_awp[][] =
{
{"models/alap/awp.mdl"},
{"models/terep/awp.mdl"}
}
 
public plugin_init() 
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_clcmd("say /menu","fomenu")
	register_impulse(201, "fomenu")
	register_clcmd("say /add", "cmdAddolas")
	register_event("CurWeapon", "ChangeWeapon", "be", "1=1")
}

public plugin_precache() 
{
	for(new i;i < sizeof(m_ak47); i++)
	{
	precache_model(m_ak47[i]);
	}
	for(new i;i < sizeof(m_m4a1); i++)
	{
	precache_model(m_m4a1[i]);
	}
	for(new i;i < sizeof(m_awp); i++)
	{
	precache_model(m_awp[i]);
	}
}
public ChangeWeapon(id) 
{
new fgy =get_user_weapon(id)
	{
		for(new i;i < sizeof(m_ak47); i++) 
		{
			if(Skin[0][id] == i && fgy == CSW_AK47)
			{
				set_pev(id, pev_viewmodel2, m_ak47[i]);
			}
		}
		for(new i;i < sizeof(m_m4a1); i++) 
		{
			if(Skin[1][id] == i && fgy == CSW_M4A1)
			{
				set_pev(id, pev_viewmodel2, m_m4a1[i]);
			}
		}
		for(new i;i < sizeof(m_awp); i++) 
		{
			if(Skin[2][id] == i && fgy == CSW_AWP)
			{
				set_pev(id, pev_viewmodel2, m_awp[i]);
			}
		}
	}
}
public fomenu(id)
{
new cim[121]
format(cim, charsmax(cim), "\rGlobal \rUnison - \dFĹ‘menĂĽ^n\wSzint: %d | \wTapasztalat: %d%% | \wArany: %d", Tapasztalat[id],szint[id],arany[id]);
new menu = menu_create(cim, "fomenu_h");

format(cim, charsmax(cim), "GyakorlĂˇs")
menu_additem(menu, cim, "1",0)
format(cim, charsmax(cim), "RaktĂˇr")
menu_additem(menu, cim, "2",0)
   
menu_display(id, menu, 0)
return PLUGIN_HANDLED
}
 
public fomenu_h(id, menu, item)
{
	if(item == MENU_EXIT)
	{
		menu_destroy(menu);
		return;
	}

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: raktar_menu(id); //csakmert a kikepzes nincs megcsinalva!
	case 2: raktar_menu(id);
	}
}
public raktar_menu(id) 
{
    new cim[121]
    format(cim, charsmax(cim), "\rGlobal \rUnison - \dRaktĂˇr");
	new menu = menu_create(cim, "raktar_h");
   
    for(new i; i < MAX; i++) 
	{
        if(OsszesSkin[i][id]> 0)
        {
            new Num[6]
            num_to_str(i, Num, 5)
            formatex(cim, charsmax(cim), "\y%s \r(%d) ", Fegyverek[i][id], OsszesSkin[i][id])
            menu_additem(menu, cim, Num)
        }
    }
    menu_display(id, menu)
}
public cmdAddolas(id) 
{
    if(get_user_flags(id) & ADMIN_LEVEL_H)
	{
       
        for(new i; i < MAX; i++) {
            OsszesSkin[i][id]++
        }
    }
}
public raktar_h(id, menu, item){
   
    if(item == MENU_EXIT)
    {
        menu_destroy(menu)
        return
    }
   
    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 0: Skin[0][id] = 1;
        case 1: Skin[1][id] = 1;
        case 2: Skin[2][id] = 1;
}
}