new FormAndStatMatcherCollection(_modifierBuilder, ValueFactory) { // attributes // offense // - damage { @"adds # to # ({DamageTypeMatchers}) damage", (MinBaseAdd, MaxBaseAdd), (Values[0], Values[1]), Reference.AsDamageType.Damage },
new FormAndStatMatcherCollection(_modifierBuilder, ValueFactory) { // attributes // offense // - damage { @"adds # to # ({DamageTypeMatchers}) damage", BaseAdd, ValueFactory.FromMinAndMax(Values[0], Values[1]), Reference.AsDamageType.Damage.WithHits },
=> new DataDrivenMechanicCollection(_modifierBuilder, BuilderFactories) { // skill hit damage // - DPS { TotalOverride, MetaStats.SkillDpsWithHits, MetaStats.AverageHitDamage.Value * ValueFactory.If(Stat.HitRate.IsSet).Then(Stat.HitRate.Value) .Else(MetaStats.CastRate.Value * MetaStats.SkillNumberOfHitsPerCast.Value) },
private GivenStatCollection CreateCollection() => new GivenStatCollection(_modifierBuilder, ValueFactory) { { TotalOverride, MetaStats.SkillNumberOfHitsPerCast, Projectile.Count.Value, IsMainSkill("Barrage", 1) },
new FormAndStatMatcherCollection(_modifierBuilder, ValueFactory) { { @"\+# to level of socketed support gems", BaseAdd, Value, Gem.IncreaseSupportLevel },
new SpecialMatcherCollection(_modifierBuilder, ValueFactory) { { @"\+# to level of socketed support gems", BaseAdd, Value, Gem.IncreaseLevel(onlySupportGems: true) },
private GivenStatCollection CreateCollection() => new GivenStatCollection(_modifierBuilder, ValueFactory) { { TotalOverride, Skills.FromId("ArcticArmour").Buff.EffectOn(Self), 0, Flag.AlwaysStationary.Not },