# How to rotate player back to 0, 0, 0 when there is no input.

I’m currently trying to make a drifting game. In this code, I have the car rotating slightly when pressing d or a. I want the car to rotate back to 0, 0, 0 when a and d are not being pressed. I put in the if statement at the bottom to do this but now the car doesn’t rotate at all. I have no idea why.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class rotate : MonoBehaviour
{
float rotSpeed = 100;

``````// Update is called once per frame
void Update()
{
if (Input.GetKey(KeyCode.D))
{
transform.rotation = Quaternion.RotateTowards(transform.rotation, Quaternion.Euler(0, 40, 0), rotSpeed * Time.deltaTime);
}

if (Input.GetKey(KeyCode.A))
{
transform.rotation = Quaternion.RotateTowards(transform.rotation, Quaternion.Euler(0, -40, 0), rotSpeed * Time.deltaTime);
}

if (Input.GetKey(KeyCode.D) == false || Input.GetKey(KeyCode.A))
{
transform.rotation = Quaternion.RotateTowards(transform.rotation, Quaternion.Euler(0, 0, 0), rotSpeed * Time.deltaTime);
}

transform.position = new Vector3(Mathf.Clamp(transform.position.x, 0, 0), transform.position.y, transform.position.z);
}
``````

}

if (Input.GetKey(KeyCode.D) == false || Input.GetKey(KeyCode.A))
//this part is the problem, as it is now it says if D is false and A is true, so it’s the same that rotates to the left

``````if (Input.GetKey(KeyCode.D) == false || Input.GetKey(KeyCode.A) == false)
//This should work
``````

But anyway it is better if you use the “if else” and “else” statement

``````if (Input.GetKey(KeyCode.D))
{
//turn right
}
else if (Input.GetKey(KeyCode.A))
{
//turn left
}
else
{
//set rotation to 0
}
``````