protected Vehicle(HoldVehicleParams i_Vehicle) { r_Engine = i_Vehicle.Engine; m_RemainingEnergyPercentage = r_Engine.GetRemainingEnergyPercentage(); r_VehicleModel = i_Vehicle.VehicleModel; r_LicensePlate = i_Vehicle.LicensePlate; m_VehicleWheels = i_Vehicle.Wheels; }
private readonly float r_TrunkSize; // meter^3 public Truck(bool i_IsTruckRefrigerated, float i_TrunkSize, HoldVehicleParams i_MyVehicle) : base(i_MyVehicle) { r_IsTruckRefrigerated = i_IsTruckRefrigerated; r_TrunkSize = i_TrunkSize; if (i_MyVehicle.Wheels.Count > (int)eNumOfWheels.TwelveWheeledTruck) { throw new ArgumentException(k_ErrNumOfWheels); } }
public Car(eColors i_CarColor, eNumOfDoors i_NumOfDoors, HoldVehicleParams i_MyVehicle) : base(i_MyVehicle) { r_CarColor = i_CarColor; r_CarNumOfDoors = i_NumOfDoors; if (i_MyVehicle.Wheels.Count > (int)eNumOfWheels.FourWheeledCar) { throw new ArgumentException(k_ErrNumOfWheels); } }
public Motorcycle(uint i_EngineVolume, HoldVehicleParams i_MyVehicle, eMotorcycleLicenceType i_Licence) : base(i_MyVehicle) { r_EngineVolume = i_EngineVolume; m_MotorcycleLicenceType = i_Licence; if (i_MyVehicle.Wheels.Count > (int)eNumOfWheels.TwoWheeledMotorcycle) { throw new ArgumentException(k_ErrNumberOfWheels); } }
public static Vehicle CreateVehicleForGarage(HoldAddGarageVehicleParams i_UserParams, params float[] i_VehicelParams) { Vehicle myVehicle = null; Engine engine = getEngine(i_UserParams.Engine); List <Wheel> wheels = new List <Wheel>(); try { for (int i = 0; i < i_UserParams.Wheels.AmountOfWheels; i++) { wheels.Add(new Wheel(i_UserParams.Wheels.WheelManufacturerName, i_UserParams.Wheels.MaxManufacturerPressure, i_UserParams.Wheels.WheelPressureStatus)); } HoldVehicleParams vehicleParams = new HoldVehicleParams(i_UserParams.VehicleModel, i_UserParams.LicencePlate, engine, wheels); switch (i_UserParams.VehicleType) { case eVehicleTypes.Car: myVehicle = new Car((Car.eColors)i_VehicelParams[0], (Car.eNumOfDoors)i_VehicelParams[1], vehicleParams); break; case eVehicleTypes.Motorcycle: myVehicle = new Motorcycle((uint)i_VehicelParams[0], vehicleParams, (Motorcycle.eMotorcycleLicenceType)i_VehicelParams[1]); break; case eVehicleTypes.Truck: bool coldTrank = i_VehicelParams[0] == 1; myVehicle = new Truck(coldTrank, (float)i_VehicelParams[1], vehicleParams); break; } if (!isVehicleSupported(myVehicle)) { myVehicle = null; } } catch (Exception ex) { throw ex; } return(myVehicle); }