Помните мой вопрос про детектор урона? Так вот, оказалось что утечка шла не из плавающего текста, а из действия указанного в заголовке. Как устранить эту утечку и насколько она страшна? Скрин функции прилагается.

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

Alexey103:
PT153, Вау, а я не знал. Этот вопрос был создан как раз для того чтоб найти способ избежать утечек из-за добавления события, а не для того чтоб вы писали очевидные вещи. Но пока, альтернативы ни на гуи ни на джасс никто не предоставил.
дык заноси их в группу, если юнит уже в группе то не добавляешь событие
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
17
6 лет назад
0
nvc123, Не нашел я статей на эту тему, может ты мне ссылку кинешь?
2
21
6 лет назад
2
2
26
6 лет назад
2
Alexey103:
PT153, Вау, а я не знал. Этот вопрос был создан как раз для того чтоб найти способ избежать утечек из-за добавления события, а не для того чтоб вы писали очевидные вещи. Но пока, альтернативы ни на гуи ни на джасс никто не предоставил.
дык заноси их в группу, если юнит уже в группе то не добавляешь событие
Принятый ответ
0
28
6 лет назад
Отредактирован PT153
0
Alexey103:
PT153, Вау, а я не знал. Этот вопрос был создан как раз для того чтоб найти способ избежать утечек из-за добавления события, а не для того чтоб вы писали очевидные вещи. Но пока, альтернативы ни на гуи ни на джасс никто не предоставил.
С чего Вы взяли, что создаётся утечка от добавления события? Об этом много статей, и, насколько мне известно, как только юнит умирает, все события, связанные с ним, удаляются.
Тем более Вам нужно это для всего 1 юнита! О какой утечке вообще речь?
Я указал на ошибку, из-за которой добавляется много одинаковых событий (а следом баги и лаги):
То, что делаете Вы, будет работать ужасно, так как событие будет добавляться каждый раз, когда юнит атакован, и триггер по созданию текста будет срабатывать столько раз, сколько событий.
Hate:
дык заноси их в группу, если юнит уже в группе то не добавляешь событие
Зачем, когда можно сделать так, как я? Юнит только 1 раз входит в область Вся карта. Также можно проверять с помощью CustomData.
0
17
6 лет назад
0
Hate, Невероятно, всё работает. Только не входящий в карту юнит а входящий в особую область. Просто гениально, и ещё раз просто.
0
28
6 лет назад
0
Alexey103:
Hate, Невероятно, всё работает. Только не входящий в карту юнит а входящий в особую область. Просто гениально, и ещё раз просто.
А чем моё решение не устраивает? И в группу добавлять не надо.
0
17
6 лет назад
0
PT153, Мне нужно это не для одного юнита. А для юнитов в области. И я проверил утечки были от того что добавлялись события.
0
28
6 лет назад
Отредактирован PT153
0
Alexey103:
Мне нужно это не для одного юнита. А для юнитов в области. И я проверил утечки были от того что добавлялись события.
Юнит входит в область Вся карта только 1 раз за игру, то есть событие Юнит получает урон добавляется только 1 раз. А в триггере, куда добавляется событие, есть условие (какое Вам нужно), при котором триггер будет срабатывать, как я и написал.
Триггер Init.
События - Юнит входит в Вся карта.
Условия - Тип юнита равно Манекен.
Действия - Добавить событие в триггер Maneken Боевая единица Вошедший юнит получает урон.
Триггер Maneken.
События - ИХ НЕТ.
Условия - Атакованный юнит находится в области (какая нужна).
Действия - Создать плавающий текст над Атакованный юнит (и прочее).
Всегда так делал, всё работало, и никаких утечек нет.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.