#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <basebuilder>
#pragma tabsize 0
#define PLUGIN "Guns Menu New"
#define VERSION "1.5"
#define AUTHOR "NXK"
new const MODENAME[] = { "Guns Menu" };
new ChooseTeamOverrideActive[33];
public plugin_init() {
register_plugin("Base Builder Guns Menu", "1.5", "NXK")
RegisterHam(Ham_Spawn, "player", "Respawn_Player", 1)
register_concmd("amx_guns1", "Access");
register_clcmd("say /guns", "Access");
}
public Access(id) {
if(!zp_get_user_zombie(id))
GameMenu(id)
else
client_printc(id, "!n [!g Base Builder!n ] Zombies can't use this menu!")
}
public Respawn_Player(id) // User Respawn
{
if(cs_get_user_team(id) == CS_TEAM_CT)
client_cmd(id, "amx_guns1")
}
public client_putinserver(id)
ChooseTeamOverrideActive[id] = true
/*-------------------------------------------*/
public GameMenu(id)
{
new szText[555 char]
formatex(szText, charsmax(szText), " \y%s \r(Primary) ", MODENAME)
new AdminMenu = menu_create(szText, "Handle_GameMenu")
formatex(szText, charsmax(szText), "TMP \r| \yPrice\r: \y0\w$ \r| (\yFree\r)")
menu_additem(AdminMenu, szText, "1", 0)
formatex(szText, charsmax(szText), "Mac-10 \r| \yPrice\r: \y0\w$ \r| (\yFree\r)")
menu_additem(AdminMenu, szText, "2", 0)
formatex(szText, charsmax(szText), "Scout \r| \yPrice\r: \y0\w$ \r| (\yFree\r)")
menu_additem(AdminMenu, szText, "3", 0)
formatex(szText, charsmax(szText), "MP5 \r| \yPrice\r: \y1500\w$ \r| (\yFree\r)")
menu_additem(AdminMenu, szText, "4", 0)
formatex(szText, charsmax(szText), "UMP45 \r| \yPrice\r: \y1800\w$ \r| (\yFree\r)")
menu_additem(AdminMenu, szText, "5", 0)
formatex(szText, charsmax(szText), "Famas \r| \yPrice\r: \y2000\w$ \r| (\yFree\r)")
menu_additem(AdminMenu, szText, "6", 0)
formatex(szText, charsmax(szText), "AWP \r| \yPrice\r: \y0\w$ \r| (\yVIP\r)")
menu_additem(AdminMenu, szText, "7", 0)
formatex(szText, charsmax(szText), "AUG \r| \yPrice\r: \y0\w$ \r| (\yVIP\r)")
menu_additem(AdminMenu, szText, "8", 0)
formatex(szText, charsmax(szText), "P90 \r| \yPrice\r: \y0\w$ \r| (\yVIP\r)")
menu_additem(AdminMenu, szText, "9", 0)
formatex(szText, charsmax(szText), "Xm1014 \r| \yPrice\r: \y2300\w$ \r| (\yVIP\r)")
menu_additem(AdminMenu, szText, "10", 0)
formatex(szText, charsmax(szText), "\yKar98k \r| \yPrice\r: \y2700\w$ \r| (\yVIP\r)")
menu_additem(AdminMenu, szText, "11", 0)
formatex(szText, charsmax(szText), "M3 \r| \yPrice\r: \y3000\w$ \r| (\yVIP\r)")
menu_additem(AdminMenu, szText, "12", 0)
formatex(szText, charsmax(szText), "\yTommy \r| \yPrice\r: \y0\w$ \r| (\yAdmin\r)")
menu_additem(AdminMenu, szText, "13", 0)
formatex(szText, charsmax(szText), "Galil \r| \yPrice\r: \y0\w$ \r| (\yAdmin\r)")
menu_additem(AdminMenu, szText, "14", 0)
formatex(szText, charsmax(szText), "M4A1 \r| \yPrice\r: \y0\w$ \r| (\yAdmin\r)")
menu_additem(AdminMenu, szText, "15", 0)
formatex(szText, charsmax(szText), "AK47 \r| \yPrice\r: \y0\w$ \r| (\yAdmin\r)")
menu_additem(AdminMenu, szText, "16", 0)
formatex(szText, charsmax(szText), "SG552 \r| \yPrice\r: \y3500\w$ \r| (\yAdmin\r)")
menu_additem(AdminMenu, szText, "17", 0)
formatex(szText, charsmax(szText), "G3SG1 \r| \yPrice\r: \y4100\w$ \r| (\yAdmin\r)")
menu_additem(AdminMenu, szText, "18", 0)
formatex(szText, charsmax(szText), "SG550 \r| \yPrice\r: \y4800\w$ \r| (\yAdmin\r)")
menu_additem(AdminMenu, szText, "19", 0)
formatex(szText, charsmax(szText), "M249 \r| \yPrice\r: \y0\w$ \r| (\yHead\r)")
menu_additem(AdminMenu, szText, "20", 0)
menu_setprop(AdminMenu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, AdminMenu, 0)
return PLUGIN_HANDLED
}
public Handle_GameMenu(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64], access, callback
menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
new key = str_to_num(data)
switch(key)
{
case 1: strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_tmp"),
cs_set_user_bpammo(id, CSW_TMP, 200),
client_cmd(id, "amx_guns2")
case 2: strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_mac10"),
cs_set_user_bpammo(id, CSW_MAC10, 200),
client_cmd(id, "amx_guns2")
case 3: strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_scout"),
cs_set_user_bpammo(id, CSW_SCOUT, 200),
client_cmd(id, "amx_guns2")
case 4: if(cs_get_user_money(id) < 1500)
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not enough money!"),
client_cmd(id, "amx_guns1")
else
cs_set_user_money(id, cs_get_user_money(id) - 1500),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_mp5navy"),
cs_set_user_bpammo(id, CSW_MP5NAVY, 200),
client_cmd(id, "amx_guns2")
case 5: if(cs_get_user_money(id) < 1800)
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not enough money!"),
client_cmd(id, "amx_guns1")
else
cs_set_user_money(id, cs_get_user_money(id) - 1800),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_ump45"),
cs_set_user_bpammo(id, CSW_UMP45, 200),
client_cmd(id, "amx_guns2")
case 6: if(cs_get_user_money(id) < 2000)
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not enough money!"),
client_cmd(id, "amx_guns1")
else
cs_set_user_money(id, cs_get_user_money(id) - 2000),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_famas"),
cs_set_user_bpammo(id, CSW_FAMAS, 200),
client_cmd(id, "amx_guns2")
case 7: if(get_user_flags(id) & ADMIN_LEVEL_B)
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_awp"),
cs_set_user_bpammo(id, CSW_AWP, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access!"),
client_cmd(id, "amx_guns1")
case 8: if(get_user_flags(id) & ADMIN_LEVEL_B)
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_aug"),
cs_set_user_bpammo(id, CSW_AUG, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access!"),
client_cmd(id, "amx_guns1")
case 9: if(get_user_flags(id) & ADMIN_LEVEL_B)
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_p90"),
cs_set_user_bpammo(id, CSW_P90, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access!"),
client_cmd(id, "amx_guns1")
case 10: if(get_user_flags(id) & ADMIN_LEVEL_B && cs_get_user_money(id) > 2300)
cs_set_user_money(id, cs_get_user_money(id) - 2300),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_xm1014"),
cs_set_user_bpammo(id, CSW_XM1014, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access or enough money!"),
client_cmd(id, "amx_guns1")
case 11: if(get_user_flags(id) & ADMIN_LEVEL_B && cs_get_user_money(id) > 2700)
cs_set_user_money(id, cs_get_user_money(id) - 2700),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
client_cmd(id, "amx_kar98k"),
cs_set_user_bpammo(id, CSW_SCOUT, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access or enough money!"),
client_cmd(id, "amx_guns1")
case 12: if(get_user_flags(id) & ADMIN_LEVEL_B && cs_get_user_money(id) > 3000)
cs_set_user_money(id, cs_get_user_money(id) - 3000),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_m3"),
cs_set_user_bpammo(id, CSW_M3, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access or enough money!"),
client_cmd(id, "amx_guns1")
case 13: if(get_user_flags(id) & ADMIN_BAN)
strip_user_weapons(id),
give_item(id, "weapon_knife"),
client_cmd(id, "give_tommy"),
cs_set_user_bpammo(id, CSW_P90, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access!"),
client_cmd(id, "amx_guns1")
case 14: if(get_user_flags(id) & ADMIN_BAN)
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_galil"),
cs_set_user_bpammo(id, CSW_GALIL, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access!"),
client_cmd(id, "amx_guns1")
case 15: if(get_user_flags(id) & ADMIN_BAN)
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_m4a1"),
cs_set_user_bpammo(id, CSW_M4A1, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access!"),
client_cmd(id, "amx_guns1")
case 16: if(get_user_flags(id) & ADMIN_BAN)
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_ak47"),
cs_set_user_bpammo(id, CSW_AK47, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access!"),
client_cmd(id, "amx_guns1")
case 17: if(get_user_flags(id) & ADMIN_BAN && cs_get_user_money(id) > 3500)
cs_set_user_money(id, cs_get_user_money(id) - 3500),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_sg552"),
cs_set_user_bpammo(id, CSW_SG552, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access or enough money!"),
client_cmd(id, "amx_guns1")
case 18: if(get_user_flags(id) & ADMIN_BAN && cs_get_user_money(id) > 4100)
cs_set_user_money(id, cs_get_user_money(id) - 4100),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_g3sg1"),
cs_set_user_bpammo(id, CSW_G3SG1, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access or enough money!"),
client_cmd(id, "amx_guns1")
case 19: if(get_user_flags(id) & ADMIN_BAN && cs_get_user_money(id) > 4800)
cs_set_user_money(id, cs_get_user_money(id) - 4800),
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_sg550"),
cs_set_user_bpammo(id, CSW_SG550, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access or enough money!"),
client_cmd(id, "amx_guns1")
case 20: if(get_user_flags(id) & ADMIN_LEVEL_C)
strip_user_weapons(id),
give_item(id, "weapon_knife"),
give_item(id, "weapon_m249"),
cs_set_user_bpammo(id, CSW_M249, 200),
client_cmd(id, "amx_guns2")
else
client_printc(id, "^x01 [^x04 Base Builder^x01 ] You have not access!"),
client_cmd(id, "amx_guns1")
}
return PLUGIN_HANDLED
}
// Colour Chat
stock client_printc(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!g", "^x04"); // Green Color
replace_all(msg, 190, "!n", "^x01"); // Default Color
replace_all(msg, 190, "!t", "^x03"); // 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();
}
}
}
}"