Code: Select all
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <xs>
#pragma tabsize 0
#define VIP_ACCESS ADMIN_LEVEL_H //flag t
#define is_vip(%0) (get_user_flags(%0)&VIP_ACCESS)
new Float: cl_pushangle[33][3]
const WEAPONS_BITSUM = (1<<CSW_KNIFE|1<<CSW_HEGRENADE|1<<CSW_FLASHBANG|1<<CSW_SMOKEGRENADE|1<<CSW_C4)
public plugin_init()
{
register_plugin("[ZP] Extra Item: No-Recoli (O Runda)", "0.1.0", "CarsonMotion")
new weapon_name[24]
for (new i = 1; i <= 30; i++)
{
if (!(WEAPONS_BITSUM & 1 << i) && get_weaponname(i, weapon_name, 23))
{
RegisterHam(Ham_Weapon_PrimaryAttack, weapon_name, "fw_Weapon_PrimaryAttack_Pre")
RegisterHam(Ham_Weapon_PrimaryAttack, weapon_name, "fw_Weapon_PrimaryAttack_Post", 1)
}
}
}
public fw_Weapon_PrimaryAttack_Pre(entity)
{
if(pev_valid(entity))
{
new id = pev(entity, pev_owner)
if (is_user_alive(id)&&is_vip(id))
{
pev(id, pev_punchangle, cl_pushangle[id])
return HAM_IGNORED;
}
}
return HAM_IGNORED;
}
public fw_Weapon_PrimaryAttack_Post(entity)
{
if(pev_valid(entity))
{
new id = pev(entity, pev_owner)
if (is_user_alive(id)&&is_vip(id))
{
new Float: push[3]
pev(id, pev_punchangle, push)
xs_vec_sub(push, cl_pushangle[id], push)
xs_vec_mul_scalar(push, 0.0, push)
xs_vec_add(push, cl_pushangle[id], push)
set_pev(id, pev_punchangle, push)
return HAM_IGNORED;
}
}
return HAM_IGNORED;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1252\\ deff0\\ deflang1033{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/