private IReadOnlyList <IReferencedMatchers> CreateReferencedMatchers( IReadOnlyList <SkillDefinition> skills, GemTags gemTags) => new IReferencedMatchers[] { new ActionMatchers(_builderFactories.ActionBuilders, _builderFactories.EffectBuilders), new AilmentMatchers(_builderFactories.EffectBuilders.Ailment), new ChargeTypeMatchers(_builderFactories.ChargeTypeBuilders), new DamageTypeMatchers(_builderFactories.DamageTypeBuilders), new BuffMatchers(_builderFactories.BuffBuilders), new KeywordMatchers(_builderFactories.KeywordBuilders), new SkillMatchers(skills, _builderFactories.SkillBuilders.FromId), new GemTagMatchers(gemTags, _builderFactories.GemTagBuilders), };
private ParsingData( IBuilderFactories builderFactories, SkillDefinitions skills, PassiveTreeDefinition passives, CharacterBaseStats characterBaseStats, MonsterBaseStats monsterBaseStats, GemTags gemTags) { _builderFactories = builderFactories; _statMatchers = new Lazy <IReadOnlyList <IStatMatchers> >( () => CreateStatMatchers(ModifierBuilder.Empty, passives.Nodes)); _referencedMatchers = new Lazy <IReadOnlyList <IReferencedMatchers> >( () => CreateReferencedMatchers(skills.Skills, gemTags)); _givenStats = new Lazy <IReadOnlyList <IGivenStats> >( () => new GivenStatsCollection(builderFactories, characterBaseStats, monsterBaseStats)); _statMatchersSelector = new Lazy <StatMatchersSelector>( () => new StatMatchersSelector(StatMatchers)); }
public GemTagMatchers(GemTags gemTags, IGemTagBuilders gemTagBuilders) { _gemTags = gemTags; _gemTagBuilders = gemTagBuilders; }