示例#1
0
 public ItemsGenerator(ITypeAndAmountPercentileSelector typeAndAmountPercentileSelector, IMundaneItemGeneratorRuntimeFactory mundaneItemGeneratorFactory, IPercentileSelector percentileSelector, IMagicalItemGeneratorRuntimeFactory magicalItemGeneratorFactory, IRangeAttributesSelector rangeAttributesSelector)
 {
     this.typeAndAmountPercentileSelector = typeAndAmountPercentileSelector;
     this.mundaneItemGeneratorFactory     = mundaneItemGeneratorFactory;
     this.percentileSelector          = percentileSelector;
     this.magicalItemGeneratorFactory = magicalItemGeneratorFactory;
     this.rangeAttributesSelector     = rangeAttributesSelector;
 }
        public EncounterTreasureGenerator(ICoinGenerator coinGenerator, IGoodsGenerator goodsGenerator, IItemsGenerator itemsGenerator, IAdjustmentSelector adjustmentSelector,
            IBooleanPercentileSelector booleanPercentileSelector, ICollectionSelector collectionSelector, IMagicalItemGeneratorRuntimeFactory magicalItemGeneratorRuntimeFactory, IMundaneItemGeneratorRuntimeFactory mundaneItemGeneratorRuntimeFactory)
        {
            this.coinGenerator = coinGenerator;
            this.goodsGenerator = goodsGenerator;
            this.itemsGenerator = itemsGenerator;
            this.adjustmentSelector = adjustmentSelector;
            this.booleanPercentileSelector = booleanPercentileSelector;
            this.collectionSelector = collectionSelector;
            this.magicalItemGeneratorRuntimeFactory = magicalItemGeneratorRuntimeFactory;
            this.mundaneItemGeneratorRuntimeFactory = mundaneItemGeneratorRuntimeFactory;

            subTypeRegex = new Regex(RegexConstants.DescriptionPattern);
            itemTypeRegex = new Regex(RegexConstants.ItemTypePattern);
            itemBonusRegex = new Regex(RegexConstants.ItemBonusPattern);
            specialAbilityRegex = new Regex(RegexConstants.SpecialAbilitiesPattern);
            traitRegex = new Regex(RegexConstants.TraitPattern);
        }
        public void Setup()
        {
            mockMagicalItemGenerators = new Dictionary <string, Mock <MagicalItemGenerator> >();
            mockMagicalItemGenerators[ItemTypeConstants.Armor]        = new Mock <MagicalItemGenerator>();
            mockMagicalItemGenerators[ItemTypeConstants.Potion]       = new Mock <MagicalItemGenerator>();
            mockMagicalItemGenerators[ItemTypeConstants.Ring]         = new Mock <MagicalItemGenerator>();
            mockMagicalItemGenerators[ItemTypeConstants.Rod]          = new Mock <MagicalItemGenerator>();
            mockMagicalItemGenerators[ItemTypeConstants.Scroll]       = new Mock <MagicalItemGenerator>();
            mockMagicalItemGenerators[ItemTypeConstants.Staff]        = new Mock <MagicalItemGenerator>();
            mockMagicalItemGenerators[ItemTypeConstants.Wand]         = new Mock <MagicalItemGenerator>();
            mockMagicalItemGenerators[ItemTypeConstants.Weapon]       = new Mock <MagicalItemGenerator>();
            mockMagicalItemGenerators[ItemTypeConstants.WondrousItem] = new Mock <MagicalItemGenerator>();

            factory = new MagicalItemGeneratorRuntimeFactory(mockMagicalItemGenerators[ItemTypeConstants.Armor].Object, mockMagicalItemGenerators[ItemTypeConstants.Potion].Object,
                                                             mockMagicalItemGenerators[ItemTypeConstants.Ring].Object, mockMagicalItemGenerators[ItemTypeConstants.Rod].Object, mockMagicalItemGenerators[ItemTypeConstants.Scroll].Object,
                                                             mockMagicalItemGenerators[ItemTypeConstants.Staff].Object, mockMagicalItemGenerators[ItemTypeConstants.Wand].Object, mockMagicalItemGenerators[ItemTypeConstants.Weapon].Object,
                                                             mockMagicalItemGenerators[ItemTypeConstants.WondrousItem].Object);
        }