示例#1
0
 public override void SetupStatistics()
 {
     base.SetupStatistics();
     DriverStats     = new AverageFinishAbovePositionDataElement[Data.NumberOfDrivers];
     TeamStats       = new AverageFinishAbovePositionDataElement[Data.NumberOfDrivers / 2];
     ComparisonStats = new AverageFinishAbovePositionDataElement[Data.NumberOfDrivers];
 }
示例#2
0
 public override void InitialiseStatistics()
 {
     for (int driverIndex = 0; driverIndex < Data.NumberOfDrivers; driverIndex++)
     {
         DriverStats[driverIndex]     = new AverageFinishAbovePositionDataElement(driverIndex);
         ComparisonStats[driverIndex] = new AverageFinishAbovePositionDataElement(driverIndex);
     }
     for (int teamIndex = 0; teamIndex < Data.NumberOfDrivers / 2; teamIndex++)
     {
         TeamStats[teamIndex] = new AverageFinishAbovePositionDataElement(teamIndex);
     }
 }
示例#3
0
        public override float CompareByValue(IStatisticElement element)
        {
            AverageFinishAbovePositionDataElement other = (AverageFinishAbovePositionDataElement)element;

            if (this.AverageFinishAbovePosition == other.AverageFinishAbovePosition)
            {
                return(0F);
            }
            else if (this.AverageFinishAbovePosition == 0)
            {
                return(Data.NumberOfDrivers);
            }
            else if (other.AverageFinishAbovePosition == 0)
            {
                return(-Data.NumberOfDrivers);
            }

            return(this.AverageFinishAbovePosition - other.AverageFinishAbovePosition);
        }