![]() |
Столкновения
Вложений: 1
Проблема в том, что когда player врезается в wall(Down, Left, Up, Right),то он не останавливается а продолжает проезжать, но как бы рывками, внизу вложен swf файл, подскажите что нужно изменить, что бы код заработал, Заранее благодарен.
Код AS3:
|
решение просто - надо проверять столкновение до того, как добавлять какие-либо значения к x и y
|
Спасибо, помогло, но выявилась проблема другого характера, теперь квадрат останавливается только при некоторых стенах, и некоторые простно игнорит, хотя название у стен одинаковое wallLeft(чисто как пример), что тут может быть????
|
Цитата:
|
Лучше бы проверяли с использованием растровой карты уровня, тогда стены хоть кисточкой рисовать можно и не нужно городить кучу "hitTestObject".
|
Цитата:
|
Берете положение и размеры вашего движущегося квадратика и с этими же свойствами отрисовываете кусочек карты под ним в битмапдату. Потом с помощью BitmapData.getColorBoundsRect проверяете, есть ли непрозрачные пиксели. В итоге, если есть (то есть квадратик наехал на стенку), вы получите Rectangle области пересечения, а значит будете знать, с какой стороны пересечение и насколько "глубоко".
Вот еще есть схожая тема: http://xitri.com/2008/09/29/simple-e...iew-part2.html |
Цитата:
Добавлено через 38 часов 4 минуты Up Up |
| Часовой пояс GMT +4, время: 17:11. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.