public void UndrawTiledStartPositions()
{
Palette red = Palette.MakePalette(Color.Red);
foreach (var w in _wayPoints)
{
// Redraw the 4x4 cell around start pos with original palette;
// first the tiles, then the objects
for (int x = w.Tile.Rx - 2; x < w.Tile.Rx + 2; x++)
{
for (int y = w.Tile.Ry - 2; y < w.Tile.Ry + 2; y++)
{
MapTile t = _tiles.GetTileR(x, y);
if (t == null)
{
continue;
}
t.Palette = _palettePerLevel[t.Z];
// redraw tile
_theater.Draw(t, _drawingSurface);
}
}
for (int x = w.Tile.Rx - 5; x < w.Tile.Rx + 5; x++)
{
for (int y = w.Tile.Ry - 5; y < w.Tile.Ry + 5; y++)
{
MapTile t = _tiles.GetTileR(x, y);
if (t == null)
{
continue;
}
// redraw objects on here
List <GameObject> objs = GetObjectsAt(t.Dx, t.Dy / 2);
foreach (GameObject o in objs)
{
_theater.Draw(o, _drawingSurface);
}
}
}
}
}