示例#1
0
        private Mower StartMower(int gardenLength, int gardenWidth, int startX, int startY, Orientation orientation)
        {
            var mower = new Mower(new Garden(gardenLength, gardenWidth));

            mower.Start(new Position(new Coordinates(startX, startY), orientation));
            return(mower);
        }
示例#2
0
        private Mower CreateNewMower(Garden garden, int startX, int startY, Orientation orientation)
        {
            var newMower = new Mower(garden);

            newMower.Start(new Position(new Coordinates(startX, startY), orientation));
            return(newMower);
        }
示例#3
0
        public Mower Create()
        {
            if (this.mowerInstance == null)
            {
                var length = this.settingsResolver.ReadValue <int>(GardenDimentionsSettingsSectionName, GardenLengthSettingsKeyName, GardenLengthSettingsDefaultValue);
                var width  = this.settingsResolver.ReadValue <int>(GardenDimentionsSettingsSectionName, GardenWidthSettingsKeyName, GardenWidthSettingsDefaultValue);
                var mower  = new Mower(new Garden(length, width));


                var xPos = this.settingsResolver.ReadValue <int>(MowerStartupSettingsSectionName, MowerXPosSettingsKeyName, MowerXPosSettingsDefaultValue);
                var yPos = this.settingsResolver.ReadValue <int>(MowerStartupSettingsSectionName, MowerYPosSettingsKeyName, MowerYPosSettingsDefaultValue);
                var orientationString = this.settingsResolver.ReadValue(MowerStartupSettingsSectionName, MowerOrientationSettingsKeyName, MowerOrientationSettingsDefaultValue);

                if (Enum.TryParse <Orientation>(orientationString, out var orientation))
                {
                    mower.Start(new Position(new Coordinates(xPos, yPos), orientation));
                }

                this.mowerInstance = mower;
            }

            return(this.mowerInstance);
        }