Я сейчас делаю небольшую игру. Таким образом, квадрат - мой игрок, вы можете двигаться только если вы на платформе. Движение работает отлично, но когда я берусь за другую платформу, квадрат вращается и падает на другую платформу, но с другой стороны. Поэтому, когда я нажимаю «w», он должен прыгать, но вместо этого (например, если он лежит на правой стороне) он будет go вправо. Поэтому мой вопрос: как переместить квадрат, не обращая внимания на то, с какой стороны он лежит. поэтому независимо от того, с какой стороны лежит квадрат, когда я нажимаю «w», я хочу всегда прыгать. Вот мой код Move:
using UnityEngine;
public class Player: MonoBehaviour
{
public float PlayerMovementSpeed;
void OnCollisionStay2D(Collision2D collision)
{
if (collision.collider.tag == "Platform")
{
if (Input.GetKey("w"))
{
transform.Translate(0, PlayerMovementSpeed, 0);
}
if (Input.GetKey("a"))
{
transform.Translate(-PlayerMovementSpeed, 0, 0);
}
if (Input.GetKey("d"))
{
transform.Translate(PlayerMovementSpeed, 0, 0);
}
}
}
}
Есть идеи? (Это 2D игра в Unity с использованием C#)