Добавлен SсRealm
Подскажите, каким образом перебераются добавленые в группу юниты?
Принятый ответ
call GroupEnumUnitsInRange( TempGroup, x, y, range, null )
loop
set u = FirstOfGroup( TempGroup )
exitwhen u == null
call GroupRemoveUnit( TempGroup, u )
if UnitAlive( u ) then
// something
endif
endloop
Если нужно сохранить юнитов в группе то
function Enum takes nothing returns nothing
call KillUnit( GetEnumUnit( ) )
endfunction
function Action takes nothing returns nothing
call GroupEnum..
call ForGroup( TempGroup, function Enum )
endfunction.
Помимо этого все действия можно провести и в булекспре:
function Filt takes nothing returns boolean
if UnitAlive( GetFilterUnit( ) ) then
call KillUnit( GetFilterUnit( ) )
endif
return false
endfunction
function act takes nothing returns nothing
call GroupEnumUnitsInRange( TempGroup, x, y, range, Condition( function Filt ) )
endfunction
Первый способ самый быстрый, но он не сохраняет юнитов, последний лучше второго
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован rsfghd