public void Init(Dictionary <string, VehicleParam> i_Parameters, float i_MaxLitersOfFuel, int i_MaxPsiOfWheels, int i_AmountOfWheels, GarageEnums.eFuelType i_FuelType)
 {
     Init(i_Parameters, i_MaxPsiOfWheels, i_AmountOfWheels);
     m_MaxFuelLitersCapacity = i_MaxLitersOfFuel;
     LitersOfFuelLeft        = (float)i_Parameters["m_LitersOfFuelLeft"].Value;
     m_FuelType = i_FuelType;
 }
示例#2
0
        private void refuelVehicle()
        {
            string licenseNumber = getVehicleLicenseNumber();

            Console.WriteLine("Please choose fuel type out of the following options");
            displayEnumOptions <GarageEnums.eFuelType>();
            GarageEnums.eFuelType userRequestedFuelType = (GarageEnums.eFuelType)getEnumChoiceFromUser <GarageEnums.eFuelType>();
            Console.WriteLine("Please enter how many liters of fuel you would like to add");
            if (!float.TryParse(Console.ReadLine(), out float litersOfFuelToAdd))
            {
                throw new FormatException("You must enter a number for the liters amount.");
            }

            m_Garage.RefuelVehicle(licenseNumber, userRequestedFuelType, litersOfFuelToAdd);
            Console.WriteLine("Vehicle has been refueled");
        }
示例#3
0
        public void RefuelVehicle(string i_LicenseNumber, GarageEnums.eFuelType i_FuelType, float i_LitersOfFuelToAdd)
        {
            checkLicenseNumberValidity(i_LicenseNumber);
            Vehicle vehicleToRefuel = m_GarageVehicles[i_LicenseNumber].VehicleInGarage;

            if (vehicleToRefuel is FuelVehicle fuelVehicleToRefuel)
            {
                if (fuelVehicleToRefuel.FuelType != i_FuelType)
                {
                    throw new ArgumentException("Wrong fuel type");
                }

                fuelVehicleToRefuel.Refuel(i_LitersOfFuelToAdd);
            }
            else
            {
                throw new ArgumentException("This is not a fuel vehicle.");
            }
        }