Example #1
0
 /// <summary>
 /// Sets the traits for race.
 /// </summary>
 /// <param name="character">Charactet to assign traits to.</param>
 /// <param name="race">Race selected.</param>
 private void SetTraitsForRace(CharacterSheet character, Race race)
 {
     // Add Traits
     foreach (var trait in race.Traits)
     {
         var t = this.traitGateway.All().First(x => x.Name == trait);
         character.AddTrait(t, false);
     }
 }
Example #2
0
        public void AddingATraitWillTriggerAddingImmunities()
        {
            CharacterSheet sheet = new CharacterSheet(_testSkills);
            var            trait = new Trait();

            trait.SpecialAbilities.Add(
                new SpecialAbility("vs. Spells", "Immunity"));
            sheet.AddTrait(trait);
            Assert.Greater(sheet.Defense.Immunities.Count(), 0);
        }
Example #3
0
        public void AddingTraitsCouldAddSpecialQualities()
        {
            CharacterSheet sheet = new CharacterSheet(_testSkills);
            var            trait = new Trait();

            trait.SpecialAbilities.Add(
                new SpecialAbility("vs. Spells", "Ability"));
            sheet.AddTrait(trait);
            Assert.Greater(sheet.SpecialQualities.SpecialAbilities.Count(), 0);
        }
Example #4
0
        public void AddingATraitToWillSaveBoostsDefense()
        {
            CharacterSheet sheet = new CharacterSheet(_testSkills);
            var            trait = new Trait();

            trait.Modifiers.Add(
                new BasicStatModifier("Will", 10, "Trait", "Cause")
                );
            var oldScore = sheet.Defense.WillSave.TotalValue;

            sheet.AddTrait(trait);
            Assert.AreEqual(oldScore + 10, sheet.Defense.WillSave.TotalValue);
        }
Example #5
0
        public void AddTraitTriggersModifiedEvent()
        {
            bool called = false;

            CharacterSheet sheet = new CharacterSheet(_testSkills);

            sheet.Modified += (object sender, CharacterSheetEventArgs e) =>
            {
                called = true;
            };

            //Set up the trait
            var trait = new Trait();

            trait.Name = "Elfy";

            sheet.AddTrait(trait, true);

            //Make sure the event was called
            Assert.IsTrue(called);
        }