@Dark8090

[Unity2D]Как исправить [скрипт]прыжок во время получения урона?

Проблема заключается в том что при получении урона(любого) и нажатия пробела(прыжка) во время полученного урона, персонаж подпрыгивает очень высоко, а надо что бы при получении урона персонаж только отталкивался и не была возможность использовать прыжок когда персонажу нанесен урон.

Метод прыжка :
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;
    }
  • Вопрос задан
  • 53 просмотра
Пригласить эксперта
Ответы на вопрос 1
zZaKko
@zZaKko
Люблю стратегии и Unity.
Добавь еще bool переменную и при получении урона делай ее true, а в методе прыжка проверяй ее на false. И при столкновении с землей назад делай ее false.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы