Code:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#define PLUGIN_VERSION "1.0"
#define VIP_FLAG "b"
#define VIP_HEALTH 105
#define VIP_ARMOR 105
const PRIMARY_WEAPONS_BIT_SUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)
const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE)
new const g_szItems[][] =
{
"weapon_deagle",
"item_assaultsuit",
"weapon_hegrenade",
"weapon_flashbang",
"weapon_flashbang"
}
new g_iFlag,
g_iSize
public plugin_init()
{
register_plugin("VIP Extras #3", PLUGIN_VERSION, "iPlay.bg (OciXCrom)")
RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)
g_iFlag = read_flags(VIP_FLAG)
g_iSize = sizeof(g_szItems)
}
public OnPlayerSpawn(id)
{
if(!is_user_alive(id) || (!(get_user_flags(id) & g_iFlag)))
return
for(new i; i < g_iSize; i++)
give_item(id, g_szItems[i])
drop_weapons(id, 1)
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
set_user_health(id, VIP_HEALTH)
set_user_armor(id, VIP_ARMOR)
}
// Drop primary/secondary weapons
stock drop_weapons(id, dropwhat)
{
// Get user weapons
static weapons[32], num, i, weaponid
num = 0 // reset passed weapons count (bugfix)
get_user_weapons(id, weapons, num)
// Loop through them and drop primaries or secondaries
for (i = 0; i < num; i++)
{
// Prevent re-indexing the array
weaponid = weapons[i]
if ((dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM)))
{
// Get weapon entity
static wname[32]; get_weaponname(weaponid, wname, charsmax(wname))
engclient_cmd(id, "drop", wname)
}
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1049\\ f0\\ fs16 \n\\ par }
*/