private void ContainerModifiedReAttach(BuckleComponent buckle, StrapComponent?strap) { if (strap == null) { return; } var contained = buckle.Owner.TryGetContainer(out var ownContainer); var strapContained = strap.Owner.TryGetContainer(out var strapContainer); if (contained != strapContained || ownContainer != strapContainer) { buckle.TryUnbuckle(buckle.Owner, true); return; } if (!contained) { buckle.ReAttach(strap); } }