public TemplateManager(IDataDirectoryCollection collection, TemplateCollectionType types) { _dictionary = new Dictionary <Type, ITemplateCollection> { [typeof(ItemTemplate)] = new ItemTemplateCollection(collection), [typeof(FieldTemplate)] = new FieldTemplateCollection(collection), [typeof(NPCTemplate)] = new NPCTemplateCollection(collection), [typeof(MakeCharInfoTemplate)] = new MakeCharInfoTemplateCollection(collection), [typeof(CommodityTemplate)] = new CommodityTemplateCollection(collection), [typeof(CashPackageTemplate)] = new CashPackageTemplateCollection(collection), [typeof(ModifiedCommodityTemplate)] = new ModifiedCommodityTemplateCollection(collection), [typeof(BestTemplate)] = new BestTemplateCollection(collection), [typeof(NotSaleTemplate)] = new NotSaleTemplateCollection(collection), [typeof(CategoryDiscountTemplate)] = new CategoryDiscountTemplateCollection(collection), [typeof(SetItemInfoTemplate)] = new SetItemInfoTemplateCollection(collection), [typeof(ItemOptionTemplate)] = new ItemOptionTemplateCollection(collection), [typeof(MobTemplate)] = new MobTemplateCollection(collection), [typeof(ContinentTemplate)] = new ContinentTemplateCollection(collection), [typeof(ReactorTemplate)] = new ReactorTemplateCollection(collection), [typeof(SkillTemplate)] = new SkillTemplateCollection(collection), [typeof(QuestTemplate)] = new QuestTemplateCollection(collection), [typeof(FieldStringTemplate)] = new FieldStringTemplateCollection(collection), [typeof(ItemStringTemplate)] = new ItemStringTemplateCollection(collection), [typeof(SkillStringTemplate)] = new SkillStringTemplateCollection(collection), [typeof(QuestStringTemplate)] = new QuestStringTemplateCollection(collection), [typeof(NPCShopTemplate)] = new NPCShopTemplateCollection(collection), [typeof(RewardTemplate)] = new RewardTemplateCollection(collection) } .Where(c => types.HasFlag(c.Value.Type)) .ToImmutableDictionary(kv => kv.Key, kv => kv.Value); }
public TemplateProvider(TemplateCollectionType type) { _type = type; }