PHP Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <engine>
#include <fun>
#include <cstrike>
// Flicker For Random Pistols
new gBuyCommands[][] =
{
"usp", "glock", "deagle", "p228", "elites", "fn57", "m3", "xm1014", "mp5", "tmp", "p90", "mac10", "ump45", "ak47",
"galil", "famas", "sg552", "m4a1", "aug", "scout", "awp", "g3sg1", "sg550", "m249", "vest", "vesthelm", "flash", "hegren",
"sgren", "defuser", "nvgs", "shield", "primammo", "secammo", "km45", "9x19mm", "nighthawk", "228compact", "12gauge",
"autoshotgun", "smg", "mp", "c90", "cv47", "defender", "clarion", "krieg552", "bullpup", "magnum", "d3au1", "krieg550",
"buyammo1", "buyammo2"
}
enum _:g_eWeaponData
{
_NameForChat[32],
_WeaponName[32],
_Ammo,
_CSW
}
enum _:g_eWeaponTypes
{
S
}
new const g_szSecondary[][g_eWeaponData]=
{
{"Glock18", "weapon_glock18", 240, CSW_GLOCK18},
{"Usp", "weapon_usp", 240, CSW_USP},
{"P228", "weapon_p228", 240, CSW_P228},
{"Dual Elites", "weapon_elite", 240, CSW_ELITE},
{"Fiveseven", "weapon_fiveseven", 240, CSW_FIVESEVEN},
{"Deagle", "weapon_deagle", 240, CSW_DEAGLE}
}
new CvarBuyZone
new Buy = false
new g_WpnID[g_eWeaponTypes]
new EnabledCvar
public plugin_precache() {
disable_buyzone();
}
public plugin_init() {
register_plugin("Special Round", "Version", "Constentine")
register_clcmd("say /spr", "SprMenuShow")
register_logevent("logevent_round_start", 2, "1=Round_Start")
EnabledCvar = register_cvar("amx_enable", "1")// Enable/Disable Plugin
CvarBuyZone = register_cvar("amx_buy", "1")// Enable Buy Zone/Disable Buy Zone When u Start Special Round
for (new i; i < sizeof gBuyCommands; i++)
register_clcmd(gBuyCommands[i], "BlockBuyCommands")
}
public SprMenuShow(id)
{
if(get_pcvar_num( EnabledCvar ) && get_user_flags(id) & ADMIN_ALL)
{
new menu = menu_create("Special Round", "SprMenuHandler")
menu_additem(menu, "Knife round", "1", 0)
menu_additem(menu, "grenade+knife round", "2", 0)
menu_additem(menu, "shotgun round", "3", 0)
menu_additem(menu, "deagle round", "4", 0)
menu_additem(menu, "awp round", "5", 0)
menu_additem(menu, "random pistul round", "6", 0)
menu_additem(menu, "m4a1 round", "7", 0)
menu_additem(menu, "ak-47 round", "8", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}
}
public SprMenuHandler(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], szName[33];
new acces, callback;
menu_item_getinfo(menu, item, acces, data,charsmax(data), szName,charsmax(szName), callback)
new key = str_to_num(data);
switch(key)
{
case 1: {
Buy = true
strip_user_weapons(id)
give_item(id, "weapon_knife")
}
case 2: {
Buy = true
strip_user_weapons(id)
give_item(id, "weapon_knife")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_smokegrenade")
}
case 3: {
Buy = true
strip_user_weapons(id)
give_item(id, "weapon_m3")
give_item(id, "weapon_xm1014")
cs_set_user_bpammo(id,CSW_M3,240)
cs_set_user_bpammo(id,CSW_XM1014,240)
}
case 4: {
Buy = true
strip_user_weapons(id)
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id,CSW_DEAGLE,240)
}
case 5: {
Buy = true
strip_user_weapons(id)
give_item(id, "weapon_awp")
cs_set_user_bpammo(id,CSW_AWP,240)
}
case 6: {
Buy = true
strip_user_weapons(id)
g_WpnID[S] = random_num(1, charsmax(g_szSecondary))
give_item(id, g_szSecondary[g_WpnID[S]][_WeaponName])
cs_set_user_bpammo(id, g_szSecondary[g_WpnID[S]][_CSW], g_szSecondary[g_WpnID[S]][_Ammo])
}
case 7: {
Buy = true
strip_user_weapons(id)
give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id,CSW_M4A1,240)
}
case 8: {
Buy = true
strip_user_weapons(id)
give_item(id, "weapon_ak47")
cs_set_user_bpammo(id,CSW_AK47,240)
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public disable_buyzone() {
if(Buy){
new ent = find_ent_by_class(-1,"info_map_parameters");
if(!ent) {
ent = create_entity("info_map_parameters");
}
DispatchKeyValue(ent,"buying","3");
DispatchSpawn(ent);
}
}
public BlockBuyCommands(id)
{
if (Buy &&!get_pcvar_num(CvarBuyZone))
return PLUGIN_CONTINUE;
return PLUGIN_HANDLED;
}
public logevent_round_start(client){
Buy = false
}