using UnityEngine; public class PlayController : MonoBehaviour { public Vector2 speed = new Vector2(50, 50); private Vector2 movement; Rigidbody2D rigidbody2D; public Vector2 jumpHeight; void Awake() { rigidbody2D = GetComponent(); GetComponent().AddForce(jumpHeight, ForceMode2D.Impulse); } void Update () { float inputX = Input.GetAxis("Horizontal"); float inputY = Input.GetAxis("Vertical"); movement = new Vector2 (speed.x * inputX, speed.y * inputY); } void FixedUpdate() { rigidbody2D.velocity = movement; } }
Должно быть, чтобы игрок не мог "лететь" в воздухе при нажатии на "вверх", а мог только подпрыгнуть один раз. Конечно, когда отпускаю клавишу "вверх", игрок резко падает. Rigidbody2D на игроке висит… И так голову ломаю, и сяк - не понимаю, где косяк.