- Joined
- Jan 9, 2005
- Messages
- 2,124
Is there a better way of picking (Enumerating?) units in range in JASS/vJASS other than this atrocity of a GUI-to-JASS conversion?
I saw something somewhere about enumerating units in range, but do I need to clean it afterwards like you would a unit group?
JASS:
function Trig_Untitled_Trigger_002_Func001002003001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_GROUND) == true )
endfunction
function Trig_Untitled_Trigger_002_Func001002003002001 takes nothing returns boolean
return ( IsUnitAliveBJ(GetFilterUnit()) == true )
endfunction
function Trig_Untitled_Trigger_002_Func001002003002002 takes nothing returns boolean
return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_DamageEventSource)) == true )
endfunction
function Trig_Untitled_Trigger_002_Func001002003002 takes nothing returns boolean
return GetBooleanAnd( Trig_Untitled_Trigger_002_Func001002003002001(), Trig_Untitled_Trigger_002_Func001002003002002() )
endfunction
function Trig_Untitled_Trigger_002_Func001002003 takes nothing returns boolean
return GetBooleanAnd( Trig_Untitled_Trigger_002_Func001002003001(), Trig_Untitled_Trigger_002_Func001002003002() )
endfunction
function Trig_Untitled_Trigger_002_Func002A takes nothing returns nothing
call UnitDamageTargetBJ( GetTriggerUnit(), GetTriggerUnit(), 500, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_NORMAL )
endfunction
function Trig_Untitled_Trigger_002_Actions takes nothing returns nothing
set udg_TempGroup = GetUnitsInRangeOfLocMatching(512, udg_TempPoint, Condition(function Trig_Untitled_Trigger_002_Func001002003))
call ForGroupBJ( udg_TempGroup, function Trig_Untitled_Trigger_002_Func002A )
call DestroyGroup(mygroup)
endfunction
//===========================================================================
function InitTrig_Untitled_Trigger_002 takes nothing returns nothing
set gg_trg_Untitled_Trigger_002 = CreateTrigger( )
call TriggerAddAction( gg_trg_Untitled_Trigger_002, function Trig_Untitled_Trigger_002_Actions )
endfunction