Example #1
0
        void DrawInternal(TextWriter stream, IReadOnlyGrid <TCell> grid, IEnumerable <Point> possibleMovePoints, TCell owner)
        {
            var possibleMovePointSet = new HashSet <Point>(possibleMovePoints);

            for (int y = 0; y < grid.Height; y++)
            {
                for (int x = 0; x < grid.Width; x++)
                {
                    if (possibleMovePointSet.Contains(new Point(x, y)))
                    {
                        stream.Write(possibleMovePointCharacter);
                    }
                    else
                    {
                        var cell = grid.GetCell(x, y);
                        stream.Write(cellCharacterMap[cell]);
                    }
                }
                stream.WriteLine();
            }
        }