Что будет лучше для триггерного передвижения юнита:
  1. Каждый раз создавать новую локацию по полярному смещению, а старую удалять
  2. Двигать уже созданную локацию (MoveLocation), а в конце удалить

LastUchiha, зачем прошлую удалять, перемещай темповую и работай с её координатами
`
ОЖИДАНИЕ РЕКЛАМЫ...
22
Не использовать локации вообще, а юзать х и у ) и функции SetUnitX и SetUnitY
Ответы (5)
11
EugeAl, вот не надо говорить что локации настолько плохи...
22
LastUchiha, скажем так, бесполезны и память занимают, и ещё их обнулять надо, единственное что из них можно вытащить - это GetLocationZ
Ну и спец наработки вроде HandleCounter и синхронизации в мультиплеере
В остальном х у вполне справляются)
31
LastUchiha, а вот и надо! А если у тебя гуймуй головного мозга, то зачем ты вообще задумываешься о том что лучше?
11
nazarpunk, я понимаю что x и y юзать лучше, что локации - лишние хэндлы и т.д.
Мне просто интересно как лучше делать в случае если делаешь на локациях.
31
Мне просто интересно как лучше делать в случае если делаешь на локациях.
Не делать на локациях.
15
Лучше использовать полярное смещение с XY координатами напрямую. Вот код этой BJ функции:
function PolarProjectionBJ takes location source, real dist, real angle returns location
    local real x = GetLocationX(source) + dist * Cos(angle * bj_DEGTORAD)
    local real y = GetLocationY(source) + dist * Sin(angle * bj_DEGTORAD)
    return Location(x, y)
endfunction
Можно же просто брать x и y.
Ответы (2)
11
Ydav, ну по сути тут же локация создаётся каждый раз новая? Но можно не возвращать ничего, а заранее создать локацию, и в подобной кастомной функции выполнять MoveLocation. Это же должно быть оптизированней?
15
LastUchiha, если очень хочется именно двигать, то проблем быть не должно. Я отдельно считал x\y для полярного смещения, потому что мне нужны были только x\y
28
Создай темповую и работай с ней, не надо её удалять
Ответы (2)
11
rsfghd, всё равно же в конце каста способности нужно удалять, ибо если я перезапишу локацию не удалив прошлую произойдет утечка.
28
LastUchiha, зачем прошлую удалять, перемещай темповую и работай с её координатами
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.