Inversion of an object's (door's) rotation along the Z-axis in Blueprint

I have a Blueprint where a Line Trace for Objects applies to all actors in the Blueprint, allowing interaction with them. I encountered a problem when creating a cabinet with two doors that open in opposite directions: one door opens by 90 degrees, and the other by -90 degrees.

In my Blueprint, the logic is set up to add or subtract 90 units upon interaction. As a result, one door opens correctly, while the other opens inward. I’ve tried adjusting it in various ways, but nothing works—one door always opens inward, and I can’t fix it.

Is it possible to invert the Z-axis so that a 90-degree rotation in the other direction is also positive, but the door still opens outward? Essentially, I want the coordinates for the other mesh to be calculated with an inversion.

Is there a way to implement such logic without making significant changes?

One straightforward thing to do with no changes whatsoever is to tag the swinging doors as left / right. When interaction happens, query tags and invert values.

Another way is to flip the scale to -1.

Or use scene comps as hinge / pivot.

Or redesign the cabinet - hard to tell how exactly without knowing the current component hierarchy. For all we know, it may be a skeletal mesh.

1 Like

Nothing works for me anymore :frowning:
The logic goes all the way to Set Relative Rotation, and you can see the line entering it, but there’s no movement when I press the Interact button. Honestly, I’m exhausted from all these complications. I didn’t change anything—I just decided to experiment with your advice, it didn’t work, and then I simply reverted all the changes, but after that, nothing works anymore :frowning:
Without saving anything, I restarted the project, and everything remained exactly as it was before making changes, but it still stopped working

If you need help, post script and the component hierarchy of the offending actor.