Пример #1
0
        private static void detectCommand(string command)
        {
            int whiteSpaces = countSpaces(command);

            switch (whiteSpaces)
            {
            case 0:
                //Movement
                Robot activeRobot = RobotRepository.getInstance().Get().First(r => r.isActive());
                IEnumerable <IMovement> robotAMovements = MovementParser.Parse(command);
                robotAMovements.ForEach(x => x.ExecuteOn(activeRobot));

                Console.WriteLine("{0} {1} {2}", activeRobot.getCoordinate().getX(), activeRobot.getCoordinate().getY(), activeRobot.getDirection());

                break;

            case 1:
                //Arena
                Arena arena = ArenaParser.Parse(command);
                Console.WriteLine(String.Format("Added new Arena: x - {0}, y - {1}", arena.getWidth(), arena.getHeight()));
                ArenaRepository.getInstance().Add(ArenaParser.Parse(command));
                break;

            case 2:
                //Robot
                RobotRepository.getInstance().Add(new RobotCoordinateParser().Parse(command));
                break;

            default:
                throw new Exception();
            }
        }
Пример #2
0
        private Arena getArena()
        {
            var checkArena = ArenaRepository.getInstance().Get().Count() > 0 ? ArenaRepository.getInstance().Get().First(r => r.isActive()) : null;

            if (checkArena != null)
            {
                return(checkArena);
            }

            return(null);
        }
Пример #3
0
 public ArenaRepositoryTest()
 {
     _arenaRepository = new ArenaRepository();
 }