Exemple #1
0
 public void RemoveFinalBonus(CFinalBonus bonus)
 {
     if (_finalBonuses.ContainsKey(bonus.Name))
     {
         _finalBonuses.Remove(bonus.Name);
     }
 }
Exemple #2
0
 public void AddFinalBonus(CFinalBonus bonus)
 {
     if (!_finalBonuses.ContainsKey(bonus.Name))
     {
         _finalBonuses.Add(bonus.Name, bonus);
     }
 }
Exemple #3
0
 public void SetOrAddFinalBonus(CFinalBonus bonus)
 {
     if (!_finalBonuses.ContainsKey(bonus.Name))
     {
         _finalBonuses.Add(bonus.Name, bonus);
     }
     else
     {
         _finalBonuses[bonus.Name] = new CFinalBonus(bonus.Name, bonus.BaseValue, bonus.BaseMultiplier);
     }
 }
Exemple #4
0
        protected void ApplyFinalBonuses()
        {
            // Adding value from final
            float finalBonusValue      = 0;
            float finalBonusMultiplier = 0;

            foreach (KeyValuePair <string, CFinalBonus> kvp in _finalBonuses)
            {
                CFinalBonus bonus = kvp.Value;
                finalBonusValue      += bonus.BaseValue;
                finalBonusMultiplier += bonus.BaseMultiplier;
            }

            _finalValue += finalBonusValue;
            _finalValue *= (1 + finalBonusMultiplier);
        }