Hello there! I was trying to make a character rotate in the direction that the player moves. However when I set the rotation, it just sets the rotation to either 180 or 0 (only “w” actually sets the rotation i want it to).
if (Input.GetKey("w"))
{
transform.Translate(0, charSpeed * Time.deltaTime, 0);
walking = true;
animTimer = 5.0f;
transform.rotation = new Quaternion(transform.rotation.x, transform.rotation.y, 0, 0);
}
if (Input.GetKey("s"))
{
transform.Translate(0, -charSpeed * Time.deltaTime, 0);
walking = true;
animTimer = 5.0f;
transform.rotation = new Quaternion(transform.rotation.x, transform.rotation.y, 270, 0);
}if (Input.GetKey("d"))
{
transform.Translate(charSpeed * Time.deltaTime, 0, 0);
walking = true;
animTimer = 5.0f;
}
if (Input.GetKey("a"))
{
transform.Translate(-charSpeed * Time.deltaTime, 90, 0);
walking = true;
animTimer = 5.0f;
}
Thank you in advance to anyone who can help me out!