destr
offline
Опыт:
1,758Активность: |
Отлов хендлов юнитов
Суть проблемы: нужно отловить всех юнитов на карте с определенным ID и сохранить их хендлы, для дальнейшего использования. Я так понял это делается через ForGroup, но что-то у меня ничего не вышло+боюсь вагон утечек притянуть с группами. Кто сможет помочь с функцией, желательно на jass. |
26.09.2013, 22:29 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Nerevar
I'll be back!
offline
Опыт:
18,352Активность: |
ну создаешь группу,в неё берешь всех юнитов в игровой зоне,проходишься форгруппом
в функции форгруппа проверяешь и делаешь нужные действия if GetHandleId(GetFilterUnit())==Tvoi_Id then call Tralala(...) endif потом чистишь и удаляешь группу |
26.09.2013, 22:47 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hanabishi
COOL STATUS
offline
Опыт: отключен
|
Nerevar, лучше отсеять юнитов фильтром при добавлении, чем толкать условие в форгруп, реально быстрее
Hanabishi добавил:
Вот так
В функцию GetHandlesOf подаётся нужный id, а она записывает хендлы юнитов в массив handles и их количество в count. |
26.09.2013, 23:09 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,184Активность: |
сразу вопрос а собственно зачем массив когда с темже успехом можно их просто закатать в группу |
27.09.2013, 07:00 | #4
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
destr
offline
Опыт:
1,758Активность: |
Hanabishi спс за помощь. Теперь система почти готова осталось немного оптимизировать код и доделать 1 фичу и можно выложить на всеобщий суд |
27.09.2013, 19:14 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|