Esempio n. 1
0
        public static Car CreateCar(Car.eColor i_CarColor, Car.eNumbersOfDoors i_NumberOfDoors, string i_ModelName, string i_LicensePlateNumber, Vehicle.eMaximumAirPressure i_MaximumAirPressureForVehicle, List <Wheel> i_CarWheels, Engine i_CarEngine)
        {
            Car newCar = new Car(i_CarColor, i_NumberOfDoors, i_ModelName, i_LicensePlateNumber, i_MaximumAirPressureForVehicle, i_CarWheels, i_CarEngine);

            return(newCar);
        }
Esempio n. 2
0
        private static void registerVehicle(string i_VehicleLicensePlate, Garage i_Garage)
        {
            string stringUserChoiceForVehicle;
            int    intUserChoiceForVehicle = 0;
            bool   isChoiceValid           = !true;

            CreateVwhicleInGarage.eVehicleTypes typeOfVehicleToAdd;
            string          vehicleOwnersName        = getVehicleOwnersName();
            string          vehicleOwnersPhoneNumber = getVehicleOwnersPhoneNumber();
            string          vehicleModelName         = getVehicleModelName();
            Engine          engineForVehicle;
            List <Wheel>    wheelsForVehicle;
            Vehicle         vehicleToAdd = null;
            VehicleInGarage newVehicleToAddToTheGarage;

            while (isChoiceValid == !true)
            {
                printVehicleMenu();
                stringUserChoiceForVehicle = Console.ReadLine();
                try
                {
                    intUserChoiceForVehicle = convertUserChoiceToInt(stringUserChoiceForVehicle);
                    isChoiceValid           = checkChoiceValidity(intUserChoiceForVehicle, 1, k_NumberOfVehicleTypes);
                }
                catch (FormatException)
                {
                    Console.WriteLine("Invalid input! bad format");
                }
            }

            typeOfVehicleToAdd = (CreateVwhicleInGarage.eVehicleTypes)intUserChoiceForVehicle;

            switch (typeOfVehicleToAdd)
            {
            case CreateVwhicleInGarage.eVehicleTypes.Motorcycle:
                engineForVehicle = getEngineForUser(CreateVwhicleInGarage.eVehicleTypes.Motorcycle);
                wheelsForVehicle = getWheelsFromUser(Vehicle.eNuberOfWheelsForVehicle.TwoWheels, Vehicle.eMaximumAirPressure.MotorcycleAirPressure);
                Motorcycle.eLicenseType licenseType = getLicenseTypeFromUser();
                int engineVolume = getEngineVolumeFromUser();
                vehicleToAdd = CreateVwhicleInGarage.CreateMotorcycle(licenseType, engineVolume, vehicleModelName, i_VehicleLicensePlate, Vehicle.eMaximumAirPressure.MotorcycleAirPressure, wheelsForVehicle, engineForVehicle);
                break;

            case CreateVwhicleInGarage.eVehicleTypes.Car:
                engineForVehicle = getEngineForUser(CreateVwhicleInGarage.eVehicleTypes.Car);
                wheelsForVehicle = getWheelsFromUser(Vehicle.eNuberOfWheelsForVehicle.FourWheels, Vehicle.eMaximumAirPressure.CarAirPressure);
                Car.eNumbersOfDoors numberOfDoors = getNumberOfDoorsInCar();
                Car.eColor          carColor      = getCarColor();
                vehicleToAdd = CreateVwhicleInGarage.CreateCar(carColor, numberOfDoors, vehicleModelName, i_VehicleLicensePlate, Vehicle.eMaximumAirPressure.CarAirPressure, wheelsForVehicle, engineForVehicle);
                break;

            case CreateVwhicleInGarage.eVehicleTypes.Truck:
                engineForVehicle = getEngineForUser(CreateVwhicleInGarage.eVehicleTypes.Truck);
                wheelsForVehicle = getWheelsFromUser(Vehicle.eNuberOfWheelsForVehicle.TwelveWheels, Vehicle.eMaximumAirPressure.TruckAirPressure);
                bool  isTrunkCooled = askUserIfTruckTrunkCooled();
                float trunkVolume   = getTruckTrunkVolumeFromUser();
                vehicleToAdd = CreateVwhicleInGarage.CreateTruck(isTrunkCooled, trunkVolume, vehicleModelName, i_VehicleLicensePlate, Vehicle.eMaximumAirPressure.TruckAirPressure, wheelsForVehicle, engineForVehicle);
                break;
            }

            newVehicleToAddToTheGarage = CreateVwhicleInGarage.RegisterVehicleIntoGarage(vehicleOwnersName, vehicleOwnersPhoneNumber, vehicleToAdd);
            i_Garage.AddVehicleToTheGarageList(newVehicleToAddToTheGarage);
            Console.WriteLine("Vehicle added successfully");
        }