So I have an enemy that follows the player, with a child object that is initially aligned exactly with the parent, that I want to constantly oscillate back and forth in the parent’s forward 180 degree arc.
I have it working, but its using world space no matter what I try. Here’s how I’m doing it:
function Update(){
if(reverse){
transform.Rotate(-transform.up*Time.deltaTime*30.0, Space.Self);
if(transform.rotation.eulerAngles.y < 90.0)
reverse = false;
}
else{
transform.Rotate(transform.up*Time.deltaTime*30.0, Space.Self);
if(transform.rotation.eulerAngles.y > 270.0)
reverse = true;
}
}
I’ve tried a multitude of combinations, between changing transform.up to transform.parent.up, Space.World, etc., to no avail 
Waz
2
Sounds like you want to use localRotation, not rotation.