anchor.diff:    for I := 0 to MapY - 1 do
       for K := 0 to MapX - 1 do
         Revelation[I, K] := 0;
  +
  +  CoverHasBeenCalled := True;
   end;
   
   
  
positive.code: var
    I, K: Word;
    I1, I2, K1, K2: Word;
  begin
    //Avoid repeated computing (+2% performance)
    I1 := max(Pos.Y-Radius, 0);
    I2 := min(Pos.Y+Radius, MapY-1);
    K1 := max(Pos.X-Radius, 0);
    K2 := min(Pos.X+Radius, MapX-1);
  
    //Inline maths here to gain performance
    for I := I1 to I2 do for K := K1 to K2 do
    if (sqr(Pos.X - K) + sqr(Pos.Y - I)) <= sqr(Radius) then
      Revelation[I, K] := min(Revelation[I, K] + Amount, FOG_OF_WAR_MAX);
  end;
  
  
  
negative.code: {$I KaM_Remake.inc}
  interface
  uses Classes, Math,
    KM_CommonClasses, KM_CommonTypes, KM_Points, KM_Defaults;
  
  
  { FOW state for each player }
  