| Risk | Mitigation | |------|-------------| | Double hurt animation/sound | Acceptable; less than 1 frame visible. Or add hurtResistantTime client-side flag. | | Entity null at time of attack | Check entity != null && !entity.isDead . | | Sound played for invulnerable entities | Add if (entity.hurtResistantTime > 0) return; before playing. | | Anti-cheat detecting “fake” hurt animations | None known; animation is purely client rendering. |

No client-side call to performHurtAnimation() when sendUseEntity is invoked.

To avoid playing the hurt animation twice (once local, once when SPacketEntityStatus arrives), add a check: