![]() |
присоветуйте
Делаю игру и поневоле встал один вопрос:
Главный герой бегает и кидает "бобмы", до 10 штук одновременно на локации. Бегают там всякие жуки, монсты, их тоже немало. Когда взрывается бомба, доллжен умирать тот подпадает под радиус. Мне кажется, что выглядеть это должно как перебор всех возможных монстров, с целью проверки совпадения их координат с координатами бомбы(+радиус). Програмно должно выглядеть примерно так: (скрипт помещается в бомбу) for i=1;i=99;i++ { if (this.hitTest(_root['monstr'+i) { ...}} if (this.hitTest(_root.player) { ...} for i=1;i=99;i++ { if (this.hitTest(_root['wall'+i]) { ...}} и т.д. и т.д. Это все работеат. Но скрипт получается огромным и тормозным. Кто может предложить что-нить похитрее? |
может, есть смысл написать диспетчер, отслеживающий картинку централизованно, снаружи.
или, например, механизм в бомбе сделать как прототип или класс-- проверено, так скрипт меньше памяти жрет. |
если бомба убивает всех в радиусе, то можно просто растояние от бомбу до цели брать и сравнивать с радиусом.
|
посмотреть бы... так можно долго пальцем в небе ковырять ;)
|
Вложений: 1
Вот, гляньте. Монстров еще нет, но препятствия и сам себя он убивает). В библиотеке нада выбрать bomb. Весь скрипт на 15ом кадре. И вообще оцените сделанное, мож не стоит и мучатся :) .
|
Цитата:
|
Цитата:
|
еще можно упростить вычисления. если разница по одной из координат меньше радиуса, то можно и растояние не вычислять :)
|
мдяя. а если на карте будет, к примеру, 10000 обьектов... ))
|
Цитата:
|
| Часовой пояс GMT +4, время: 16:31. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.