public ElectricVehicle( string i_ModelName, string i_LicenseNumber, float i_EnergyRemainder, VehicleTypes.eVehicleType i_VehicleType, string[] i_ManufacturerNamesOfAllTires, float[] i_CurrentPressureOfAllTires, float i_RemainingBatteryTime, float i_MaxBatteryTime) : base( i_ModelName, i_LicenseNumber, i_EnergyRemainder, i_VehicleType, i_ManufacturerNamesOfAllTires, i_CurrentPressureOfAllTires) { m_MaxBatteryTime = i_MaxBatteryTime; if (i_RemainingBatteryTime > m_MaxBatteryTime || i_RemainingBatteryTime < 0) { throw new ValueOutOfRangeException(m_MaxBatteryTime, 0, "Remaining Battery Time"); } else { m_RemainingBatteryTime = i_RemainingBatteryTime; } }
public FuelVehicle( string i_ModelName, string i_LicenseNumber, float i_EnergyRemainder, VehicleTypes.eVehicleType i_VehicleType, string[] i_ManufacturerNamesOfAllTires, float[] i_CurrentPressureOfAllTires, eFuelType i_FuelType, float i_MaxFuelCapacity, float i_RemainingFuelAmount) : base( i_ModelName, i_LicenseNumber, i_EnergyRemainder, i_VehicleType, i_ManufacturerNamesOfAllTires, i_CurrentPressureOfAllTires) { m_FuelType = i_FuelType; m_MaxFuelCapacity = i_MaxFuelCapacity; if (i_RemainingFuelAmount > m_MaxFuelCapacity || i_RemainingFuelAmount < 0) { throw new ValueOutOfRangeException(m_MaxFuelCapacity, 0, "Fuel Amount"); } else { m_RemainingFuelAmount = i_RemainingFuelAmount; } }
private static string[] getTireManufacturers(VehicleTypes.eVehicleType i_VehicleType) { int tiresAmount = VehicleTypes.DefineTireAmountByType(i_VehicleType); string[] manufacturers = new string[tiresAmount]; string output = string.Format("Enter the Manufacturers of All {0} Tires: ", tiresAmount); Console.WriteLine(output); for (int i = 0; i < tiresAmount; i++) { manufacturers[i] = Console.ReadLine(); } return(manufacturers); }
private static float[] getCurrentPressureOfAllTires(VehicleTypes.eVehicleType i_VehicleType) { int tiresAmount = VehicleTypes.DefineTireAmountByType(i_VehicleType); float[] allTiresPressure = new float[tiresAmount]; string output = string.Format("Enter the Air Pressure of All {0} Tires: ", tiresAmount); Console.WriteLine(output); for (int i = 0; i < tiresAmount; i++) { while (!float.TryParse(Console.ReadLine(), out allTiresPressure[i])) { output = string.Format("Error,try again: "); Console.WriteLine(output); } } return(allTiresPressure); }
public Vehicle( string i_VehicleModelName, string i_LicensePlateNumber, float i_EnergyRemainder, VehicleTypes.eVehicleType i_VehicleType, string[] i_ManufacturerNamesOfAllTires, float[] i_CurrentPressureOfAllTires) { r_VehicleModelName = i_VehicleModelName; r_LicensePlateNumber = i_LicensePlateNumber; r_EnergyRemainder = i_EnergyRemainder; m_RepairState = eRepairState.InRepair; int tireAmount = VehicleTypes.DefineTireAmountByType(i_VehicleType); float maxTirePressure = VehicleTypes.DefineMaxTirePressureByType(i_VehicleType); r_Tires = new List <Tire>(tireAmount); for (int i = 0; i < tireAmount; i++) { r_Tires.Add(new Tire(i_ManufacturerNamesOfAllTires[i], maxTirePressure, i_CurrentPressureOfAllTires[i])); } }
private Vehicle chooseConstructorMethodByType() { Vehicle vehicle = null; VehicleTypes.eVehicleType vehicleType = getVehicleType(); switch (vehicleType) { case VehicleTypes.eVehicleType.ElectricBike: vehicle = VehicleTypes.CreateNewElectricBike( getModelName(), getLicensePlateNumber(), getTireManufacturers(vehicleType), getCurrentPressureOfAllTires(vehicleType), getRemainingBatteryTime(), getBikeLicenseType(), getBikeEngineVolume()); break; case VehicleTypes.eVehicleType.ElectricCar: vehicle = VehicleTypes.CreateNewElectricCar( getModelName(), getLicensePlateNumber(), getTireManufacturers(vehicleType), getCurrentPressureOfAllTires(vehicleType), getRemainingBatteryTime(), getCarDoorAmount(), getCarColor()); break; case VehicleTypes.eVehicleType.PetrolBike: vehicle = VehicleTypes.CreateNewPetrolBike( getModelName(), getLicensePlateNumber(), getTireManufacturers(vehicleType), getCurrentPressureOfAllTires(vehicleType), getRemainingFuelAmount(), getBikeEngineVolume(), getBikeLicenseType()); break; case VehicleTypes.eVehicleType.PetrolCar: vehicle = VehicleTypes.CreateNewPetrolCar( getModelName(), getLicensePlateNumber(), getTireManufacturers(vehicleType), getCurrentPressureOfAllTires(vehicleType), getRemainingFuelAmount(), getCarDoorAmount(), getCarColor()); break; case VehicleTypes.eVehicleType.Truck: vehicle = VehicleTypes.CreateNewTruck( getModelName(), getLicensePlateNumber(), getTireManufacturers(vehicleType), getCurrentPressureOfAllTires(vehicleType), getRemainingFuelAmount(), getCheckIfTrunkIsCooled(), getTrunkSize()); break; } return(vehicle); }