Проблема заключается в том что при получении урона(любого) и нажатия пробела(прыжка) во время полученного урона, персонаж подпрыгивает очень высоко, а надо что бы при получении урона персонаж только отталкивался и не была возможность использовать прыжок когда персонажу нанесен урон.
Метод прыжка :
private void Jump()
{
rigidbody.AddForce(transform.up * jumpForce, ForceMode2D.Impulse);
}
Метод получения урона ( и отталкивании персонажа при получении урона) :
public override void ReceiveDamage()
{
Lives--;
rigidbody.velocity = Vector3.zero;
rigidbody.AddForce(transform.up * 6.0F, ForceMode2D.Impulse);
Debug.Log(lives);
}
Метод проверки на isGrounded (стоит ли перс. на земле перед прыжком)
private void CheckGround()
{
Collider2D[] colliders = Physics2D.OverlapCircleAll(transform.position, 0.3F);
isGrounded = colliders.Length > 1;
if (!isGrounded) State = CharState.Jump;
}