How can I detect the collision of a child object with another object?

I’m back with yet another question.
I’ve got a character which is parented to an armature and a seperate sword object parented to the hand bone in the armature. I now want to make it so that when the sword touches a separate object (a cube in this case) the cube will react in some way (eg. rotate). I’ve tried using touch, collision and near sensors but none of them seem to detect the sword hitting the cube.

I think the problem is that the sword is parented to the armature and the swords bounds are set ‘Convex Hull’ ‘Add to Parent’. If I turn off ‘Add to Parent’ the collision is detected, but it also causes everything to fly everywhere (I think the sword is colliding with the character mesh).
Is there any way I can get the collision between the sword and the box to be detected, while still keeping the sword and character meshes separate with out them colliding?

Thanks for the help :slight_smile:

(Sorry if that makes no sense! the attached blend might make it easier to understand how I’ve got it set up. the controls are WAD to move and Space to attack)


character.blend (679 KB)

How about you let the sword send a message to the cube when it nears it…
The cube can then rotate upon receiving this message…


character.blend (680 KB)

Thank you! With a bit of tweaking this works just about perfectly :slight_smile: