exitwhen GetUnitState(weakest,UNIT_STATE_LIFE)>0 //IsUnitEnemy(weakest,GetOwningPlayer(center)) and
endloop
loop
set temp=FirstOfGroup(g)
exitwhen temp == null
if GetUnitState(temp, UNIT_STATE_LIFE)>0 then
if GetUnitState(weakest,UNIT_STATE_LIFE)>GetUnitState(temp, UNIT_STATE_LIFE) then
set weakest = temp
endif
endif
call GroupRemoveUnit(g,temp)
endloop
call DestroyGroup(g)
set temp = null
set g = null
if IsUnitAliveBJ(weakest)and(weakest != null)and(GetUnitState(weakest,UNIT_STATE_LIFE)<hpkill)and(GetUnitCurrentOrder(center) != String2OrderIdBJ("attack"))and(not(IsUnitType(weakest, UNIT_TYPE_HERO))) then