C# What is the most rational way to keep progress of improvable parameters?

Example:
In my game it is possible to improve bullet force 6 times. Damage sets in OnEnable method:

void OnEnable() {
    this.damage = GameController.PistolDamage; 
}

Current progress should be kept int PlayerPrefs.
And if i set each parameters value in GameController class - my code looks not good. What is the best way to do it?

There are 8 parameters to improve.

Personally, I’d have each of the eight parameters have a value from 1 to 8. Then when it was time to do damage (or whatever), damage would be either (DamageParameter * BaseDamage), or if they did not increase by a simple formula, I’d do Damages[DamageParameter].