public void LevelingUpIncrementsTheLevelNumber() { var levelUp = new LevelUpCharacter(); levelUp.LevelUp(character); Assert.Equal(2, character.Level); }
public void EveryOtherLevelAddsAFeatToken() { //Level one feats are currently handled outside this var levelUp = new LevelUpCharacter(); levelUp.BringCharacterToLevel(character, 3); Assert.Equal(1, character.FeatTokens.Count()); }
public void IncreasesBaseAttackBonus() { var levelUp = new LevelUpCharacter(); var level = new Level(2); character.Class.BaseAttackBonusRate = 1; Assert.Equal(0, character.Offense.BaseAttackBonus.TotalValue); levelUp.LevelUp(character); Assert.Equal(1, character.Offense.BaseAttackBonus.TotalValue); }
public void EveryFourLevelsYouGetAnExtraAbilityScore() { var levelUp = new LevelUpCharacter(); levelUp.BringCharacterToLevel(character, 4); //Should have an abilityScore Token Assert.True( character.GetAll <AbilityScoreToken>().Count() > 0 ); }
public void IncreasesSavingsThrowsOnLevelUp() { character.Class.WillSaveRate = 1; character.Class.FortitudeSaveRate = 1; character.Class.ReflexSaveRate = 1; Assert.Equal(0, character.Defense.WillSave.TotalValue); Assert.Equal(0, character.Defense.ReflexSave.TotalValue); Assert.Equal(0, character.Defense.FortitudeSave.TotalValue); var levelUp = new LevelUpCharacter(); var level = new Level(2); levelUp.LevelUp(character); Assert.Equal(1, character.Defense.WillSave.TotalValue); Assert.Equal(1, character.Defense.ReflexSave.TotalValue); Assert.Equal(1, character.Defense.FortitudeSave.TotalValue); }