Exemple #1
0
        static void Main(string[] args)
        {
            string inputStr = GenerateInput();
            Input  input    = InputManager.GetInput(inputStr);

            IKernel kernal = new StandardKernel();

            kernal.Load(Assembly.GetExecutingAssembly());

            IPlateau plateau = kernal.Get <IPlateau>();

            plateau.SetPoint(new Point(input.X, input.Y));

            foreach (var inputRover in input.InputRovers)
            {
                IRover rover = kernal.Get <Rover>();

                rover.SetRover(plateau, new Point(inputRover.X, inputRover.Y), inputRover.CurrentDirection);
                rover.SetCommandParams(inputRover.Commands);

                RoverInvoker roverInvorker = new RoverInvoker(rover);
                roverInvorker.Execute();

                //Output
                Console.WriteLine(rover.ToString());
            }

            Console.ReadKey();
        }