Игрок падает нормально до того как его луч касается пола, а после касание игрок начинает медленнее падать
Вот код
private Rigidbody2D rb;
public float spedd,JumpForce;
[SerializeField] private string layerName;
[SerializeField] private int ColGameObjectLay;
[SerializeField] private bool Jump = true, keyCodeMovement = true;
[SerializeField] private LayerMask layMaskRay;
[SerializeField,Range(0,2)] private float RayDistace;
void Start()
{
rb = gameObject.GetComponent<Rigidbody2D>();
}
void FixedUpdate()
{
if (keyCodeMovement == true)
{
MovementPlayer("WASDHorizontal","WASDVertical");
}
else
{
MovementPlayer("Horizontal","Vertical");
}
}
public void MovementPlayer(string Horizontal , string Vertical)
{
RaycastHit2D hit2D = Physics2D.Raycast(transform.position, -Vector3.up, RayDistace, layMaskRay);
if (hit2D.collider != null)
{
Debug.DrawRay(transform.position, -Vector3.up * RayDistace, Color.green);
rb.velocity = new Vector2(Input.GetAxis(Horizontal) * spedd * Time.deltaTime, Input.GetAxis(Vertical) * JumpForce * Time.deltaTime);
}
else
{
Debug.DrawRay(transform.position, -Vector3.up * RayDistace, Color.red);
rb.velocity = new Vector2(Input.GetAxis(Horizontal) * spedd * Time.deltaTime, rb.velocity.y);
}
}