예제 #1
0
        public VehicleAttributeDto GetVehicleAttributes(int vehicleId)
        {
            var vehicleAttributes = new VehicleAttributeDto();
            var dbModel           = _directAxisContext.VehicleAttributes.FirstOrDefault(x => x.VehicleTypeId == vehicleId);

            if (dbModel != null)
            {
                vehicleAttributes.Accelaration = dbModel.Accelaration;
                vehicleAttributes.Breaking     = dbModel.Breaking;
                vehicleAttributes.Cornering    = dbModel.Cornering;
                vehicleAttributes.TopSpeed     = dbModel.TopSpeed;
            }

            return(vehicleAttributes);
        }
예제 #2
0
        private static double CalculateRaceResults(string raceComplexity, VehicleAttributeDto vehicleAttributeDto)
        {
            double straightResults = 0;
            double cornerResults   = 0;

            var racePoints = raceComplexity.ToCharArray();

            for (int x = 0; x < racePoints.Length; x++)
            {
                if (char.GetNumericValue(racePoints[x]) == (int)RacePointTypes.Straight)
                {
                    straightResults += VehicleStraightResults(vehicleAttributeDto);
                }
                else
                {
                    cornerResults += VehicleCorneringResults(vehicleAttributeDto);
                }
            }
            return(straightResults + cornerResults);
        }
예제 #3
0
 private static int VehicleCorneringResults(VehicleAttributeDto vehicleAttributeDto)
 {
     return(vehicleAttributeDto.Cornering + vehicleAttributeDto.Breaking);
 }
예제 #4
0
 private static int VehicleStraightResults(VehicleAttributeDto vehicleAttributeDto)
 {
     return(vehicleAttributeDto.Accelaration + vehicleAttributeDto.TopSpeed);
 }