* fix(entity): derive hurt sound parity from generated mapping
Keep slime hurt sounds in runtime because they depend on entity size.\n\nMove enderman and undead-family hurt sound mappings into generated data so living.rs dispatches through a shared lookup instead of owning a hardcoded table.
* refactor(entity): derive hurt sound lookup from entities data
The Extractor companion now emits hurt_sound through entities.json. Keep Pumpkin's hurt_sound_for_entity_type helper narrow and generated while moving its source of truth to entity data.
Slime remains a runtime special case because its hurt sound depends on size rather than static entity metadata.
* refactor(entity): fold hurt sound helper into entity codegen
Move hurt-sound helper generation into the existing entity codegen path.
Remove the standalone helper builder and generated file now that hurt_sound is sourced from entities.json. Runtime dispatch stays unchanged and slime remains a runtime size-based exception.
* refactor(entity): inline hurt sound into EntityType
Remove the standalone entity_hurt_sound feature and helper path.
Hurt sounds now live directly on generated EntityType values, while runtime behavior stays the same and slime remains the size-based runtime exception.