Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

getstatictilesarray

тут можно задать вопрос по скриптингу
Post Reply
nepopus
Novice
Novice
Posts: 121
Joined: 29.02.2012 23:45
Location: Москва
Contact:

getstatictilesarray

Post by nepopus »

Code: Select all

  for i := 0 to getstatictilesarray(minx, miny, maxx, maxy, 1, 1339, foundtilesarray) do
  begin
    if isworldcellpassable(getx(self), gety(self), getz(self), foundtilesarray[i].x, foundtilesarray[i].y, foundtilesarray[i].z, 1) then
        newmovexy(foundtilesarray[i].x, foundtilesarray[i].y, false, 0, false);
  end;
найденные координаты нарезаются на линии по Y, начиная с наименьших Х и Y.
можно ли организовать чередование линий с наименьшего/наибольшего Y. Чтобы, к примеру, не ходить лишнее расстояние в шахте? Надеюсь объяснил доходчиво :)
Заранее благодарен.
<( o_O<) <( O_O )> (>O_o )>
nah nah
Developer
Developer
Posts: 414
Joined: 13.07.2011 11:23
Contact:

Re: getstatictilesarray

Post by nah nah »

попробуй перебор массива на самый ближний к чару тайл, или отсортируй массив так как тебе больше нравится
CFA
Developer
Developer
Posts: 492
Joined: 20.04.2006 6:03
Contact:

Re: getstatictilesarray

Post by CFA »

Добавлю, что isworldcellpassable проверяет проходимость только соседнего с чаром тайла (+-1) для более дальних тайлов, функция вернет неправильный результат.
nepopus
Novice
Novice
Posts: 121
Joined: 29.02.2012 23:45
Location: Москва
Contact:

Re: getstatictilesarray

Post by nepopus »

nah nah wrote:попробуй перебор массива на самый ближний к чару тайл, или отсортируй массив так как тебе больше нравится
создать большой массив, в который записывать теже дочки в другой очередности? попробую, спс.
CFA wrote:Добавлю, что isworldcellpassable проверяет проходимость только соседнего с чаром тайла (+-1) для более дальних тайлов, функция вернет неправильный результат.
На разных концах шахты определяет нормально, а там 20 клеток.
<( o_O<) <( O_O )> (>O_o )>
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: getstatictilesarray

Post by Vizit0r »

неправильный результат будет, если Z отличается. если по всей проверяемой поверхности Z одинаково - будет нормально.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Post Reply