How to get transform.rotation of an object in a variable based on parent object NOT global?

I recently started a new project in Unity and I’ve had a lot of experience with the program but I still have A LOT to learn, so I’m working on my character and I’ve got mouse orbit on the head, which has the camera attached to it (it’s first person) and I’m trying to get the body to rotate with the head when the head gets to a certain angle, kinda like in minecraft when you go into third person, so i tried using sendmessage to the body to make it rotate every time the x variable in mouseorbit hits a certain value, but that didn’t work because it uses the global rotation, so i made a float called realX, but i can’t figure out how to get it to use the x rotation based on the parent, like it shows in the inspector. oh, and i java

Each transform component has position, rotation, and scale. You can get or set this information in terms of “global space” (which ignores the parent) or “local space” (which is relative to the parent). It may seem a bit tedious to read so many manual pages, but the transform is one of Unity’s most important component types, so it’s worth some research.

In particular, the position, rotation, and lossyScale fields refer to global space, while the localPosition, localRotation, and localScale fields refer to local space.

So, if you’re currently checking or setting transform.rotation, you might instead try setting transform.localRotation.

Don’t forget that it’s sometimes easier to use the transform’s Translate and Rotate functions. Both work in local space by default, but can be told to work in global space.