HLMOD.HU Forrás Megtekintés
- www.hlmod.hu#include <amxmodx>
#include <reapi>
new ItemID:g_iRestrictWeapons[] =
// Раскомментируйте, что нужно заблокировать.
// ITEM_NONE НЕ ТРОГАТЬ!!!
{
ITEM_SHIELDGUN,
// ITEM_P228,
// ITEM_GLOCK,
// ITEM_SCOUT,
// ITEM_HEGRENADE,
// ITEM_XM1014,
// ITEM_C4,
// ITEM_MAC10,
// ITEM_AUG,
// ITEM_SMOKEGRENADE,
// ITEM_ELITE,
// ITEM_FIVESEVEN,
// ITEM_UMP45,
ITEM_SG550,
// ITEM_GALIL,
// ITEM_FAMAS,
// ITEM_USP,
// ITEM_GLOCK18,
// ITEM_AWP,
// ITEM_MP5N,
// ITEM_M249,
// ITEM_M3,
// ITEM_M4A1,
// ITEM_TMP,
ITEM_G3SG1,
// ITEM_FLASHBANG,
// ITEM_DEAGLE,
// ITEM_SG552,
// ITEM_AK47,
// ITEM_KNIFE,
// ITEM_P90,
// don't touch it
ITEM_NONE
};
new ItemID:g_iRestrictItems[] =
// Раскомментируйте, что нужно заблокировать.
// ITEM_NONE НЕ ТРОГАТЬ!!!
{
// ITEM_NVG,
// ITEM_DEFUSEKIT,
// ITEM_KEVLAR,
// ITEM_ASSAULT,
// ITEM_LONGJUMP,
// ITEM_HEALTHKIT,
// ITEM_ANTIDOTE,
// ITEM_SECURITY,
// ITEM_BATTERY,
// ITEM_SUIT,
// don't touch it
ITEM_NONE
};
enum SectionBits
{
SECTION_WEAPONS,
SECTION_ITEMS
};
new g_BitsItemsBlocked[SectionBits];
public plugin_init()
{
register_plugin("Weapon Restrict", "1.7", "s1lent");
if(g_iRestrictWeapons[0] == ITEM_NONE && g_iRestrictItems[0] == ITEM_NONE)
set_fail_state("Arrays g_iRestrictWeapons & g_iRestrictItems is empty. You noob...");
RegisterHookChain(RG_CBasePlayer_HasRestrictItem, "fwdHasRestrictItemPre", false);
for(new i; g_iRestrictWeapons[i] != ITEM_NONE; i++)
g_BitsItemsBlocked[SECTION_WEAPONS] |= (1 << any:g_iRestrictWeapons[i]);
for(new i; g_iRestrictItems[i] != ITEM_NONE; i++)
g_BitsItemsBlocked[SECTION_ITEMS] |= (1 << any:(g_iRestrictItems[i] % ITEM_NVG));
}
public fwdHasRestrictItemPre(const id, const ItemID:item, ItemRestType:type)
{
if((item < ITEM_NVG) ? g_BitsItemsBlocked[SECTION_WEAPONS] & (1 << any:item) :
g_BitsItemsBlocked[SECTION_ITEMS] & (1 << any:(item % ITEM_NVG)))
{
if(type == ITEM_TYPE_BUYING)
client_print(id, print_center, "*** Nem vasarolhato! ***");
SetHookChainReturn(ATYPE_INTEGER, 1);
return HC_SUPERCEDE;
}
return HC_CONTINUE;
}