I think this one is better, because the other code won't affect knife damage
PHP Code:
#include < amxmodx >
#include < hamsandwich >
#define DMG_BULLET ( 1<<1 )
#define DMG_NEVERGIB ( 1<<12 )
#define DMG_KNIFE ( DMG_NEVERGIB | DMG_BULLET )
public plugin_init( ) {
register_plugin( "Block DMG", "1.0", "DoNii" );
RegisterHam( Ham_TakeDamage, "player", "fw_HamTakeDamage" );
}
public fw_HamTakeDamage( victim, inflictor, attacker, Float:damage, damagebits ) {
if( ( get_user_weapon( attacker ) == CSW_KNIFE && damagebits & DMG_KNIFE ) || ( damagebits & DMG_BULLET ) )
return HAM_SUPERCEDE;
return HAM_IGNORED;
}
__________________