hedgewars/uLand.pas
changeset 3225 5d8f4737b6cd
parent 3224 f5f4c611bcac
child 3228 44a59edc7bac
equal deleted inserted replaced
3224:f5f4c611bcac 3225:5d8f4737b6cd
   506 const cEdge = 55;
   506 const cEdge = 55;
   507       cMinDist = 8;
   507       cMinDist = 8;
   508 var radz: array[0..Pred(cMaxEdgePoints)] of LongInt;
   508 var radz: array[0..Pred(cMaxEdgePoints)] of LongInt;
   509     i, k, dist, px, py: LongInt;
   509     i, k, dist, px, py: LongInt;
   510 begin
   510 begin
   511 radz[0]:= 0;
       
   512 for i:= 0 to Pred(pa.Count) do
   511 for i:= 0 to Pred(pa.Count) do
       
   512   begin
       
   513   radz[i]:= 0;
   513   with pa.ar[i] do
   514   with pa.ar[i] do
   514     if x <> NTPX then
   515     if x <> NTPX then
   515       begin
   516       begin
   516       radz[i]:= Min(Max(x - cEdge, 0), Max(LAND_WIDTH - cEdge - x, 0));
   517       radz[i]:= Min(Max(x - cEdge, 0), Max(LAND_WIDTH - cEdge - x, 0));
   517       radz[i]:= Min(radz[i], Min(Max(y - cEdge, 0), Max(LAND_HEIGHT - cEdge - y, 0)));
   518       radz[i]:= Min(radz[i], Min(Max(y - cEdge, 0), Max(LAND_HEIGHT - cEdge - y, 0)));
   521           dist:= Max(abs(x - pa.ar[k].x), abs(y - pa.ar[k].y));
   522           dist:= Max(abs(x - pa.ar[k].x), abs(y - pa.ar[k].y));
   522           radz[k]:= Max(0, Min((dist - cMinDist) div 2, radz[k]));
   523           radz[k]:= Max(0, Min((dist - cMinDist) div 2, radz[k]));
   523           radz[i]:= Max(0, Min(dist - radz[k] - cMinDist, radz[i]))
   524           radz[i]:= Max(0, Min(dist - radz[k] - cMinDist, radz[i]))
   524         end
   525         end
   525       end;
   526       end;
       
   527   end;
   526 
   528 
   527 for i:= 0 to Pred(pa.Count) do
   529 for i:= 0 to Pred(pa.Count) do
   528   with pa.ar[i] do
   530   with pa.ar[i] do
   529     if ((x and LAND_WIDTH_MASK) = 0) and ((y and LAND_HEIGHT_MASK) = 0) then
   531     if ((x and LAND_WIDTH_MASK) = 0) and ((y and LAND_HEIGHT_MASK) = 0) then
   530       begin
   532       begin