private static IEnumerable <SelectionData> GetOptionNames(
            TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType type)
        {
            int i1;

            if (type == TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.Language)
            {
                List <string> languageIds = LocalizedTextManager.GetLanguageIds(NativeConfig.IsDevelopmentMode);
                for (i1 = 0; i1 < languageIds.Count; ++i1)
                {
                    yield return(new SelectionData(false, languageIds[i1]));
                }
                languageIds = (List <string>)null;
            }
            else
            {
                i1 = ManagedSelectionOptionData.GetOptionsLimit(type);
                string typeName = type.ToString();
                for (int i2 = 0; i2 < i1; ++i2)
                {
                    yield return(new SelectionData(true, "str_options_type_" + typeName + "_" + i2.ToString()));
                }
                typeName = (string)null;
            }
        }
        private static float GetLimitValue(TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType type, bool isMin)
        {
            switch (type)
            {
            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.BattleSize:
                return(isMin ? (float)BannerlordConfig.MinBattleSize : (float)BannerlordConfig.MaxBattleSize);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.FirstPersonFov:
                return(!isMin ? 100f : 45f);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.CombatCameraDistance:
                return(!isMin ? 2.4f : 0.7f);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.UIScale:
                return(!isMin ? 1f : 0.75f);

            default:
                return(!isMin ? 1f : 0.0f);
            }
        }
        public static int GetOptionsLimit(TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType optionType)
        {
            switch (optionType)
            {
            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.Language:
                return(LocalizedTextManager.GetLanguageIds(NativeConfig.IsDevelopmentMode).Count);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.ControlBlockDirection:
                return(3);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.ControlAttackDirection:
                return(3);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.NumberOfCorpses:
                return(6);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.BattleSize:
                return(6);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.TurnCameraWithHorseInFirstPerson:
                return(4);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.ReportCasualtiesType:
                return(3);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.CrosshairType:
                return(2);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.OrderType:
                return(2);

            case TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType.AutoTrackAttackedSettlements:
                return(3);

            default:
                return(0);
            }
        }
Пример #4
0
 protected ManagedOptionData(TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType type)
 {
     this.Type   = type;
     this._value = TaleWorlds.MountAndBlade.ManagedOptions.GetConfig(type);
 }
 public ManagedNumericOptionData(TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType type)
     : base(type)
 {
     this._minValue = ManagedNumericOptionData.GetLimitValue(this.Type, true);
     this._maxValue = ManagedNumericOptionData.GetLimitValue(this.Type, false);
 }
Пример #6
0
 public ManagedBooleanOptionData(TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType type)
     : base(type)
 {
 }
 public ManagedSelectionOptionData(TaleWorlds.MountAndBlade.ManagedOptions.ManagedOptionsType type)
     : base(type)
 {
     this._selectableOptionsLimit = ManagedSelectionOptionData.GetOptionsLimit(type);
     this._selectableOptionNames  = ManagedSelectionOptionData.GetOptionNames(type);
 }