2024-04-12 16:05:24 +02:00
|
|
|
using DisplayCommands;
|
2024-04-10 19:25:45 +02:00
|
|
|
using TanksServer.GameLogic;
|
2024-04-07 19:05:50 +02:00
|
|
|
|
2024-04-10 19:25:45 +02:00
|
|
|
namespace TanksServer.Graphics;
|
2024-04-07 19:05:50 +02:00
|
|
|
|
2024-04-13 14:07:14 +02:00
|
|
|
internal sealed class DrawMapStep(MapService map) : IDrawStep
|
2024-04-07 19:05:50 +02:00
|
|
|
{
|
2024-04-12 16:05:24 +02:00
|
|
|
public void Draw(PixelGrid buffer)
|
2024-04-07 19:05:50 +02:00
|
|
|
{
|
2024-04-14 21:10:21 +02:00
|
|
|
for (ushort y = 0; y < MapService.PixelsPerColumn; y++)
|
|
|
|
for (ushort x = 0; x < MapService.PixelsPerRow; x++)
|
2024-04-07 19:05:50 +02:00
|
|
|
{
|
2024-04-14 21:10:21 +02:00
|
|
|
var pixel = new PixelPosition(x, y);
|
|
|
|
if (!map.Current.IsCurrentlyWall(pixel))
|
2024-04-07 19:05:50 +02:00
|
|
|
continue;
|
2024-04-14 21:10:21 +02:00
|
|
|
buffer[x, y] = true;
|
2024-04-07 19:05:50 +02:00
|
|
|
}
|
|
|
|
}
|
2024-04-13 14:07:14 +02:00
|
|
|
}
|