Ignore:
Timestamp:
Sep 20, 2018, 11:44:42 AM (6 years ago)
Author:
chronos
Message:
  • Added: Show map multiple times side by side in cyclic mode.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Forms/UFormClient.pas

    r234 r235  
    192192      {$endif}
    193193
    194     {  if Game.CyclicMap then begin
     194      if Game.CyclicMap then begin
    195195        VS := View.CellToCanvasPos(Game.Map.Size);
    196196        TempView := TView.Create;
    197197        TempView.Game := Game;
    198         R := TRect.Create(View.CellToCanvasPos(Game.Map.Cells.First.PosPx),
    199           View.CellToCanvasPos(Game.Map.Cells.Last.PosPx));
     198        //R := View.CellToCanvasRect(TRect.Create(Game.Map.Cells.First.PosPx,
     199        //  Game.Map.Cells.Last.PosPx));
     200        R := View.CellToCanvasRect(Game.Map.PixelRect);
    200201        StartP := TPoint.Create(Ceil(R.P1.X / R.Size.X) * R.Size.X,
    201202          Ceil(R.P1.Y / R.Size.Y) * R.Size.Y);
     
    204205        for Y := 0 to CountP.Y do begin
    205206          for X := 0 to CountP.X do begin
    206             TempView.Zoom := View.Zoom;
    207             TempView.SourceRect := View.SourceRect;
     207            TempView.Assign(View);
    208208            TempView.DestRect := TRect.Create(
    209             TPoint.Create(
    210               -StartP.X + R.Size.X * X,
    211               -StartP.Y + R.Size.Y * Y),
    212             TPoint.Create(
    213               -StartP.X + R.Size.X * X + View.DestRect.Size.X,
    214               -StartP.Y + R.Size.Y * Y + View.DestRect.Size.Y)
     209              TPoint.Create(
     210                -StartP.X + R.Size.X * X,
     211                -StartP.Y + R.Size.Y * Y
     212              ),
     213              TPoint.Create(
     214                -StartP.X + R.Size.X * X + View.DestRect.Size.X,
     215                -StartP.Y + R.Size.Y * Y + View.DestRect.Size.Y
     216              )
    215217            );
    216218            Client.Paint(PaintBox1.Canvas, TempView);
     
    219221        TempView.Free;
    220222      end else
    221       }Client.Paint(PaintBox1.Canvas, View);
     223      Client.Paint(PaintBox1.Canvas, View);
    222224    end;
    223225  end;
Note: See TracChangeset for help on using the changeset viewer.