» Indeks > Modding Archive > SAIL - NearestUnitToArea function
SAIL - NearestUnitToArea function
Morphid pisze:Hi, I have prepared a SAIL function to find a unit who is nearest to the area.
Using: NearestUnitToArea(units:plist, area:integer)Kod:
export function NearestUnitToArea(list, area); var i, n; begin n:=[]; for i:=1 to list do begin if not (n = 0) then begin if n > GetDistUnitArea(list[i], area) then n:=GetDistUnitArea(list[i], area); end else begin n:=GetDistUnitArea(list[i], area); end; end; for i:=1 to list do begin if GetDistUnitArea(list[i], area) = n then begin result:=list[i]; break; end; end; end;
Radzio pisze:Hi, this is better:
Kod:
export function NearestUnitToArea(list, area); var un, n; begin n:= 999999; for un in list do begin if GetDistUnitArea(un, area) < n then begin n:= GetDistUnitArea(un, area); result:= un; end; if (n = 0) then exit; end; end;
Author: Morphid & Radzio
Topic: https://forum.original-war.net/viewtopic.php?f=48&t=2230
» Indeks > Modding Archive > SAIL - NearestUnitToArea function



