public void NotCursedIfNoMagic() { mockBooleanPercentileSelector.Setup(s => s.SelectFrom(TableNameConstants.Percentiles.Set.IsItemCursed)).Returns(true); var cursed = curseGenerator.HasCurse(false); Assert.That(cursed, Is.False); }
public Item GenerateAtPower(string power) { var item = innerGenerator.GenerateAtPower(power); if (curseGenerator.HasCurse(item.IsMagical)) { var curse = curseGenerator.GenerateCurse(); if (curse == TableNameConstants.Percentiles.Set.SpecificCursedItems) { return(curseGenerator.GenerateSpecificCursedItem()); } item.Magic.Curse = curse; } return(item); }
public Item GenerateRandom(string power) { var item = innerGenerator.GenerateRandom(power); if (curseGenerator.HasCurse(item)) { var canBeSpecific = curseGenerator.ItemTypeCanBeSpecificCursedItem(item.ItemType); do { item.Magic.Curse = curseGenerator.GenerateCurse(); }while (item.Magic.Curse == TableNameConstants.Percentiles.Set.SpecificCursedItems && !canBeSpecific); if (item.Magic.Curse == TableNameConstants.Percentiles.Set.SpecificCursedItems && canBeSpecific) { return(curseGenerator.GenerateSpecificCursedItem(item.ItemType)); } } return(item); }