Example #1
0
        private bool ValidateStatType(IStatistic statistic, IStatisticModifier modifier)
        {
            if (string.IsNullOrEmpty(modifier.StatisticType))
            {
                return(true);
            }
            var type = Reflector.FindType(modifier.StatisticType);

            return(statistic.Implements(type));
        }
Example #2
0
 public void RemoveModifier(IStatisticModifier modifier)
 {
     if (modifier is IDiceModifier)
     {
         modifiers.Remove((IDiceModifier)modifier);
     }
     else if (modifier is IValueStatModifier)
     {
         valueModifiers.Remove((IValueStatModifier)modifier);
     }
 }
Example #3
0
 public void AddModifier(IStatisticModifier modifier)
 {
     if (modifier is IDiceModifier)
     {
         modifiers.Add((IDiceModifier)modifier);
     }
     else if (modifier is IValueStatModifier)
     {
         valueModifiers.Add((IValueStatModifier)modifier);
     }
 }
Example #4
0
        public void ApplyStatModifier(IStatisticModifier statModifier)
        {
            var stats = FindMatchingStats(statModifier.StatisticName);

            if (stats.Empty())
            {
                ShortLog.ErrorFormat("Could Not Apply Modifier to Statistic: {0}", statModifier.StatisticName);
            }

            foreach (var stat in stats)
            {
                if (ValidateStatType(stat, statModifier))
                {
                    stat.AddModifier(statModifier);
                }
            }
        }
Example #5
0
 public void RemoveModifier(IStatisticModifier modifier)
 {
     throw new System.NotImplementedException();
 }
Example #6
0
 public void RemoveModifier(IStatisticModifier modifier)
 {
     this.skillStats.RemoveModifier(modifier);
 }
Example #7
0
 /// <summary>
 /// Adds a stat modifier to the skill.
 /// </summary>
 /// <param name="modifier">Modifier for the skill.</param>
 public void AddModifier(IStatisticModifier modifier)
 {
     this.skillStats.AddModifier(modifier);
 }
Example #8
0
 public void RemoveModifier(IStatisticModifier modifier)
 {
     baseRangeAttackBonus.RemoveModifier(modifier);
 }
Example #9
0
 public void AddModifier(IStatisticModifier modifier)
 {
     baseRangeAttackBonus.AddModifier(modifier);
 }
Example #10
0
 public void RemoveModifier(IStatisticModifier modifier)
 {
     this.statModifiers.Remove((IValueStatModifier)modifier);
 }
Example #11
0
 public void AddModifier(IStatisticModifier modifier)
 {
     AddModifier((IValueStatModifier)modifier);
 }
Example #12
0
 public void RemoveModifier(IStatisticModifier modifier)
 {
     amount.RemoveModifier(modifier);
 }
Example #13
0
 public void AddModifier(IStatisticModifier modifier)
 {
     amount.AddModifier(modifier);
 }