Exemple #1
0
        public static SettingLimits GetWeaponSettingLimits(WeaponTypes weaponType, WeaponSettings weaponSetting)
        {
            if (weaponType == WeaponTypes.Default)
            {
                return(new SettingLimits(0, 255));
            }
            else
            {
                Debug.Assert(weaponType < WeaponTypes.Count);
                if (weaponType < WeaponTypes.Count)
                {
                    WeaponLimits weaponLimits = _weaponLimits[(int)weaponType];

                    switch (weaponSetting)
                    {
                    case WeaponSettings.Ammo:
                        return(weaponLimits.Ammo);

                    case WeaponSettings.Power:
                        return(weaponLimits.Power);

                    case WeaponSettings.Delay:
                        return(weaponLimits.Delay);

                    case WeaponSettings.Crate:
                        return(weaponLimits.Crate);
                    }
                }
            }

            return(null);
        }
Exemple #2
0
        static SchemeLimits()
        {
            for (int i = 0; i < (int)SettingTypes.Count; ++i)
            {
                _settingLimits[i] = InitialiseSettingLimit((SettingTypes)i);
            }

            for (int i = 0; i < (int)WeaponTypes.Count; ++i)
            {
                _weaponLimits[i] = new WeaponLimits
                {
                    Ammo  = InitialiseWeaponAmmoLimit((WeaponTypes)i),
                    Power = InitialiseWeaponPowerLimit((WeaponTypes)i),
                    Delay = InitialiseWeaponDelayLimit((WeaponTypes)i),
                    Crate = InitialiseWeaponCrateLimit((WeaponTypes)i)
                };
            }

            for (int i = 0; i < (int)ExtendedOptionTypes.Count; ++i)
            {
                _extendedOptionLimits[i] = InitialiseExtendedOptionLimit((ExtendedOptionTypes)i);
            }
        }