public Modifier(IReadOnlyList <IStat> stats, Form form, IValue value, ModifierSource source) : base(true) { if (form == Form.TotalOverride && source is ModifierSource.Local) { throw new ArgumentException("TotalOverride modifiers with a local ModifierSource don't do anything"); } Stats = stats; Form = form; Value = value; Source = source; }
public PathDefinition(ModifierSource modifierSource, params IStat[] conversionStats) : base(true) { ModifierSource = modifierSource.CanonicalSource; ConversionStats = conversionStats; }
public static Modifier MockModifier( IReadOnlyList <IStat> stats = null, Form form = Form.BaseAdd, IValue value = null, ModifierSource source = null) => new Modifier(stats ?? new IStat[0], form, value ?? Mock.Of <IValue>(), source ?? new ModifierSource.Global());
public static Modifier MockModifier( IStat stat, Form form = Form.BaseAdd, IValue value = null, ModifierSource source = null) => MockModifier(new[] { stat }, form, value, source);