Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Способ расстановки группы юнитов в игре. (http://www.flasher.ru/forum/showthread.php?t=182027)

HorusWM 09.07.2012 22:12

Способ расстановки группы юнитов в игре.
 
Всем привет. Не могу найти способ задать позиции для юнитов, состоящих в одном взводе. Например, 10 человек должны стоять на небольших расстояниях друг от друга кучкой, но не цепочкой. Нужно, чтобы они стояли в случайных позициях, но не попадали друг на дружку. Фиксированными коробками и другими фигурками получается, но так, чтобы рандомно и без перекрытия друг друга, никак не выходит. Для примера, подобный способ используется в такой игре, как Dawn of War 2. Подскажите, пожалуйста, алгоритм или если есть у кого пример такого кода.

-De- 09.07.2012 22:33

Пусть у каждого юнита будет своё положение в коробке, к которому он будет идти, обходя препятствия и другие юниты. В DoW первых, кстати, оно глючит постоянно, так что задача та ещё %)

CyberDude 12.07.2012 21:22

Создайте двухмерный массив, в котором значением массива будет объект с координатами центра сектора как на шахматной доске, с шириной и высотой которые равны необходимому минимальному расстоянию между юнитами. Суммарная ширина и высота ячеек естественно не должна быть больше ширины и высоты сцены.
Рандомное расположение юнитов делается путём генерирования случайных чисел. Юниты буду раскиданны по сетке при обычном рандоме ближе к центру.

Также можно уменьшить ширину и высоту до половины, четверти, и т.д. минимального расстояния, но при генерации нужно тогда будет добавить проверку на отсутствие пересечений с полями других.


Часовой пояс GMT +4, время: 23:02.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.