public void Draw(IWriterService writerService) { writerService.Clear(); var border = new string('#', BottomRightCoordinates.X - UpperLeftCoordinates.X); writerService.SetWritePosition(UpperLeftCoordinates.Y, UpperLeftCoordinates.X); writerService.WriteLine(border); for (int i = UpperLeftCoordinates.Y + 1; i < BottomRightCoordinates.Y - 1; i++) { writerService.SetWritePosition(i, UpperLeftCoordinates.X); writerService.Write("#"); writerService.SetWritePosition(i, BottomRightCoordinates.X - 1); writerService.WriteLine("#"); } writerService.WriteLine(border); }
public void Draw(IWriterService writerService) { if (_lastRemovedPoint.HasValue) { writerService.SetWritePosition(_lastRemovedPoint.Value.Y, _lastRemovedPoint.Value.X); writerService.WriteLine(" "); } if (_isFirstDraw) { foreach (var p in _activePoints) { writerService.SetWritePosition(p.Y, p.X); writerService.Write("S"); } _isFirstDraw = false; } writerService.SetWritePosition(HeadCoordinates.Y, HeadCoordinates.X); writerService.Write("S"); writerService.SetWritePosition(32, 0); }
private void WriteScore() { _writerService.SetWritePosition(33, 0); _writerService.WriteLine($"score: {_score:D5}"); }