コード例 #1
0
        public Rover Rover(string Values, string Limits)
        {
            Rover rov = new Rover();

            string[] InitialValues = Values.Split(" ");
            string[] MaxValues     = Limits.Split(" ");
            if (InitialValues.Length != 3)
            {
                Console.WriteLine(Messages.ErrorRoverLocation);
            }
            else if (Control(null, InitialValues[0]) == false || Control(null, InitialValues[1]) == false || Control(null, InitialValues[2]) != false)
            {
                Console.WriteLine(Messages.ErrorValue);
            }
            else if (CheckDirection(InitialValues[2]) == false)
            {
                Console.WriteLine(Messages.ErrorInput);
            }
            else if (Convert.ToInt32(InitialValues[0]) > Convert.ToInt32(MaxValues[0]) || Convert.ToInt32(InitialValues[1]) > Convert.ToInt32(MaxValues[1]))
            {
                Console.WriteLine(Messages.ErrorInput);
            }
            else
            {
                rov.X         = Convert.ToInt32(InitialValues[0]);
                rov.Y         = Convert.ToInt32(InitialValues[1]);
                rov.Direction = DirectionsConvert.DirectionEnum(Convert.ToChar(InitialValues[2]));
            }
            return(rov);
        }
コード例 #2
0
ファイル: MovesManager.cs プロジェクト: MNasuhi/RoverCase
        public Rover TurnRight(Rover rov)
        {
            var a = DirectionsConvert.DirectionEnumId(rov.Direction);

            if (a + 1 > 4)
            {
                rov.Direction = DirectionsConvert.DirectionEnum(1);
            }
            else
            {
                rov.Direction = DirectionsConvert.DirectionEnum(a + 1);
            }
            return(rov);
        }
コード例 #3
0
ファイル: MovesManager.cs プロジェクト: MNasuhi/RoverCase
        public Rover TurnLeft(Rover rov)
        {
            var a = DirectionsConvert.DirectionEnumId(rov.Direction);

            if (a - 1 < 1)
            {
                rov.Direction = DirectionsConvert.DirectionEnum(4);
            }
            else
            {
                rov.Direction = DirectionsConvert.DirectionEnum(a - 1);
            }
            return(rov);
        }