# Rotating object on it's Y axis from pos 180 to 0...

Hi there,

I’m trying and can’t figure out how to rotate my object from it’s position of 180 on it’s Y axis to position 0 on it’s Y axis. I can do it the other way around (from 0 to 180). I tried to play with the code I have but nothing happens. Any help would be much appreciated. Here’s my code for 0 to 180.

``````var LoadChapterPageCollider : GameObject;
var speed = 100.0;  // Degrees per second
private var myEuler = Vector3(0,0,0);
private var rotating = false;

var ChapterPage : GameObject;
var BlankPageLeft : GameObject;
var TheEnd : GameObject;

function Update () {

if (!rotating  && Input.GetMouseButtonDown (0)) {
var ray = Camera.main.ScreenPointToRay (Input.mousePosition);
var hit:RaycastHit;

if (Physics.Raycast (ray, hit, 20) && (hit.collider.name == "loadChapterPageCollider")) {
rotating = true;
}
}

if (rotating) {
myEuler.y = Mathf.MoveTowardsAngle(myEuler.y, 180, Time.deltaTime * speed);
ChangeIntro1();
if (myEuler.y >= 180) {
myEuler.y = 0;
rotating = false;
}

transform.eulerAngles = myEuler;
}
}

///Hide and show Pages
function ChangeIntro1(){

ChapterPage.SetActive (true);
TheEnd.SetActive (false);
}
``````

Your logic here is for a 0 to 180. You need to change the logic:

``````if (rotating) {
myEuler.y = Mathf.MoveTowardsAngle(myEuler.y, 0, Time.deltaTime * speed);
ChangeIntro1();
if (myEuler.y <= 0) {
myEuler.y = 0;
rotating = false;
}
``````

Plus you need to be absolutely sure that myEuler.y represents the ‘y’ rotation of your object when you start your rotation.

If you want a smooth rotation and easy implementation use iTween engine. iTween for Unity by Bob Berkebile (pixelplacement)