Как убрать утечку в этом триггере?

Принятый ответ

После создания юнита нужно удалить последнюю созданную группу. В Custom Script.
call DestroyGroup(bj_lastCreatedGroup)
Если же есть JNGP, то там есть функция по удалению группы.

Также нужно создать переменную TempLocation, перед созданием юнита в неё записывать позицию, где хочешь создать юнита, а после создания удалять эту позицию.

А ещё, это не сработает, как ты хочешь. После 270 секунд триггер начнёт выполнятся, "Тип исследуемой технологии" будет ничем, таким образом, выражение в "Тогда" не выполнится.
Нужно создать отдельный периодический таймер для каждого игрока (то есть массив таймеров), при завершении исследования, стартануть таймер для игрока. Сделать триггер, срабатывающий на завершение таймера, который и будет создавать юнита.
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
19
5 лет назад
2
Похожие вопросы:

ответ
не правильно
ты обнулил переменную а потом удалил точку которая в переменной
а так как переменная пустая то ты ничего не удалил
и локалку плохо юзаеш
лучше
local location l=GetUnitLoc(GetTriggerUnit())
так сразу занесёшь в неё позицию юнита который вошёл в область
короче удели хотяб пол часа на это, это , это и вот это
ответ
Ты создаешь в "Trig_init_Conditions" группу которую потом не удаляешь.
Если вкратце: сохрани группу в переменную и после подсчитывания количества юнитов в ней -- удаляй ее.
ответ
quq_CCCP, Ну я на хайве видел полуджассовый вампиризм. Так мне и нужно вручать при замахе, чтоб если героя диспелят он вампиризм при атаке вернул. А утечку показывает, как я атакую, сразу хендл на один повышается. Может руна не удаляется?
ClotPh, Вообще не понял о чём ты.
Решил проблему, утечка возникала из -за не удаления руны, она почему-то не удаляется изнутри триггера, создал отдельный для удаления и нет утечки.
ответ
погуглите anti leak library

2
28
5 лет назад
2
После создания юнита нужно удалить последнюю созданную группу. В Custom Script.
call DestroyGroup(bj_lastCreatedGroup)
Если же есть JNGP, то там есть функция по удалению группы.

Также нужно создать переменную TempLocation, перед созданием юнита в неё записывать позицию, где хочешь создать юнита, а после создания удалять эту позицию.

А ещё, это не сработает, как ты хочешь. После 270 секунд триггер начнёт выполнятся, "Тип исследуемой технологии" будет ничем, таким образом, выражение в "Тогда" не выполнится.
Нужно создать отдельный периодический таймер для каждого игрока (то есть массив таймеров), при завершении исследования, стартануть таймер для игрока. Сделать триггер, срабатывающий на завершение таймера, который и будет создавать юнита.
Принятый ответ
4
12
5 лет назад
4
Я никак не вижу что ты там сделал,так что не могу обьяснить.
2
28
5 лет назад
2
Я никак не вижу что ты там сделал,так что не могу обьяснить.
Скриншот же есть.
0
2
5 лет назад
0
PT153, вообще-то триггер рабочий, там же написано выполнить действия триггера игнорируя условия.
0
28
5 лет назад
Отредактирован PT153
0
вообще-то триггер рабочий, там же написано выполнить действия триггера игнорируя условия.
Проигнорировать условия ТРИГГЕРА, а не условия в действиях триггера.

Даже если вынести условие в условия триггера, работать не будет, потому для нового вызова Игрок триггера будет ничем.

Даже если вынести условие в условия триггера, работать не будет, потому для нового вызова Игрок триггера будет ничем.
Проверил, всё будет работать, но условие в действиях всё же будет выполнятся, а это лишнее. Потому лучше вынести его в условия триггера, потому что тогда оно не будет выполняться.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.