Передвижение даммера к герою:
(+1х за цикл = 3000 за 5 мин.) (утечек нет)
раскрыть
Расталкивание противников героем:
(+1х за цикл = 15000 за 5 мин., при нахождении юнитов счётчик хендлов взлетает)
раскрыть

Особо заметных утечек не видно. Но надо BJ-function раскрыть и посмотреть не утекают ли локалки. К примеру выбор юнитов группу вокруг точки или offsets. Все эти оффсеты создают Location, которые ты не удаляешь (см. код ниже)
function GetUnitsInRangeOfLocMatching takes real radius, location whichLocation, boolexpr filter returns group
    local group g = CreateGroup()
    call GroupEnumUnitsInRangeOfLoc(g, whichLocation, radius, filter)
    call DestroyBoolExpr(filter)
    return g
endfunction

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

может было лучше координаты юзать?
`
ОЖИДАНИЕ РЕКЛАМЫ...
27
Особо заметных утечек не видно. Но надо BJ-function раскрыть и посмотреть не утекают ли локалки. К примеру выбор юнитов группу вокруг точки или offsets. Все эти оффсеты создают Location, которые ты не удаляешь (см. код ниже)
function GetUnitsInRangeOfLocMatching takes real radius, location whichLocation, boolexpr filter returns group
    local group g = CreateGroup()
    call GroupEnumUnitsInRangeOfLoc(g, whichLocation, radius, filter)
    call DestroyBoolExpr(filter)
    return g
endfunction

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

может было лучше координаты юзать?
Принятый ответ
9
Не понятно что беспокоит, память течет или то что коллизий так много?
По 2 скрину не понятно как юнит попадает в переменную A_JukDetektPredmUnit, возможно когда в ней ничего нет, функция пытается переместить ничто, триггер прерывается и точки не освобождаются, и так каждый тик,
17
Коммунизм, не тот скрин залит, утечек там нет.
Вот нужный: (стало понятно, что из-за смещения)
В первом триггере утечка устранена, с помощью - статьи

Со вторым не получается. Найденная информация представлена частями, понятна разбирающимся. То, что нужно похоже здесь, но разобраться не вышло.
Загруженные файлы
Чтобы оставить комментарий, пожалуйста, войдите на сайт.