Exemple #1
0
 protected StatBuilderWithPool(IStatFactory statFactory, ICoreBuilder <Pool> pool, string identitySuffix)
     : this(statFactory,
            new CoreStatBuilderFromCoreBuilder <Pool>(pool,
                                                      (e, p) => statFactory.FromIdentity(p.ToString() + identitySuffix, e, typeof(int))),
            pool,
            identitySuffix)
 {
 }
        private IEnumerable <IStat> SelectSkillStats(
            IEnumerable <Keyword> keywords, Entity entity, Type dataType,
            [CallerMemberName] string identitySuffix = null)
        {
            var keywordList = keywords.ToList();

            return(from skill in _skills
                   where !skill.IsSupport && skill.ActiveSkill.Keywords.ContainsAll(keywordList)
                   let identity = skill.Id + " . " + identitySuffix
                                  select _statFactory.FromIdentity(identity, entity, dataType));
        }
Exemple #3
0
 private ICoreStatBuilder CoreStat(Type dataType, [CallerMemberName] string identitySuffix = "") =>
 CoreStat((e, t) => _statFactory.FromIdentity(t.GetName() + "." + identitySuffix, e, dataType));
Exemple #4
0
 private IStatBuilder CreateStatBuilder(Type dataType, [CallerMemberName] string identitySuffix = null)
 => new StatBuilder(_statFactory, new CoreStatBuilderFromCoreBuilder <SkillDefinition>(_coreBuilder,
                                                                                       (e, d) => _statFactory.FromIdentity($"{d.Id}.{identitySuffix}", e, dataType)));
Exemple #5
0
 public static ICoreStatBuilder FromIdentity(
     IStatFactory statFactory, string identity, Type dataType,
     ExplicitRegistrationType explicitRegistrationType = null) =>
 new LeafCoreStatBuilder(
     entity => statFactory.FromIdentity(identity, entity, dataType, explicitRegistrationType));
 private IEnumerable <IStat> SelectSkillStats(
     IEnumerable <Keyword> keywords, Entity entity, Type dataType,
     [CallerMemberName] string identitySuffix = "") =>
 SelectSkillStats(keywords, s => _statFactory.FromIdentity(s.Id + " . " + identitySuffix, entity, dataType));
Exemple #7
0
 private ICoreStatBuilder CoreStat(Type dataType, [CallerMemberName] string identitySuffix = null) =>
 CoreStat((e, t) => _statFactory.FromIdentity($"{t}.{identitySuffix}", e, dataType));
Exemple #8
0
 private IEnumerable <IStat> SelectSkillStats(
     IEnumerable <Keyword> keywords, Entity entity, Type dataType,
     [CallerMemberName] string identitySuffix = null)
 => from skill in _selectSkills(keywords)
 let identity = $"{skill}.{identitySuffix}"
                select _statFactory.FromIdentity(identity, entity, dataType);