PHP Code:
Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <Hamsandwich>
#include <fakemeta>
#define PLUGIN "XXXXXXXX"
#define VERSION "1.0"
#define AUTHOR "Natsheh"
#define WEAPON_LINUX 4
const m_iWeaponOwner = 41
#define SetMode(%1,%2) ((%1 |= (1 << ( %2 & 31))))
#define unSetMode(%1,%2) ((%1 &= ~(1 << ( %2 & 31))))
#define CheckMode(%1,%2) ((%1 & (1 << ( %2 & 31))))
new Mode
new const mode_weapons[][] = {
"weapon_glock18",
"weapon_famas"
}
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
for(new i = 0; i < sizeof mode_weapons; i++)
{
RegisterHam(Ham_Item_Deploy, mode_weapons[i], "fw_wpn_deployed", false)
RegisterHam(Ham_Weapon_PrimaryAttack, mode_weapons[i], "fw_player_firsmode", false)
RegisterHam(Ham_Weapon_SecondaryAttack, mode_weapons[i], "fw_player_secmode", false)
}
}
public fw_wpn_deployed( const iWpnid )
{
if(!pev_valid(wpnid))
return HAM_IGNORED;
new owner = get_pdata_cbase(wpnid, m_iWeaponOwner, WEAPON_LINUX)
if(!owner) // no owner detected...
return HAM_IGNORED;
unSetMode(id,owner)
}
public fw_player_secmode(const wpnid)
{
if(!pev_valid(wpnid))
return HAM_IGNORED;
new owner = get_pdata_cbase(wpnid, m_iWeaponOwner, WEAPON_LINUX)
if(!owner) // no owner detected...
return HAM_IGNORED;
if(!(CheckMode(Mode,owner)))
{
SetMode(Mode,owner)
ExecuteHamB(Ham_Weapon_SecondaryAttack, wpnid)
}
ExecuteHamB(Ham_Weapon_PrimaryAttack, wpnid)
return HAM_SUPERCEDE;
}
public fw_player_firsmode(const wpnid)
{
if(!pev_valid(wpnid))
return HAM_IGNORED;
new owner = get_pdata_cbase(wpnid, m_iWeaponOwner, WEAPON_LINUX)
if(!owner) // no owner detected...
return HAM_IGNORED;
if((CheckMode(Mode,owner)))
{
unSetMode(Mode,owner)
ExecuteHamB(Ham_Weapon_SecondaryAttack, wpnid)
}
ExecuteHamB(Ham_Weapon_PrimaryAttack, wpnid)
return HAM_SUPERCEDE;
}
this should work i guess...