/// <summary> Toggles a menu item corresponding to the specified vehicle subclass key. </summary> /// <param name="vehicleSubclass"> The key by which to access menu items. </param> /// <param name="newState"> Whether to toggle the menu item on or off. </param> public void Toggle(EVehicleSubclass vehicleSubclass, bool newState) { if (_vehicleSubclassToggleMenuItems.TryGetValue(vehicleSubclass, out var subclassMenuItem) && subclassMenuItem.IsChecked != newState) { subclassMenuItem.IsChecked = newState; } }
/// <summary> Returns the vehicle class to which the subclass belongs to. </summary> /// <param name="vehicleSubclass"> The vehicle subclass whose class to get. </param> /// <returns></returns> public static EVehicleClass GetVehicleClass(this EVehicleSubclass vehicleSubclass) { var vehicleSubclassEnumerationValue = vehicleSubclass.CastTo <int>(); if (vehicleSubclass.IsValid()) { return(vehicleSubclassEnumerationValue.Do(value => value / EInteger.Number.Ten).CastTo <EVehicleClass>()); } else { return(vehicleSubclassEnumerationValue.CastTo <EVehicleClass>()); } }
/// <summary> Returns the vehicle class to which the subclass belongs to. </summary> /// <param name="vehicleSubclass"> The vehicle subclass whose class to get. </param> /// <returns></returns> public static EVehicleClass GetVehicleClass(this EVehicleSubclass vehicleSubclass) => vehicleSubclass.Upcast <EVehicleSubclass, EVehicleClass>();
/// <summary> Checks whether the vehicle class is valid. </summary> /// <param name="vehicleClass"> The vehicle class to check. </param> /// <returns></returns> public static bool IsValid(this EVehicleSubclass vehicleSubclass) => vehicleSubclass.CastTo <int>() > EInteger.Number.NinetyNine && !vehicleSubclass.ToString().StartsWith(EWord.All);
public NationSubclassPair(ENation nation, EVehicleSubclass subclass) { Nation = nation; Subclass = subclass; }
/// <summary> Checks whether the vehicle class is valid. </summary> /// <param name="vehicleClass"> The vehicle class to check. </param> /// <returns></returns> public static bool IsValid(this EVehicleSubclass vehicleSubclass) => vehicleSubclass.CastTo <int>() > EInteger.Number.NinetyNine;