You'd think this is "doable" but if we add something like this, we don't have to just make it work for your specific case, but for other use cases as well.
Let's say we add boolean flag to SpineBoneNode
that means "Create a collider if true", and another flag that means Collider active
. What is the shape of the collider based on? The attachment in the setup pose? Well, that won't work if someone uses skins and set a skin at runtime. This would mean you see no collider, or a wrong collider in the Godot editor. Or the collider will retain the shape of the setup pose attachment, while at runtime a differently shaped attachment from a skin is active.
What if the attachment is a mesh with a non-rectangular shape? You might be fine with just a rectangle, but others are most likely not and want proper mesh colliders. What if that mesh attachment has a deform animation on it? The collider would have to be recreated every frame.
There's a lot more to this than just adding rectangles to a SpineBoneNode, as different users have different needs and use cases. We can't just add a hacked up thing for one user I'm afraid.
What I want is to have a checkbox in SpineBoneNode or SpineSlotNode, when it is checked, a CollisionShape2d node corresponding to the bounding box will be generated as a child node and the show and hide of it during runtime will be synched to the animation clips.
You mean the collision shape would be activated/deactivated depending on whether the corresponding slot in the skeleton has an active attachment or not?
Currently, I can only send an event signal when the box is active and another when it is deactivated, when there are large numbers of boxes, matching the event signal to a specific collision shape will be loads of work.
I'm afraid I still don't understand what you mean. Whatever we implement in the runtime, it would not be setting up any signals for you. Could you describe what you'd expect in that regard? You will have to differentiate between the collision shapes (fist, leg, whatever) somewhere in your code, i.e. if a fist hit deals less damage than a leg. I don't see how we could help with that.