Strange rotation values

Hi there,

I am trying to make an Actor move forward relatively to its rotation. It’s in 2D, so I need only X and Z axes. My soultion is to multiply the forward velocity by sinus of Pitch angle for axis X and by cosinus for axis Z. Now the actual problem: I have an Actor with world rotation = FRotator(0.0f, 0.0f, 0.0f), and a Scene Component attached to it with world rotation = FRotator(0.0f, 180.0f, 0.0f); In editor all those values hold up, but when I call GetComponentRotation() on the mentioned Scene Component the value I get is FRotator(-180.0f, 0.0f, -180.0f) (± some float precision errors, but that’s not important). Which makes no sense and makes my solution completely wrong. Why is this function behaviouring so weirdly and how do I get it right?

EDIT:
Also, whose idea was it to make the rotation’s values in order of Roll, Pitch, Yaw in the editor, but Pitch, Yaw, Roll in the FRotator constructor? Only creates further confusion IMO (this was not the source of the problem, however, I still don’t know the solution).