Actually that is easy to achiveachieve.
If you have a collision, create a new entity with position component (for posionalpositional sound) and a collision component (maybe with the force as data). NoNow write a CollisionSoundSystem which deals with that new entity. Ah and
And I suggest a decay component and a decay system to get riderid of the collision entity in under a second. Maybe you have an EffectSystem as well for some nice hit effects. I
I would not mix it too much with traditional OO practicepractices, at least not on the same abstraction level. I
In ES, you have to solve things in a different way than in traditional way of programming. Think in therms of an ES. regards