явно не так. При смерти игрока вместо перезагрузки сцены, мне нужно вернуть персонажа в его стартовую позицию. Для этого я делаю переменную startPos и в Awake записываю туда позицию игрока. При столкновении я перемещаю игрока обратно в стартовую позицию, но ничего не происходит, игрок снова появляется на месте своей "смерти". В условие заходит. Дебаг показывает, что transform.position равняется startPos, но на деле это не так. Почему так?
У тебя в переменной сохраняется ссылка на трансформ позишн тоесть при смерти в переменной его текущая позиция
Нет. Я же записываю туда позицию ПРИ ЗАПУСКЕ игры, а не при столкновении. И дебаг мне показывается, что startPos это та позиция, которая мне нужна
Бро выведи в дебаг лог 2 переменные , трансформ поз и старт поз в методе коллайда и скинь сюда
Контекст асинков не менялся? Ты мог словить исключение на вызов в другом потоке, но не увидеть его в логе. Соответственно, код позиции тоже не сработает. Как именно происходит запуск OnControllerColliderHit?
Это монобех метод, который работает почти аналогично OnCollisionEnter
В монобехе нет такого метода
Обсуждают сегодня