Правильно ли я обнуляю переменную юнит-массив EfectRudnik(24) через цикл?
Для каждого А от 1 до 24 делать:
Личный сценарий: call RemoveUnit (udg_EfectRudnik [GetForLoopIndexA()] )
Личный сценарий: call RemoveUnit (udg_EfectRudnik [GetForLoopIndexA()] )
В случае этой карты трудно прописывать обнуление для каждой переменной отдельно, потому что массивы объемные и их много. Решил попробовать сократить через циклы.
Принятый ответ
Ты не обнуляешь переменную, а удаляешь юнита из игры. Запись верная.
Обнуление будет таким.
Обнуление будет таким.
set udg_EfectRudnik[bj_forLoopAIndex] = null
Но нет смысла обнулять глобалки.
Группы - это тоже объект, как и юнит, вот только юнит имеет визуальную составляющую (его видно глазами), а группа нет.
Изначально массив групп создаёт группу (новая группа всегда пустая) для ячеек 0, ..., размер_массива (указывается в настройках переменной). Во всех остальных ячейках групп просто нет, там нули.
Если группа больше не нужна, её нужно уничтожить (call DestroyGroup(g)), в GUI такого действия нет. После этого группы не существует. Если попытаться что-то добавить в эту группу через переменную, что всё ещё на неё ссылается, ничего не произойдёт.
GUI действия типа "Выбрать юнитов в области" создают новую группу каждый раз, что может вызывать утечки. Потому такие вызовы лучше всего записывать в переменную, делать необходимые действия, а потом уничтожать (не очищать!).
Изначально массив групп создаёт группу (новая группа всегда пустая) для ячеек 0, ..., размер_массива (указывается в настройках переменной). Во всех остальных ячейках групп просто нет, там нули.
Если группа больше не нужна, её нужно уничтожить (call DestroyGroup(g)), в GUI такого действия нет. После этого группы не существует. Если попытаться что-то добавить в эту группу через переменную, что всё ещё на неё ссылается, ничего не произойдёт.
GUI действия типа "Выбрать юнитов в области" создают новую группу каждый раз, что может вызывать утечки. Потому такие вызовы лучше всего записывать в переменную, делать необходимые действия, а потом уничтожать (не очищать!).
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Обнуление будет таким.
Изначально массив групп создаёт группу (новая группа всегда пустая) для ячеек 0, ..., размер_массива (указывается в настройках переменной). Во всех остальных ячейках групп просто нет, там нули.
Если группа больше не нужна, её нужно уничтожить (call DestroyGroup(g)), в GUI такого действия нет. После этого группы не существует. Если попытаться что-то добавить в эту группу через переменную, что всё ещё на неё ссылается, ничего не произойдёт.
GUI действия типа "Выбрать юнитов в области" создают новую группу каждый раз, что может вызывать утечки. Потому такие вызовы лучше всего записывать в переменную, делать необходимые действия, а потом уничтожать (не очищать!).