public void Place(int x, int y, CardinalPoint heading) { if (!Table.IsInBoundaries(x, y)) { throw new ArgumentException("Position is outside the table"); } positionTransformer = heading.AsPositionTransformer(); UpdatePosition(new Coordinate(x, y)); }
public void TurnLeft() { positionTransformer = positionTransformer.TurnLeft(); UpdatePosition(Position.Coordinate); }
public Robot() { Table = new Table(); Position = new NullPosition(); positionTransformer = new NullPositionTransformer(); }