Class DamageFormula

Namespace
SurvivorsMaker.Core
Assembly
SurvivorsMaker.Core.dll

Damage of one hit: (base + Σ stat × coefficient) × (1 + percent stat / 100), rounded, at least MinimumDamage. Every part is a setting so games can change the formula.

public sealed class DamageFormula
Inheritance
DamageFormula
Inherited Members

Constructors

DamageFormula()

public DamageFormula()

Fields

MinimumDamage

public int MinimumDamage

Field Value

int

PercentStat

Stat read as a percent multiplier. Empty to turn it off.

public string PercentStat

Field Value

string

Rounding

public MidpointRounding Rounding

Field Value

MidpointRounding

Methods

Hit(int, IEnumerable<StatScaling>, StatBuild)

Evaluates base damage plus stat scaling and applies configured damage bounds and rounding.

public int Hit(int baseDamage, IEnumerable<StatScaling> scaling, StatBuild build)

Parameters

baseDamage int
scaling IEnumerable<StatScaling>
build StatBuild

Returns

int

Hit(int, IEnumerable<StatScaling>, Func<string, int>)

Evaluates base damage plus stat scaling and applies configured damage bounds and rounding.

public int Hit(int baseDamage, IEnumerable<StatScaling> scaling, Func<string, int> stat)

Parameters

baseDamage int
scaling IEnumerable<StatScaling>
stat Func<string, int>

Returns

int