Exemple #1
0
        public void FineCreaturesAreGoodAtFlying()
        {
            var fine = new SizeStats(CharacterSize.Fine, 1, 2);
            var fly  = fine.Modifiers.First(x => x.StatisticName == "Fly");

            Assert.Equal(8, fly.Modifier);
        }
Exemple #2
0
        public void LargeCreaturesArePoorAtFlying()
        {
            var large = new SizeStats(CharacterSize.Large, 1, 3);
            var fly   = large.Modifiers.First(x => x.StatisticName == "Fly");

            Assert.Equal(-2, fly.Modifier);
        }
Exemple #3
0
        public void SmallCreaturesProvideABonusToStealthAndFly()
        {
            var small   = new SizeStats(CharacterSize.Small, 34, 37);
            var stealth = small.Modifiers.First(x => x.StatisticName == "Stealth");

            Assert.Equal(4, stealth.Modifier);
        }
Exemple #4
0
        public void ColossalCreaturesAreBadAtStealth()
        {
            var col     = new SizeStats(CharacterSize.Colossal, 680, 29932);
            var stealth = col.Modifiers.First(x => x.StatisticName == "Stealth");

            Assert.Equal(-16, stealth.Modifier);
        }
Exemple #5
0
        public void ContainsModifiersForFlyAndStealth()
        {
            var medium = new SizeStats(CharacterSize.Medium, 70, 184);

            Assert.True(medium.Modifiers.Any(x => x.StatisticName == "Stealth"));
            Assert.True(medium.Modifiers.Any(x => x.StatisticName == "Fly"));
        }
Exemple #6
0
        public void UpdatingTheSizeChangesTheModifier()
        {
            var smallToStart = new SizeStats(CharacterSize.Small, 32, 28);

            smallToStart.SetSize(CharacterSize.Large, 89, 283);
            Assert.Equal(-1, smallToStart.PositiveSizeModifier.Modifier);
        }
Exemple #7
0
        public void DefaultStatsAreMedium()
        {
            var def = new SizeStats();

            Assert.Equal(CharacterSize.Medium, def.Size);
            Assert.Equal(72.0f, def.Height);
            Assert.Equal(180f, def.Weight);
        }
Exemple #8
0
        public void SetUp()
        {
            var abilities = new AbilityScores();

            abilities.SetScore(AbilityScoreTypes.Strength, 16);
            abilities.SetScore(AbilityScoreTypes.Dexterity, 16);
            var size = new SizeStats(CharacterSize.Small, 1, 1);

            inventory  = new Inventory();
            smallStats = new OffenseStats(abilities, size, inventory);
        }
Exemple #9
0
        public void SetUp()
        {
            var abilities = new AbilityScores();

            abilities.SetScore(AbilityScoreTypes.Strength, 16);
            abilities.SetScore(AbilityScoreTypes.Dexterity, 16);
            abilities.SetScore(AbilityScoreTypes.Constitution, 9);
            abilities.SetScore(AbilityScoreTypes.Wisdom, 12);
            var size = new SizeStats(CharacterSize.Small);

            smallStats = new DefenseStats(abilities, size, new Inventory());
        }
Exemple #10
0
        public void Initialize(ComponentContainer components)
        {
            this.charisma         = components.Get <AbilityScores>().GetAbility(AbilityScoreTypes.Charisma);
            this.strength         = components.Get <AbilityScores>().GetAbility(AbilityScoreTypes.Strength);
            this.size             = components.Get <SizeStats>();
            this.CriticalModifier = new BasicStat("Claws Critical Modifier", 2);

            var offense = components.Get <OffenseStats>();

            this.AttackBonus = new BasicStat("Claw Attack Bonus");
            this.AttackBonus.AddModifier(new StatisticStatModifier(this.AttackBonus.Name, offense.MeleeAttackBonus));
            this.sorcererLevel = components.Get <ClassLevel>();

            if (components.Contains <IDraconicBloodline>())
            {
                var bloodline = components.Get <IDraconicBloodline>();
                BonusDamageType = bloodline.DragonType.EnergyType;
            }
            else
            {
                BonusDamageType = "fire";
            }
        }
Exemple #11
0
 public void Initialize(ComponentContainer components)
 {
     sizeStats = components.Get <SizeStats>();
 }
Exemple #12
0
        public void ASmallCreatureAsASizeModifierOfOne()
        {
            var smallCreature = new SizeStats(CharacterSize.Small, 36, 36);

            Assert.Equal(1, smallCreature.PositiveSizeModifier.Modifier);
        }
Exemple #13
0
 /// <summary>
 /// Sets the size for race.
 /// </summary>
 /// <param name="size">Size to assign to.</param>
 /// <param name="race">Race selected.</param>
 private void SetSizeForRace(SizeStats size, Race race)
 {
     // Update Size
     size.SetSize(race.SizeSetting, race.HeightRange.Roll(), race.WeightRange.Roll());
 }