#include <amxmodx>
    #include <amxmisc>
    enum Color
{
	NORMAL = 1, // clients scr_concolor cvar color
	GREEN, // Green Color
	TEAM_COLOR, // Red, grey, blue
	GREY, // grey
	RED, // Red
	BLUE, // Blue
}
 
new TeamName[][] = 
{
	"",
	"TERRORIST",
	"CT",
	"SPECTATOR"
}
 
ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...)
{
	static message[256];
 
	switch(type)
	{
		case NORMAL: // clients scr_concolor cvar color
		{
			message[0] = 0x01;
		}
		case GREEN: // Green
		{
			message[0] = 0x04;
		}
		default: // White, Red, Blue
		{
			message[0] = 0x03;
		}
	}
 
	vformat(message[1], 251, msg, 4);
	message[192] = '^0';
 
	static team, ColorChange, index, MSG_Type;
 
	if(id)
	{
		MSG_Type = MSG_ONE;
		index = id;
	} else {
		index = FindPlayer();
		MSG_Type = MSG_ALL;
	}
 
	team = get_user_team(index);
	ColorChange = ColorSelection(index, MSG_Type, type);
 
	ShowColorMessage(index, MSG_Type, message);
 
	if(ColorChange)
	{
		Team_Info(index, MSG_Type, TeamName[team]);
	}
}
 
ShowColorMessage(id, type, message[])
{
	message_begin(type, get_user_msgid("SayText"), _, id);
	write_byte(id)		
	write_string(message);
	message_end();	
}
 
Team_Info(id, type, team[])
{
	message_begin(type, get_user_msgid("TeamInfo"), _, id);
	write_byte(id);
	write_string(team);
	message_end();
 
	return 1;
}
 
ColorSelection(index, type, Color:Type)
{
	switch(Type)
	{
		case RED:
		{
			return Team_Info(index, type, TeamName[1]);
		}
		case BLUE:
		{
			return Team_Info(index, type, TeamName[2]);
		}
		case GREY:
		{
			return Team_Info(index, type, TeamName[0]);
		}
	}
 
	return 0;
}
 
FindPlayer()
{
	static i;
	i = -1;
 
	while(i <= get_maxplayers())
	{
		if(is_user_connected(++i))
		{
			return i;
		}
	}
 
	return -1;
}
 
    #include <fun>
    #include <cstrike>
    #include <hamsandwich>
 
    #define PLUGIN "Weapon Menu"
    #define VERSION "1.0"
    #define AUTHOR "Silent"
 
    new gWPCT,gWPTE;
    new g_showsec[33];
    new bool:already[33];
 
    public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("", "playerspawn");
    RegisterHam(Ham_Spawn, "player", "playerspawn", 1)
    register_logevent("logevent_end", 2, "1=Round_End");
    register_logevent("logevent_end", 2, "1&Restart_Round");
    register_logevent("logevent_end", 2, "1=Game_Commencing");
    }
 
    public logevent_end()
    {
    gWPCT = 0;
    gWPTE = 0;
 
    new players[32], pnum
    get_players(players, pnum)
    for(new i=0; i<pnum; i++)
    {
    already[i] = false;
    }
    }
 
    public playerspawn(id)
    {
    g_showsec[id] = 16;
    already[id] = false;
    strip_user_weapons(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_deagle");
    fegyvermenu(id);
    }
 
    public fegyvermenu(id)
    {
    if(!is_user_alive(id)) return PLUGIN_HANDLED;
 
    new string[200];
 
    if(g_showsec[id] <= 16)
    {
    if(g_showsec[id] != 0)
    {
    if(already[id]) return PLUGIN_HANDLED;
    set_task(1.0, "fegyvermenu",id);
    g_showsec[id]--;
    }
    else
    {
    show_menu(id, 0, "^n", 1);
    return PLUGIN_HANDLED;
    }
    }
 
    if(!user_has_weapon(id, CSW_C4))
    {
 
   // strip_user_weapons(id);
    format(string, charsmax(string), "\ySZERVER NEVE ^n\wFegyver csomagok\y [\r%d \wmp\y]\w:", g_showsec[id]);
    new menu = menu_create(string, "handler")
    menu_additem(menu, "\yNem kerek fegyvert!", "1", 0);
    menu_additem(menu, "\rM4A1 \yCsomag", "2", 0);
    menu_additem(menu, "\rAK47 \yCsomag", "3", 0);
    menu_additem(menu, "\rAWP \yCsomag \d[\rElso \y2 \rembernek!\d]", "4", 0);
    menu_additem(menu, "\rMachineGun \yCsomag", "5", 0);
    menu_additem(menu, "\rScout \yCsomag", "6", 0);
    menu_additem(menu, "\rFAMAS \yCsomag", "7", 0);
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
    menu_display(id, menu);
    }
    else
    {
    formatex(string, charsmax(string), "\ySZERVER NEVE ^n\wFegyver csomagok\y [\r%d \wmp\y]\w:", g_showsec[id]);
    new menu = menu_create(string, "handler")
    menu_additem(menu, "\yNem kerek fegyvert!", "1", 0);
    menu_additem(menu, "\rM4A1 \yCsomag", "2", 0);
    menu_additem(menu, "\rAK47 \yCsomag", "3", 0);
    menu_additem(menu, "\rAWP \yCsomag \d[\rElso \y2 \rembernek!\d]", "4", 0);
    menu_additem(menu, "\rMachineGun \yCsomag", "5", 0);
    menu_additem(menu, "\rScout \yCsomag", "6", 0);
    menu_additem(menu, "\rFAMAS \yCsomag", "7", 0);
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
    menu_display(id, menu);
    }
 
    return PLUGIN_HANDLED;
    }
 
    public handler(id, menu, item)
    {
    if( item == MENU_EXIT )
    {
    menu_destroy(menu);
    return PLUGIN_HANDLED;
    }
    already[id] = true;
    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 1:
    {
    give_player_grenades(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_deagle");
    ColorChat(id, GREEN, "[INFO] ^x01Te nem kertel most fegyvert!");
    }
    case 2:
    {
 
    give_player_grenades(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_deagle");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "weapon_m4a1");
    give_item(id, "ammo_556nato");
    give_item(id, "ammo_556nato");
    give_item(id, "ammo_556nato");
    ColorChat(id, BLUE, "[INFO] ^x01- ^x03Kaptal egy^x04 M4A1^x03 csomagot!");
    }
    case 3:
    {
 
    give_player_grenades(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_deagle");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "weapon_ak47");
    give_item(id, "ammo_762nato");
    give_item(id, "ammo_762nato");
    give_item(id, "ammo_762nato");
    ColorChat(id, BLUE, "[INFO] ^x01- ^x03Kaptal egy^x04 AK47^x03 csomagot!");
    }
    case 4:
    {
    	new players[32], numct, numt
	get_players(players, numct, "e", "CT")
	get_players(players, numt, "e", "TERRORIST")
	if(numct >= 4 &&numt>=4)
	{
    new CsTeams:userTeam = cs_get_user_team(id);
    if(userTeam == CS_TEAM_CT)
    {
    if(gWPCT < 2)
    {
 
    give_player_grenades(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_awp");
    give_item(id, "weapon_deagle");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_338magnum");
    give_item(id, "ammo_338magnum");
    give_item(id, "ammo_338magnum");
    ColorChat(id, BLUE, "[INFO] ^x01- ^x03Kaptal egy^x04 AWP^x03 csomagot!");
    gWPCT++
    }
    else
    {
    client_print(id, print_center, "* Csak 2 ember AWP-zhet csapatonkent! *");
    fegyvermenu(id);
    }
    }
    if(userTeam == CS_TEAM_T)
    {
    if(gWPTE < 2)
    {
 
    give_player_grenades(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_awp");
    give_item(id, "weapon_deagle");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_338magnum");
    give_item(id, "ammo_338magnum");
    give_item(id, "ammo_338magnum");
    ColorChat(id, BLUE, "[INFO] ^x01- ^x03Kaptal egy^x04 AWP^x03 csomagot!");
    gWPTE++
    }
    else
    {
    client_print(id, print_center, "* Csak 2 ember AWP-zhet csapatonkent! *");
    fegyvermenu(id);
    }
    }
}
    }
    case 5:
    {
 
    give_player_grenades(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_deagle");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "weapon_m249");
    give_item(id, "ammo_556natobox");
    give_item(id, "ammo_556natobox");
    give_item(id, "ammo_556natobox");
    ColorChat(id, BLUE, "[INFO] ^x01- ^x03Kaptal egy^x04 MachineGun^x03 csomagot!");
    }
    case 6:
    {
 
    give_player_grenades(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_deagle");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae")
    give_item(id, "weapon_scout");
    give_item(id,"ammo_762nato");
    give_item(id,"ammo_762nato");
    give_item(id,"ammo_762nato");
    give_item(id,"ammo_762nato");
    give_item(id,"ammo_762nato");
    give_item(id,"ammo_762nato");
    give_item(id,"ammo_762nato");
    give_item(id,"ammo_762nato");
    give_item(id,"ammo_762nato");
    ColorChat(id, BLUE, "[INFO] ^x01- ^x03Kaptal egy^x04 SCOUT^x03 csomagot!");
    }
    case 7:
    {
 
    give_player_grenades(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_deagle");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae");
    give_item(id, "ammo_50ae")
    give_item(id, "weapon_famas");
    give_item(id, "ammo_556nato");
    give_item(id, "ammo_556nato");
    give_item(id, "ammo_556nato");
    ColorChat(id, BLUE, "[INFO] ^x01- ^x03Kaptal egy^x04 FAMAS^x03 csomagot!");
    }
    }
    return PLUGIN_HANDLED;
    }
 
    stock give_player_grenades(index)
    {
    give_item(index, "weapon_hegrenade");
    give_item(index, "item_thighpack");
    give_item(index, "item_assaultsuit");
    }