示例#1
0
        public void ProvidesImmunities()
        {
            var sorcerer = CharacterTestTemplates.Sorcerer();

            sorcerer.SetLevel(20);
            sorcerer.Add(new SoulOfTheFey());
            AssertCharacter.IsImmuneTo("poison", sorcerer);
            AssertCharacter.HasDamageResistance(sorcerer, "cold iron", 10);
        }
示例#2
0
        public void ProvidesImmunities()
        {
            var sorcerer = CharacterTestTemplates.Sorcerer();
            var power    = new PowerOfThePit();

            sorcerer.Add(power);

            AssertCharacter.HasDamageResistance(sorcerer, "acid", 10);
            AssertCharacter.HasDamageResistance(sorcerer, "cold", 10);
            AssertCharacter.IsImmuneTo("fire", sorcerer);
            AssertCharacter.IsImmuneTo("poison", sorcerer);
        }
示例#3
0
        public void GrantsResistanceBasedOnEnergyType()
        {
            var sorcerer      = CharacterTestTemplates.Sorcerer();
            var elementalType = new ElementalType();

            elementalType.EnergyType = "cold";
            sorcerer.Add(elementalType);
            var resist = new ElementalResistance();

            sorcerer.Add(resist);

            AssertCharacter.HasDamageResistance(sorcerer, "cold", 10);
            sorcerer.SetLevel(9);
            resist.LeveledUp(sorcerer.Components);
            AssertCharacter.HasDamageResistance(sorcerer, "cold", 20);
        }
示例#4
0
        public void SelectsAnEnergyTypeToGenerateResistanceTo()
        {
            var wizard     = CharacterTestTemplates.Wizard();
            var energyType = new EnergyType();

            energyType.Name = "fire";
            var abjRes = new AbjurationResistance(EntityGateway <EnergyType> .LoadWithSingleItem(energyType));

            wizard.Add(abjRes);
            AssertCharacter.HasDamageResistance("fire", 5, wizard);

            wizard.SetLevel(11);
            AssertCharacter.HasDamageResistance("fire", 10, wizard);

            wizard.SetLevel(20);
            AssertCharacter.IsImmuneTo("fire", wizard);
        }
示例#5
0
 public void GrantsResistances()
 {
     AssertCharacter.HasDamageResistance(sorcerer, "fire", 5);
     sorcerer.SetLevel(9);
     resistances.LeveledUp(sorcerer.Components);
 }