using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Move : MonoBehaviour
{
public Rigidbody2D rb;
[SerializeField]float speed = 0.10f;
[SerializeField]float Jump_Force = 2f;
[SerializeField]bool onGround = true;
[SerializeField]bool force;
// Start is called before the first frame update
void Start()
{
rb = GetComponent<Rigidbody2D>();
}
// Update is called once per frame
void Update()
{
var moveX = Input.GetAxis("Horizontal") * speed;
transform.Translate(moveX, 0,0, Space.World);
if (Input.GetKey(KeyCode.Space) && onGround == true)
{
rb.AddForce(Vector2.up * Jump_Force, ForceMode2D.Force);
}
if (Input.GetKeyDown(KeyCode.LeftShift) & Input.GetKey(KeyCode.A) )
{
rb.AddForce(Vector2.left * 10, ForceMode2D.Impulse);
}
if(Input.GetKeyDown(KeyCode.LeftShift) & Input.GetKey(KeyCode.D))
{
rb.AddForce(Vector2.right * -10, ForceMode2D.Impulse);
}
}
private void OnCollisionStay2D(Collision2D collision)
{
onGround = true;
}
private void OnCollisionExit2D(Collision2D collision)
{
onGround = false;
}
}
Вот в этом месте я хочу что бы персонаж резко сделал слеш\перекат в сторону, с ускорением.
}
if (Input.GetKeyDown(KeyCode.LeftShift) & Input.GetKey(KeyCode.A) )
{
rb.AddForce(Vector2.left * 10, ForceMode2D.Impulse);
Но он мало того, что не делает резкий рывок, так еще и бесконечно двигается в определенном направлении. Как сделать, чтобы рывок был коротким?