NO CRAP! Did you read any of this? I was suggesting a new function, OnPlayerMeleeWeaponSwung or something similiar!
Sorry, I just read only half of it. Anyways, it's not necessary since you can detect if player swings a melee weapons. Check if they had knife/shovel/melee weapon and check if they pressed KEY_FIRE.