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); }
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"); }