public override void UpdateProperties(Dictionary <Vehicle.eProperties, string> i_VehiclePropertiesValues, List <string> i_WheelsMakers, List <float> i_WheelsAirPressure) { base.UpdateProperties(i_VehiclePropertiesValues, i_WheelsMakers, i_WheelsAirPressure); CarColor = StringToEnum <eCarColors>(i_VehiclePropertiesValues[eProperties.Color]); DoorsNumber = StringToEnum <eDoorsNumber>(i_VehiclePropertiesValues[eProperties.Doors]); VehicleEngine.UpdateProperties(i_VehiclePropertiesValues, CurrentEnergyPercentage); }
public ElectricCar(string i_LicenseNumber) : base(i_LicenseNumber) { const eColor k_DefaultColor = eColor.Black; const eDoorsNumber k_DefaultDoorNumber = eDoorsNumber.Four; this.Color = k_DefaultColor; this.DoorsNumber = k_DefaultDoorNumber; }
protected eDoorsNumber MatchedDoorsNumber(string i_DoorsAsString) { eDoorsNumber matchedNumber = eDoorsNumber.four; foreach (eDoorsNumber number in Enum.GetValues(typeof(eDoorsNumber))) { if (number.ToString().ToLower() == i_DoorsAsString.ToLower()) { matchedNumber = number; } } return(matchedNumber); }
public override void UpdateUniqueProperties(string i_Key, string i_Value) { if (i_Key == k_ColorKey) { this.m_Color = LogicUtils.EnumValidation <eColor>(i_Value, k_ColorKey); } else if (i_Key == k_DoorsNumKey) { this.m_DoorsNumber = LogicUtils.EnumValidation <eDoorsNumber>(i_Value, k_DoorsNumKey); } else { throw new ArgumentException("Invalid key"); } }
private bool handleCarDoorNumber(string i_Answer, Vehicle i_VehicleInSetting) { bool succeed = byte.TryParse(i_Answer, out byte doorNumberInByte); ElectricCar electricCar = i_VehicleInSetting as ElectricCar; FuelBaseCar fuelCar = i_VehicleInSetting as FuelBaseCar; eDoorsNumber doorNumber = ElectricCar.CovertNumToDoorNumber(doorNumberInByte); if (succeed && fuelCar != null) { try { fuelCar.DoorsNumber = doorNumber; succeed = true; } catch { succeed = false; } } else if (succeed && electricCar != null) { try { electricCar.DoorsNumber = doorNumber; succeed = true; } catch { succeed = false; } } else { succeed = false; } return(succeed); }
public static eDoorsNumber CovertNumToDoorNumber(byte i_Num) { eDoorsNumber doorsNumber = 0; if (i_Num == 2) { doorsNumber = eDoorsNumber.Two; } else if (i_Num == 3) { doorsNumber = eDoorsNumber.Three; } else if (i_Num == 4) { doorsNumber = eDoorsNumber.Four; } else if (i_Num == 5) { doorsNumber = eDoorsNumber.Five; } return(doorsNumber); }
public ElectricCar(string i_ModelName, string i_LicenseNumber, float i_BatteryTimeLeftByHours, eCarColor i_Color, eDoorsNumber i_DoorNumber, Wheel[] i_Wheels) : base(i_ModelName, i_LicenseNumber, i_BatteryTimeLeftByHours, k_MaxBatteryTime, k_NumberOfWheels, i_Wheels, k_MaxWheelAirPressure) { m_CarProperties = new CarProperties(i_Color, i_DoorNumber); }
private bool checkValidDoorsNumber(eDoorsNumber i_DoorsNumber) { return(i_DoorsNumber == eDoorsNumber.Two || i_DoorsNumber == eDoorsNumber.Three || i_DoorsNumber == eDoorsNumber.Four || i_DoorsNumber == eDoorsNumber.Five); }
public FuelCar(string i_ModelName, string i_LicenseNumber, float i_CurrentFuelQuantity, eCarColor i_CarColor, eDoorsNumber i_DoorsNumber, Wheel[] i_Wheel) : base(i_ModelName, i_LicenseNumber, k_FuelType, i_CurrentFuelQuantity, k_MaxFuelQuantity, k_NumberOfWheels, i_Wheel, k_MaxWheelAirPressure) { m_CarProperties = new CarProperties(i_CarColor, i_DoorsNumber); }
public CarProperties(eCarColor i_CarColor, eDoorsNumber i_DoorsNumber) { m_CarColor = i_CarColor; m_DoorsNumber = i_DoorsNumber; }