public void CheckMajorWeapon() { //On prepare les jets : // 13 -> Weapon // 43 -> arme +5 à 50000po MockDices dices = new MockDices(new List <int> { 13, 43 }); //Utilisation des dés pipés :P MagicItemCreation.Instantiate(dices); //Portee = melee Range chosenRange = Range.Melee; MagicItemCreation.Instance.ChosenRange = chosenRange; //Creation MagicItem item = MagicItemCreation.Instance.Create(ItemQuality.Major); item.GetType().Should().Be(typeof(MagicWeapon)); MagicWeapon weapon = item as MagicWeapon; weapon.Quality.Should().Be(ItemQuality.Major); weapon.Type.Should().Be(ItemType.Weapon); weapon.Price.Should().Be(50000); weapon.AlterationBonus.Should().Be(5); weapon.Abilities.Should().BeNull(); weapon.Range.Should().Be(chosenRange); }
public void SpecificMajorWeapon() { //On prepare les jets : // 13 -> Weapon // 55 -> Specific weapon // 83 -> Dwarven thrower qui coute 60312 po MockDices dices = new MockDices(new List <int> { 13, 55, 83 }); //Utilisation des dés pipés :P MagicItemCreation.Instantiate(dices); //Portee = melee Range chosenRange = Range.Melee; MagicItemCreation.Instance.ChosenRange = chosenRange; //Creation MagicItem item = MagicItemCreation.Instance.Create(ItemQuality.Major); item.GetType().Should().Be(typeof(MagicWeapon)); MagicWeapon weapon = item as MagicWeapon; weapon.Quality.Should().Be(ItemQuality.Major); weapon.Type.Should().Be(ItemType.Weapon); weapon.Price.Should().Be(60312); weapon.Abilities.Should().BeNull(); weapon.Name.Should().Be("Dwarven thrower"); weapon.Range.Should().Be(chosenRange); }
public void MinorWeaponWithOneSpecialAbility() { //On prepare les jets : // 7 -> Weapon // 93 -> Special ability // 78 -> Arme +2 qui coute 8000 po // 89 -> capa "Throwing" qui fait +1, donc arme +2 qui coute 18000 MockDices dices = new MockDices(new List <int> { 7, 93, 78, 89 }); //Utilisation des dés pipés :P MagicItemCreation.Instantiate(dices); //Portee = melee Range chosenRange = Range.Melee; MagicItemCreation.Instance.ChosenRange = chosenRange; //Creation MagicItem item = MagicItemCreation.Instance.Create(ItemQuality.Minor); item.GetType().Should().Be(typeof(MagicWeapon)); MagicWeapon weapon = item as MagicWeapon; weapon.Quality.Should().Be(ItemQuality.Minor); weapon.Type.Should().Be(ItemType.Weapon); weapon.Price.Should().Be(18000); weapon.AlterationBonus.Should().Be(2); weapon.Abilities.Should().NotBeNull(); weapon.Abilities.Count.Should().Be(1); weapon.Abilities[0].Should().Be("Throwing"); weapon.Range.Should().Be(chosenRange); }
public void SameAbilityIsRerolled() { //On prepare les jets : // 13 -> Weapon // 93 -> Special ability // 34 -> Arme +3 qui coute 18000 po // 98 -> double capas // 41 -> capa "Keen" qui fait +1 // 41 -> capa "Keen" une deuxieme fois, normalement rerollé // 41 -> capa "Keen" une troisième fois, normalement rerollé // 41 -> capa "Keen" une quatrième fois, normalement rerollé // 41 -> capa "Keen" une cinquième fois, normalement rerollé // 68 -> capa "Vicious" qui fait +1, donc arme +3 qui coute 50000 MockDices dices = new MockDices(new List <int> { 13, 93, 34, 98, 41, 41, 41, 41, 41, 68 }); //Utilisation des dés pipés :P MagicItemCreation.Instantiate(dices); //Portee = melee Range chosenRange = Range.Melee; MagicItemCreation.Instance.ChosenRange = chosenRange; //Creation MagicItem item = MagicItemCreation.Instance.Create(ItemQuality.Medium); item.GetType().Should().Be(typeof(MagicWeapon)); MagicWeapon weapon = item as MagicWeapon; weapon.Quality.Should().Be(ItemQuality.Medium); weapon.Type.Should().Be(ItemType.Weapon); weapon.Price.Should().Be(50000); weapon.AlterationBonus.Should().Be(3); weapon.Abilities.Should().NotBeNull(); weapon.Abilities.Count.Should().Be(2); weapon.Abilities[0].Should().Be("Keen"); weapon.Abilities[1].Should().Be("Vicious"); weapon.Range.Should().Be(chosenRange); }
public void AbilityGoingOverPlusTenAreRerolled() { //On prepare les jets : // 13 -> Weapon // 93 -> Special ability // 43 -> Arme +5 qui coute 50000 po // 98 -> double capas // 85 -> capa "Brilliant energy" qui fait +4 // 57 -> capa "Icy burst" qui fait +2, normalement rerollé // 82 -> capa "Speed" qui fait +3, normalement rerollé // 26 -> capa "Throwing" qui fait +1, donc arme +5 qui coute 200000 MockDices dices = new MockDices(new List <int> { 13, 93, 43, 98, 85, 57, 82, 26 }); //Utilisation des dés pipés :P MagicItemCreation.Instantiate(dices); //Portee = melee Range chosenRange = Range.Melee; MagicItemCreation.Instance.ChosenRange = chosenRange; //Creation MagicItem item = MagicItemCreation.Instance.Create(ItemQuality.Major); item.GetType().Should().Be(typeof(MagicWeapon)); MagicWeapon weapon = item as MagicWeapon; weapon.Quality.Should().Be(ItemQuality.Major); weapon.Type.Should().Be(ItemType.Weapon); weapon.Price.Should().Be(200000); weapon.AlterationBonus.Should().Be(5); weapon.Abilities.Should().NotBeNull(); weapon.Abilities.Count.Should().Be(2); weapon.Abilities[0].Should().Be("Brilliant energy"); weapon.Abilities[1].Should().Be("Throwing"); weapon.Range.Should().Be(chosenRange); }
public void IncompatibleAbilityIsRerolled() { //On prepare les jets : // 13 -> Weapon // 93 -> Special ability // 15 -> Arme +2 qui coute 8000 po // 98 -> double capas // 86 -> capa "Holy" qui fait +2 // 92 -> capa "Unholy", incompatible normalement rerollé // 68 -> capa "Vicious" qui fait +1, donc arme +2 qui coute 50000 MockDices dices = new MockDices(new List <int> { 13, 93, 15, 98, 86, 92, 68 }); //Utilisation des dés pipés :P MagicItemCreation.Instantiate(dices); //Portee = melee Range chosenRange = Range.Melee; MagicItemCreation.Instance.ChosenRange = chosenRange; //Creation MagicItem item = MagicItemCreation.Instance.Create(ItemQuality.Medium); item.GetType().Should().Be(typeof(MagicWeapon)); MagicWeapon weapon = item as MagicWeapon; weapon.Quality.Should().Be(ItemQuality.Medium); weapon.Type.Should().Be(ItemType.Weapon); weapon.Price.Should().Be(50000); weapon.AlterationBonus.Should().Be(2); weapon.Abilities.Should().NotBeNull(); weapon.Abilities.Count.Should().Be(2); weapon.Abilities[0].Should().Be("Holy"); weapon.Abilities[1].Should().Be("Vicious"); weapon.Range.Should().Be(chosenRange); }
public void AbilitiesCorrectlyAffectPriceAbovePlusFive() { //On prepare les jets : // 13 -> Weapon // 93 -> Special ability // 61 -> Arme +4 qui coute 32000 po // 98 -> double capas // 86 -> capa "Holy" qui fait +2 // 68 -> capa "Vicious" qui fait +1, donc arme +2 qui coute 98000 MockDices dices = new MockDices(new List <int> { 13, 93, 61, 98, 86, 68 }); //Utilisation des dés pipés :P MagicItemCreation.Instantiate(dices); //Portee = melee Range chosenRange = Range.Melee; MagicItemCreation.Instance.ChosenRange = chosenRange; //Creation MagicItem item = MagicItemCreation.Instance.Create(ItemQuality.Medium); item.GetType().Should().Be(typeof(MagicWeapon)); MagicWeapon weapon = item as MagicWeapon; weapon.Quality.Should().Be(ItemQuality.Medium); weapon.Type.Should().Be(ItemType.Weapon); weapon.Price.Should().Be(98000); weapon.AlterationBonus.Should().Be(4); weapon.Abilities.Should().NotBeNull(); weapon.Abilities.Count.Should().Be(2); weapon.Abilities[0].Should().Be("Holy"); weapon.Abilities[1].Should().Be("Vicious"); weapon.Range.Should().Be(chosenRange); }
public void PlusFiveWeaponGettingVorpalHasOnlyOneAbility() { //On prepare les jets : // 13 -> Weapon // 93 -> Special ability // 43 -> Arme +5 qui coute 50000 po // 98 -> double capas // 89 -> capa "Vorpal" qui fait +5 // 2 -> capa "Bane" qui fait +1, jamais atteint, donc arme +5 qui coute 200000 MockDices dices = new MockDices(new List <int> { 13, 93, 43, 98, 89, 2 }); //Utilisation des dés pipés :P MagicItemCreation.Instantiate(dices); //Portee = melee Range chosenRange = Range.Melee; MagicItemCreation.Instance.ChosenRange = chosenRange; //Creation MagicItem item = MagicItemCreation.Instance.Create(ItemQuality.Major); item.GetType().Should().Be(typeof(MagicWeapon)); MagicWeapon weapon = item as MagicWeapon; weapon.Quality.Should().Be(ItemQuality.Major); weapon.Type.Should().Be(ItemType.Weapon); weapon.Price.Should().Be(200000); weapon.AlterationBonus.Should().Be(5); weapon.Abilities.Should().NotBeNull(); weapon.Abilities.Count.Should().Be(1); weapon.Abilities[0].Should().Be("Vorpal"); weapon.Range.Should().Be(chosenRange); }