public void Move(string command) { var commands = command.ToCharArray(); foreach (var inlineCommand in commands) { if (_rotationCommands.Contains(inlineCommand)) { Rotate(inlineCommand); } if (!_moveCommands.Contains(inlineCommand)) { continue; } if (_gridService.CanMove(Position, Direction, inlineCommand)) { Move(inlineCommand); } else { break; } } }