In my Update() method of my Player movement script, there is an if statement used to trigger further movement methods (it’s a turn based, isometric 2D game). But I want my player to only rotate when you press the corresponding key, however, if you press it once more, it will do the actual movement. My problem is, that when I press the key, it will also give true value to the if statement whithin the if statement. I want to rotate the player when you press the direction key, if you press the same one again directly after, I want the player to move. Here’s a piece of the script for reference.
Thank you for answers
if (Input.GetKeyDown(KeyCode.D))
{
transform.rotation = Quaternion.Euler(0, 0, 270);
if(Input.GetKeyDown(KeyCode.D))
{
TryToMove(horizontal, vertical, out hit);
}
}