Page 1 of 1

Пишем новую ходилку...

Posted: 2006-12-05 19:33:09
by Savage
Вопрос простой, чего больше в игре, проходимых тайлов или непроходимых?

И если кто уже смотрел, выкладывайте диапазон проходимых/непроходимых тайлов.

Posted: 2006-12-05 19:42:35
by omi4
тут все проходимые их меньше, чем не проходимых..

Code: Select all

sub IsPass(X,Y) ; 4 - 2539
   
   if UO.PrivateGetTile(X, Y, -1, 3, 25) || UO.PrivateGetTile(X, Y, -1, 51, 63) || UO.PrivateGetTile(X, Y, -1, 113, 140) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 172, 219) || UO.PrivateGetTile(X, Y, -1, 232, 235) || UO.PrivateGetTile(X, Y, -1, 239, 243) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 248, 251) || UO.PrivateGetTile(X, Y, -1, 256, 259) || UO.PrivateGetTile(X, Y, -1, 264, 267) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 282, 289) || UO.PrivateGetTile(X, Y, -1, 298, 309) || UO.PrivateGetTile(X, Y, -1, 321, 379) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 420, 440) || UO.PrivateGetTile(X, Y, -1, 476, 499) || UO.PrivateGetTile(X, Y, -1, 513, 542) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 578, 586) || UO.PrivateGetTile(X, Y, -1, 622, 700) || UO.PrivateGetTile(X, Y, -1, 804, 1740) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 1758, 1770) || UO.PrivateGetTile(X, Y, -1, 1779, 1779) || UO.PrivateGetTile(X, Y, -1, 1881, 1886) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 1801, 1805) || UO.PrivateGetTile(X, Y, -1, 1813, 1820) || UO.PrivateGetTile(X, Y, -1, 1831, 1833) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 1843, 1850) || UO.PrivateGetTile(X, Y, -1, 1861, 1864) || UO.PrivateGetTile(X, Y, -1, 1873, 1876) then
      return true
   endif
   if UO.PrivateGetTile(X, Y, -1, 1885, 1888) || UO.PrivateGetTile(X, Y, -1, 1946, 1969) || UO.PrivateGetTile(X, Y, -1, 2500, 2539) then
      return true
   endif
   return false
end sub

Posted: 2006-12-06 08:58:31
by Destruction
Какой алгоритм планируется использовать ?

Я так думаю, забацать какой-нибудь D* или A*, слегка переделать + обход мелких не найденных препятствий и будет кулл..

Posted: 2006-12-06 09:45:35
by Savage
Еще не определился. Идея простая, трассируем маршрут до точки назначения, если препядствий нет то го, если есть, то маршрут разбтвается на несколько промежуточных точек.

Posted: 2006-12-06 18:23:06
by Destruction
Логично..

А как насчёт трассировать оптимальный маршрут ?

Я же не просто так про алгоритм спросил..

Posted: 2006-12-06 19:09:02
by GimFlex
давайте ребят мы в вас верим