@Anonymous_toaster

Игра js canvas столкновения. Как остановить движение игрока?

Есть проверка столкновений персонажа и ящика.
if ((agent.x + agentImg.width >= obj.x) && (agent.x <= obj.x + wallImg.width) && (agent.y + agentImg.height >= obj.y) && (agent.y <= obj.y + wallImg.height))

//agent - персонаж, obj и wallImg это ящик
Сама проверка работает, вот только, что нужно делать чтобы персонаж не проходил, итак, вот то что пробовал
1. return. Работает, но движение останавливается так, что персонаж не может двигаться
2. Откидывать персонажа. Работает, но только с той стороны, куда откидывает, если подойти с другой, видна анимация откидывания
3. Откидывание + return. то же самое, что и 2
4.Сделать переменные, равные позиции игрока по x y - скорость игрока. А при столкновении назначать его x и y этими переменными. Работает только с левой стороны, сверху и низу немного странно, а с правой он едет по ящику как по эскалатору на левую сторону.

Какие ещё есть варианты/ идеи как это сделать???
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ответы на вопрос 2
demon416nds
@demon416nds
Разработчик на чем попало
Код в студию
Там явно есть ошибки
Ответ написан
Комментировать
krdpsr
@krdpsr
loading...
используй готовую библиотеку
например matter.js хороша

нет смысла самому писать всю физику
кроме случая когда ты в этом крут
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 05:01
999999 руб./за проект
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект