@yraiv

Персонаж стоит на месте, но сразу срабатывают exit и enter 2d colilsion?

Персонаж падает на блоки, на которых висит тег земли, но как только он коснётся их - должно включится разрешение на прыжок, а если решит спрыгнуть или подпрыгнуть, то выключится. Когда запускаю программу в консоли срабатывает сначала, что он вошёл в зону и прыжок разрешен, но тут же показывает, что покинул( хотя он стоит на месте)
код:
void OnCollisionEnter2D(Collision2D coll)
    {

        if (coll.gameObject.tag == "Ground") 

        {
            groundCheck = true;
            Debug.Log("Прыжок готов");

        }
}
 void OnCollisionExit2D(Collision2D coll)
    {
        if (coll.gameObject.tag == "Ground") 

        {
            groundCheck = false;
            Debug.Log("Прыжок выключен");

        }
    }
  • Вопрос задан
  • 32 просмотра
Пригласить эксперта
Ответы на вопрос 2
freeExec
@freeExec
Участник OpenStreetMap
Персонаж падает на землю и по началу "влетает в неё" - получается коллизия. Затем физика его "выталкивает" и он теперь стоит на земле - коллизия заканчивается.
Ответ написан
@walfer2020
Начинающий программист
Можно сделать чуть по другому
https://www.youtube.com/watch?v=5vhMXhic2S8&t=1072s
где то на 20й минуте то что вам нужно
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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