Пример #1
0
        public static ShotgunStats GenerateNewShotgun(ItemQuality quality)
        {
            var genData = ShotgunGenerationPresets.GenData[quality];
            var stats   = new ShotgunStats();

            stats.Accuracy       = RandomService.GetRandom(genData.MinAccuracy, genData.MaxAccuracy);
            stats.MinAccuracy    = stats.Accuracy - 20;
            stats.AimDistance    = 20f;
            stats.AimRecovery    = 0.8f;
            stats.Quality        = quality;
            stats.DamagePerRound = RandomService.GetRandom(genData.MinDamagePerRound, genData.MaxDamagePerRound);
            stats.PushForce      = stats.DamagePerRound * 10;
            stats.Range          = RandomService.GetRandom(genData.MinRange, genData.MaxRange);
            stats.RateOfFire     = RandomService.GetRandom(genData.MinRateOfFire, genData.MaxRateOfFire);
            stats.Recoil         = RandomService.GetRandom(genData.MinRecoil, genData.MaxRecoil);
            stats.AmmoPerMag     = RandomService.GetRandom(genData.MinAmmoPerMag, genData.MaxAmmoPerMag);

            return(stats);
        }
Пример #2
0
        public static ShotgunStats GenerateNewShotgun(ItemQuality quality)
        {
            var genData = ShotgunGenerationPresets.GenData[quality];
            var stats   = new ShotgunStats();

            stats.Accuracy    = RandomService.GetRandom(genData.MinAccuracy, genData.MaxAccuracy);
            stats.MinAccuracy = stats.Accuracy > AbsoluteMinAccuracy * 2
                ? stats.Accuracy - 15
                : AbsoluteMinAccuracy;
            stats.AimRecovery    = 0.8f;
            stats.Quality        = quality;
            stats.DamagePerRound = RandomService.GetRandom(genData.MinDamagePerRound, genData.MaxDamagePerRound);
            stats.RateOfFire     = RandomService.GetRandom(genData.MinRateOfFire, genData.MaxRateOfFire);
            stats.Recoil         = RandomService.GetRandom(genData.MinRecoil, genData.MaxRecoil);
            stats.AmmoPerMag     = RandomService.GetRandom(genData.MinAmmoPerMag, genData.MaxAmmoPerMag);
            stats.PelletCount    = 8;
            stats.ReloadTime     = 2f;

            return(stats);
        }