Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.05;
Скачать: CL | DM;

Вниз

дальность хода   Найти похожие ветки 

 
MANGOL   (2004-07-31 16:32) [0]

Привет!
У меня такая проблема:
в пошаговой стратегии при выделении юнита нужно рассчитать координаты всех точек(клеток), в которые он может добраться за этот ход. у юнита есть moves, местность нескольких типов - с разной проходимостью.
бился над этой фигнёй целый день. моя прога вроде считает, но не точно (приблизительно :) ).. урезает всё время пару клеток.

может, кто-нть знает какой нибудь эффективный способ?
или хотя бы в каком направлении копать..


 
Timedrops ©   (2004-07-31 17:16) [1]

Поищи метод волновой трассировки - наиболее простой метод
всегда практически работает, обходит препятствия.
Получи сначало весь путь в масив. Каждый элемент
массива представь например в виде
record
x,y : integer;
land: integer; //это будет указывать сколько ходов потеряет юнит
end;

всё. подсчитывай последовательно куда же он по этому пути дотопает.

А если ны хочешь закрасить всю область вокруг юнита куда от дойти
может, то тогда, обработай последовательно все точки вокруг твоего
юнита по радиусу=мах кол-ву ходов за раз.


 
MANGOL   (2004-07-31 19:25) [2]

THANX!
волновая трассировка - это чюдо..
правда, как оказалось, я именно её и использовал. Просто в одном месте вместо "<" поставил ">"  :)



Страницы: 1 вся ветка

Текущий архив: 2004.12.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.048 c
4-1098606535
Ashle
2004-10-24 12:28
2004.12.05
Как перезапустить сессию Application ? сэмулировать перезапуск


1-1100881842
VitGun
2004-11-19 19:30
2004.12.05
"Invalid pointer operation" при закрытии.


14-1100510601
Гайцы-Газазад
2004-11-15 12:23
2004.12.05
Обращение к любителям политических диспутов


14-1100534465
vasilii
2004-11-15 19:01
2004.12.05
profiler для Delphi7


1-1100772457
keymaster
2004-11-18 13:07
2004.12.05
Проблема с округлением