Пример #1
0
 public static CarClass getCarClassFromEnum(CarClassEnum carClassEnum)
 {
     foreach (CarClass carClass in CAR_CLASSES.carClasses)
     {
         if (carClass.carClassEnum == carClassEnum)
         {
             return carClass;
         }
     }
     return new CarClass();
 }
Пример #2
0
 public static CarClass getCarClassFromEnum(CarClassEnum carClassEnum)
 {
     foreach (CarClass carClass in carClasses)
     {
         if (carClass.carClassEnum == carClassEnum)
         {
             return(carClass);
         }
     }
     return(getDefaultCarClass());
 }
Пример #3
0
 public CarClass(CarClassEnum carClassEnum, String[] pCarsClassNames, int[] raceroomClassIds, BrakeType brakeType, TyreType defaultTyreType, float maxSafeWaterTemp,
                 float maxSafeOilTemp)
 {
     this.carClassEnum         = carClassEnum;
     this.pCarsClassNames      = pCarsClassNames;
     this.raceroomClassIds     = raceroomClassIds;
     this.brakeType            = brakeType;
     this.defaultTyreType      = defaultTyreType;
     this.maxSafeOilTemp       = maxSafeOilTemp;
     this.maxSafeWaterTemp     = maxSafeWaterTemp;
     this.minTyreCircumference = carMinTyreCircumference;
     this.maxTyreCircumference = carMaxTyreCircumference;
 }
Пример #4
0
 public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
 {
     var className = (string)reader.Value;
     CarClassEnum carClassID = CarClassEnum.UNKNOWN_RACE;
     if (Enum.TryParse<CarClassEnum>(className, out carClassID))
     {
         return carClassID;
     }
     else
     {
         // no match - we really don't know what this class is, so create one
         Console.WriteLine("Car class enum for " + className + " not found");
         userCarClassIds.Add(className);
         return CarClassEnum.USER_CREATED;
     }
 }
Пример #5
0
 public CarClass(CarClassEnum carClassEnum, String[] pCarsClassNames, int[] raceroomClassIds, BrakeType brakeType, TyreType defaultTyreType, float maxSafeWaterTemp,
    float maxSafeOilTemp)
 {
     this.carClassEnum = carClassEnum;
     this.pCarsClassNames = pCarsClassNames;
     this.raceroomClassIds = raceroomClassIds;
     this.brakeType = brakeType;
     this.defaultTyreType = defaultTyreType;
     this.maxSafeOilTemp = maxSafeOilTemp;
     this.maxSafeWaterTemp = maxSafeWaterTemp;
     this.minTyreCircumference = carMinTyreCircumference;
     this.maxTyreCircumference = carMaxTyreCircumference;
 }
Пример #6
0
 public static CarClass getCarClassFromEnum(CarClassEnum carClassEnum)
 {
     foreach (CarClass carClass in carClasses)
     {
         if (carClass.carClassEnum == carClassEnum)
         {
             return carClass;
         }
     }
     return getDefaultCarClass();
 }
Пример #7
0
 public static CarClass getCarClassForClassName(String className)
 {
     if (className == null)
     {
         // should we return null here? Throw an IllegalArgumentException?
         Console.WriteLine("Null car class name");
         return new CarClass();
     }
     else
     {
         // first check if it's in the cache
         if (nameToCarClass.ContainsKey(className))
         {
             return nameToCarClass[className];
         }
         else
         {
             String classNamesPropName = null;
             String regexsPropName = null;
             switch (CrewChief.gameDefinition.gameEnum)
             {
                 case GameEnum.PCARS_64BIT:
                 case GameEnum.PCARS_32BIT:
                 case GameEnum.PCARS_NETWORK:
                     classNamesPropName = "pCarsClassNames";
                     regexsPropName = "pCarsClassNamesRegexs";
                     break;
                 case GameEnum.RF1:
                     classNamesPropName = "rf1ClassNames";
                     regexsPropName = "rf1ClassNamesRegexs";
                     break;
                 case GameEnum.ASSETTO_64BIT:
                 case GameEnum.ASSETTO_32BIT:
                     classNamesPropName = "acClassNames";
                     regexsPropName = "acClassNamesRegexs";
                     break;
                 case GameEnum.RF2_64BIT:
                     classNamesPropName = "rf2ClassNames";
                     regexsPropName = "rf2ClassNamesRegexs";
                     break;
                 default:
                     // err....
                     return new CarClass();
             }
             foreach (CarClass carClass in CAR_CLASSES.carClasses)
             {
                 List<String> classNames = (List<String>)carClass.GetType().GetProperty(classNamesPropName).GetValue(carClass, null);
                 foreach (String thisClassName in classNames)
                 {
                     if (string.Compare(thisClassName, className, StringComparison.InvariantCultureIgnoreCase) == 0)
                     {
                         nameToCarClass.Add(className, carClass);
                         return carClass;
                     }
                 }
             }
             foreach (CarClass carClass in CAR_CLASSES.carClasses)
             {
                 List<Regex> regexs = (List<Regex>)carClass.GetType().GetField(regexsPropName).GetValue(carClass);
                 foreach (Regex regex in regexs)
                 {
                     if (regex.IsMatch(className))
                     {
                         nameToCarClass.Add(className, carClass);
                         return carClass;
                     }
                 }
             }
             // no match, try matching on the enum directly
             CarClassEnum carClassID = CarClassEnum.UNKNOWN_RACE;
             if (Enum.TryParse<CarClassEnum>(className, out carClassID))
             {
                 CarClass existingClass = CarData.getCarClassFromEnum(carClassID);
                 nameToCarClass.Add(className, existingClass);
                 return existingClass;
             }
             else
             {
                 // no match - we really don't know what this class is, so create one
                 CarClass newCarClass = new CarClass();
                 newCarClass.placeholderClassId = className;
                 nameToCarClass.Add(className, newCarClass);
                 return newCarClass;
             }
         }
     }
 }
Пример #8
0
 public static string GetStringifyClass(CarClassEnum carClass)
 {
     switch (carClass)
     {
         case CarClassEnum.Econom:
             return Resources.Resource.CarClassEconom;
         case CarClassEnum.General:
             return Resources.Resource.CarClassGeneral;
         case CarClassEnum.Premium:
             return Resources.Resource.CarClassPremium;
         default:
             return "";
     }
 }
Пример #9
0
 public static string GetStringifyClass(CarClassEnum carClass)
 {
     switch (carClass)
     {
         case CarClassEnum.Normal:
             return Resources.Resource.Normal;
         case CarClassEnum.Universal:
             return Resources.Resource.Universal;
         case CarClassEnum.Minivan:
             return Resources.Resource.Minivan;
         case CarClassEnum.Lux:
             return Resources.Resource.Lux;
         default:
             return "";
     }
 }