Perhaps it should be the other way round - it’s the Bonk Stick that deals damage:
When it comes to filtering what we can / cannot hit, there are too many options:
- don’t implement damage event in the actor that cannot be damaged
- collision channels / object types - the most efficient way but may not be suitable / clash with the desired combat mechanics
- cast
Other Actor
to Base Enemy Class; cast fails => do not bother dealing damage - query
Other Actor
for an interface; no interface => do not bother dealing damage - have
Damage Type
pre-process damage and decide what to spit out (that option is most useful when things start getting convoluted)