Code:
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
new gMaxClients;
#define IsPlayer(%1) ( 1 <= %1 <= gMaxClients )
#define HasKnife(%1) ( IsPlayer( %1 ) && get_user_weapon( %1 ) == CSW_KNIFE )
#define DMG_KNIFE ( DMG_NEVERGIB | DMG_BULLET )
public plugin_init()
{
register_plugin( "No Knife Damage", "1.0.0", "Arkshine" );
RegisterHam( Ham_TakeDamage, "player", "Event_PlayerTakeDamage" );
gMaxClients = get_maxplayers();
}
public Event_PlayerTakeDamage ( Victim, Inflictor, Attacker, Float:Damage, Damagebits )
{
return HasKnife( Attacker ) && ( Damagebits & DMG_KNIFE ) ? HAM_SUPERCEDE : HAM_IGNORED;
}
Should work.