Добавлен PT153
Столкнулся с ещё одним мемом варкрафта.
При создании юнита я добавляю их массив.
Далее я всех юнитов из массива выбираю через группу, прохожусь по ней через цикл, для каждого юнита вызываю функцию Sell, что удаляет юнита из массива, самого юнита, а также проделывает такую же операцию над ещё одним юнитом из массива.
Проблема в том, что удалённый юнит из массива считается живым при доставании его из группы и имеется риск удалить уже удалённого юнита.
А почему так? Ведь все действия делаются последовательно.
Карта.
При создании юнита я добавляю их массив.
Далее я всех юнитов из массива выбираю через группу, прохожусь по ней через цикл, для каждого юнита вызываю функцию Sell, что удаляет юнита из массива, самого юнита, а также проделывает такую же операцию над ещё одним юнитом из массива.
Проблема в том, что удалённый юнит из массива считается живым при доставании его из группы и имеется риск удалить уже удалённого юнита.
А почему так? Ведь все действия делаются последовательно.
Карта.
Принятый ответ
Нужна задержка перед проверкой, жив ли юнит, после функции RemoveUnit. Хотя бы 0.00 секунд.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
prog:
8gabriel8: Совершенно верно.
А вот после KillUnit() функция UnitAlive() сразу же возвращает false.