anchor.diff:  interface
   
   uses
  -  Classes, SysUtils, Graphics, Map, editor_types, ExtCtrls;
  +  Classes, SysUtils, math, Graphics, Map, editor_types, ExtCtrls, LCLProc, IntfGraphics;
   
   type
   
  
positive.code:       for col := 0 to FMap.CurrentLevel.Width - 1 do
        begin
          tile := FMap.GetTile(level,col,row);
          tile_rect := Rect(
            trunc(col*FScale),
            trunc(row*FScale),
            trunc(col*FScale) + tile_size,
            trunc(row*FScale) + tile_size);
  
          ctx.Brush.Color := FterrainColors[tile^.TerType];
  
          ctx.FillRect(tile_rect);
  
        end;
      end;
    finally
      ctx.Unlock;
      FMapImg.EndUpdate(True);
    end;
  
    FMapImgValid := True;
  
negative.code: procedure TMinimap.MayBeUpdateImg;
  var
    level: Integer;
  
    row, col, x, y: Integer;
    tile_size: Integer;
  
    tile: PMapTile;
    tile_rect: TRect;
  
    TempImage: TLazIntfImage;
    left, top, right, bottom, w, h: Integer;
  begin
    if not Assigned(FMap) then
      Exit;
    if FMapImgValid then
      Exit;
    level := FMap.CurrentLevelIndex;
  
    TempImage := FMapImg.CreateIntfImage;
  
    try
      w :=  FMapImg.Width;
      h :=  FMapImg.Height;
  
      FScale := Double(FMapImg.Width) / Double(Fmap.CurrentLevel.Width);
  
  