possiblyIntersects method
Since this is a cheaper calculation than checking towards all shapes, this check can be done first to see if it even is possible that the shapes can overlap, since the shapes have to be within the size of the component.
Implementation
@override
bool possiblyIntersects(ShapeHitbox other) {
final collisionAllowed =
allowSiblingCollision || hitboxParent != other.hitboxParent;
return collisionAllowed && aabb.intersectsWithAabb2(other.aabb);
}