Прыжок можно повторить до приземления
Я добавил в свой проект механику прыжка, реализованную вот так:
if (Input.GetKeyDown(KeyCode.Space))
{
rb.AddForce(0, JumpPower * Time.deltaTime, 0);
}
Проблема заключается в том, что можно прыгнуть до того как игрок приземлится, тем самым поднимаясь слишком высоко. Я бы хотел это исправить.
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
Обычно заводят либо булеву переменную, либо метод IsGrounded, который отвечает за то, чтобы возвращать булево значение, что персонаж приземлился. Соответственно в других методах идёт проверка if (!IsGrounded()) { return; } или наоборот if (IsGrounded()) { КАКАЯ-ТО ЛОГИКА }
Как будет реализован этот самый метод - зависит от вас самих. Например должно отслеживаться, что коллайдер игрока вошёл в триггер земли или в объект с тегом ground и т.д.