I'm sure your calling the TakeDamage in the enemy collision detection, correct? Maybe the bug is in that code.