Exemple #1
0
        internal override void AddResources(float i_AmountOfResourcesToAdd, Resources.eResourceType i_ResourceType)
        {
            if (i_ResourceType != r_ResourceType)
            {
                if (r_MaxAmountOfResources < i_AmountOfResourcesToAdd + m_AmountOfResources)
                {
                    throw new ArgumentException("You entered wrong gas type and amount for your vehicle");
                }

                throw new ArgumentException("You entered wrong gas type for your vehicle");
            }

            if (r_MaxAmountOfResources < i_AmountOfResourcesToAdd + m_AmountOfResources)
            {
                throw new ValueOutOfRangeException(null, i_AmountOfResourcesToAdd, "Fuel Engine", "You were trying to add more fuel than your fuel engine may have");
            }

            if (i_AmountOfResourcesToAdd < 0)
            {
                throw new ValueOutOfRangeException(
                          null,
                          i_AmountOfResourcesToAdd,
                          "Fuel Engine",
                          "Fuel may not be negative amount");
            }

            m_AmountOfResources += i_AmountOfResourcesToAdd;
            m_EnergyPercentage   = m_AmountOfResources / r_MaxAmountOfResources;
        }
        public void RefuelAFuelBasedVehicle(string i_LicenseNumber, Resources.eResourceType i_FuelType, float i_AmountToFill)
        {
            Vehicle vehicle = getVehicleByLicenseNumber(i_LicenseNumber);

            if (vehicle != null)
            {
                vehicle.AddResourcesToEngine(i_AmountToFill, i_FuelType);
            }
        }
        internal override void AddResources(float i_AmountOfResourcesToAdd, Resources.eResourceType i_ResourceType)
        {
            if (i_ResourceType != Resources.eResourceType.Electricity)
            {
                throw new ArgumentException("You entered gas for electric vehicle, Lets check if you need any other assistance ", new Exception("out"));
            }

            if (r_MaxAmountOfResources < i_AmountOfResourcesToAdd + m_AmountOfResources)
            {
                throw new ValueOutOfRangeException(null, i_AmountOfResourcesToAdd, "Electric Engine", "Sorry, but you were trying to add more electric battery time than your electric engine can contain");
            }

            if (i_AmountOfResourcesToAdd < 0)
            {
                throw new ValueOutOfRangeException(null, i_AmountOfResourcesToAdd, "Electric Engine", "electric battery time may not be negative amount");
            }

            m_AmountOfResources += i_AmountOfResourcesToAdd;
            m_EnergyPercentage   = m_AmountOfResources / r_MaxAmountOfResources;
        }
Exemple #4
0
 internal FuelEngine(float i_MaxAmountOfResources, Resources.eResourceType i_ResourceType)
     : base(i_MaxAmountOfResources)
 {
     r_ResourceType = i_ResourceType;
 }
 internal void AddResourcesToEngine(float i_AmountOfResourcesToAdd, Resources.eResourceType i_ResourceType)
 {
     m_Engine.AddResources(i_AmountOfResourcesToAdd, i_ResourceType);
 }
 internal abstract void AddResources(float i_AmountOfResourcesToAdd, Resources.eResourceType i_ResourceType);