public float ComputeUnarmedDamage(IStatsVariables stats, IReadOnlyCollection <Effect> effects)
        {
            var strengthBonus  = stats.Strength() / 200;
            var dexterityBonus = stats.Dexterity() / 200;

            return(ComputeMeleeDamage(strengthBonus + dexterityBonus, EffectRelationships.UnarmedDamageRelationship, effects));
        }
Exemplo n.º 2
0
        public float ComputeSlashingDefense(IStatsVariables baseAttributeStats, IReadOnlyCollection <Effect> effects)
        {
            var strengthBonus  = baseAttributeStats.Strength() / 200;
            var dexterityBonus = baseAttributeStats.Dexterity() / 200;

            return(ComputeMeleeDefense(strengthBonus + dexterityBonus, EffectRelationships.SlashingDefenseRelationship, effects));
        }
        public void Populate(IStatsVariables stats, IReadOnlyCollection <Effect> activeEffects, IReadOnlyCollection <IVariables> relatedVars)
        {
            var strengthValue     = (int)activeEffects.CalculateBonusFor(EffectTypes.StrengthBonusAmount, EffectTypes.StrengthBonusPercentage);
            var dexterityValue    = (int)activeEffects.CalculateBonusFor(EffectTypes.DexterityBonusAmount, EffectTypes.DexterityBonusPercentage);
            var constitutionValue = (int)activeEffects.CalculateBonusFor(EffectTypes.ConstitutionBonusAmount, EffectTypes.ConstitutionBonusPercentage);
            var intelligenceValue = (int)activeEffects.CalculateBonusFor(EffectTypes.IntelligenceBonusAmount, EffectTypes.IntelligenceBonusPercentage);
            var wisdomValue       = (int)activeEffects.CalculateBonusFor(EffectTypes.WisdomBonusAmount, EffectTypes.WisdomBonusPercentage);
            var charismaValue     = (int)activeEffects.CalculateBonusFor(EffectTypes.CharismaBonusAmount, EffectTypes.CharismaBonusPercentage);
            var allAttributeValue = (int)activeEffects.GetPotencyFor(EffectTypes.AllAttributeBonusAmount);

            stats.Strength(strengthValue + allAttributeValue);
            stats.Dexterity(dexterityValue + allAttributeValue);
            stats.Constitution(constitutionValue + allAttributeValue);
            stats.Intelligence(intelligenceValue + allAttributeValue);
            stats.Wisdom(wisdomValue + allAttributeValue);
            stats.Charisma(charismaValue + allAttributeValue);
        }
 public float ComputeBluntDamage(IStatsVariables stats, IReadOnlyCollection <Effect> effects)
 {
     return(ComputeMeleeDamage(stats.Strength() / 100, EffectRelationships.BluntDamageRelationship, effects));
 }
Exemplo n.º 5
0
 public float ComputeBluntDefense(IStatsVariables baseAttributeStats, IReadOnlyCollection <Effect> effects)
 {
     return(ComputeMeleeDefense(baseAttributeStats.Strength() / 100, EffectRelationships.BluntDefenseRelationship, effects));
 }