Table of Contents

Class CharacterStats

Namespace
Nekoyume.Model.Stat
Assembly
Lib9c.dll

Stat is built with _baseStats based on level, _equipmentStats based on equipments, _consumableStats based on consumables, _buffStats based on buffs and _optionalStats for runes, etc... Stat of character is built with total of these stats.

[Serializable]
public class CharacterStats : Stats, IStats, IBaseAndAdditionalStats, ICloneable
Inheritance
CharacterStats
Implements
Inherited Members

Constructors

CharacterStats(CharacterStats)

public CharacterStats(CharacterStats value)

Parameters

value CharacterStats

CharacterStats(Row, int, IReadOnlyList<StatModifier>)

public CharacterStats(CharacterSheet.Row row, int level, IReadOnlyList<StatModifier> initialStatModifiers = null)

Parameters

row CharacterSheet.Row
level int
initialStatModifiers IReadOnlyList<StatModifier>

CharacterStats(WaveStatData)

public CharacterStats(WorldBossCharacterSheet.WaveStatData stat)

Parameters

stat WorldBossCharacterSheet.WaveStatData

Fields

StatWithoutBuffs

public readonly StatMap StatWithoutBuffs

Field Value

StatMap

Properties

AdditionalATK

public long AdditionalATK { get; }

Property Value

long

AdditionalArmorPenetration

public long AdditionalArmorPenetration { get; }

Property Value

long

AdditionalCDMG

public long AdditionalCDMG { get; }

Property Value

long

AdditionalCRI

public long AdditionalCRI { get; }

Property Value

long

AdditionalDEF

public long AdditionalDEF { get; }

Property Value

long

AdditionalDRR

public long AdditionalDRR { get; }

Property Value

long

AdditionalDRV

public long AdditionalDRV { get; }

Property Value

long

AdditionalHIT

public long AdditionalHIT { get; }

Property Value

long

AdditionalHP

public long AdditionalHP { get; }

Property Value

long

AdditionalSPD

public long AdditionalSPD { get; }

Property Value

long

AdditionalThorn

public long AdditionalThorn { get; }

Property Value

long

BaseATK

public long BaseATK { get; }

Property Value

long

BaseArmorPenetration

public long BaseArmorPenetration { get; }

Property Value

long

BaseCDMG

public long BaseCDMG { get; }

Property Value

long

BaseCRI

public long BaseCRI { get; }

Property Value

long

BaseDEF

public long BaseDEF { get; }

Property Value

long

BaseDRR

public long BaseDRR { get; }

Property Value

long

BaseDRV

public long BaseDRV { get; }

Property Value

long

BaseHIT

public long BaseHIT { get; }

Property Value

long

BaseHP

public long BaseHP { get; }

Property Value

long

BaseSPD

public long BaseSPD { get; }

Property Value

long

BaseStats

public IStats BaseStats { get; }

Property Value

IStats

BaseThorn

public long BaseThorn { get; }

Property Value

long

BuffStats

public IStats BuffStats { get; }

Property Value

IStats

CollectionStats

public IStats CollectionStats { get; }

Property Value

IStats

ConsumableStats

public IStats ConsumableStats { get; }

Property Value

IStats

CostumeStats

public IStats CostumeStats { get; }

Property Value

IStats

EquipmentStats

public IStats EquipmentStats { get; }

Property Value

IStats

HpIncreasingModifier

public long HpIncreasingModifier { set; }

Property Value

long

IsArenaCharacter

public bool IsArenaCharacter { set; }

Property Value

bool

Level

public int Level { get; }

Property Value

int

RuneStats

public IStats RuneStats { get; }

Property Value

IStats

Methods

AddBuff(StatBuff, DeBuffLimitSheet, bool)

public void AddBuff(StatBuff buff, DeBuffLimitSheet deBuffLimitSheet, bool updateImmediate = true)

Parameters

buff StatBuff
deBuffLimitSheet DeBuffLimitSheet
updateImmediate bool

AddCostume(IEnumerable<StatModifier>)

public void AddCostume(IEnumerable<StatModifier> statModifiers)

Parameters

statModifiers IEnumerable<StatModifier>

AddRune(IEnumerable<StatModifier>)

public void AddRune(IEnumerable<StatModifier> statModifiers)

Parameters

statModifiers IEnumerable<StatModifier>

AddRuneStat(RuneOptionInfo, int)

public void AddRuneStat(RuneOptionSheet.Row.RuneOptionInfo optionInfo, int runeLevelBonus)

Parameters

optionInfo RuneOptionSheet.Row.RuneOptionInfo
runeLevelBonus int

Clone()

Creates a new object that is a copy of the current instance.

public override object Clone()

Returns

object

A new object that is a copy of this instance.

ConfigureStats(IReadOnlyCollection<Equipment>, IReadOnlyCollection<Costume>, IReadOnlyCollection<RuneOptionInfo>, CostumeStatSheet, List<StatModifier>, int)

public void ConfigureStats(IReadOnlyCollection<Equipment> equipments, IReadOnlyCollection<Costume> costumes, IReadOnlyCollection<RuneOptionSheet.Row.RuneOptionInfo> runeOptions, CostumeStatSheet costumeStatSheet, List<StatModifier> collectionStatModifiers, int runeLevelBonus)

Parameters

equipments IReadOnlyCollection<Equipment>
costumes IReadOnlyCollection<Costume>
runeOptions IReadOnlyCollection<RuneOptionSheet.Row.RuneOptionInfo>
costumeStatSheet CostumeStatSheet
collectionStatModifiers List<StatModifier>
runeLevelBonus int

GetAdditionalStats(bool)

public IEnumerable<(StatType statType, long additionalValue)> GetAdditionalStats(bool ignoreZero = false)

Parameters

ignoreZero bool

Returns

IEnumerable<(StatType statType, long baseValue)>

GetBaseAndAdditionalStats(bool)

public IEnumerable<(StatType statType, long baseValue, long additionalValue)> GetBaseAndAdditionalStats(bool ignoreZero = false)

Parameters

ignoreZero bool

Returns

IEnumerable<(StatType statType, long baseValue, long additionalValue)>

GetBaseStats(bool)

public IEnumerable<(StatType statType, long baseValue)> GetBaseStats(bool ignoreZero = false)

Parameters

ignoreZero bool

Returns

IEnumerable<(StatType statType, long baseValue)>

IncreaseHpForArena()

Increases the HP of the character for the arena.

public void IncreaseHpForArena()

RemoveBuff(StatBuff, bool)

public void RemoveBuff(StatBuff buff, bool updateImmediate = true)

Parameters

buff StatBuff
updateImmediate bool

SetBuffs(IEnumerable<StatBuff>, DeBuffLimitSheet, bool)

Set stats based on buffs.

public CharacterStats SetBuffs(IEnumerable<StatBuff> value, DeBuffLimitSheet deBuffLimitSheet, bool updateImmediate = true)

Parameters

value IEnumerable<StatBuff>
deBuffLimitSheet DeBuffLimitSheet
updateImmediate bool

Returns

CharacterStats

SetCollections(IEnumerable<StatModifier>, bool)

public CharacterStats SetCollections(IEnumerable<StatModifier> statModifiers, bool updateImmediate = true)

Parameters

statModifiers IEnumerable<StatModifier>
updateImmediate bool

Returns

CharacterStats

SetConsumables(IEnumerable<Consumable>, bool)

Set stats based on consumables. Also recalculates stats from buffs.

public CharacterStats SetConsumables(IEnumerable<Consumable> consumables, bool updateImmediate = true)

Parameters

consumables IEnumerable<Consumable>
updateImmediate bool

Returns

CharacterStats

SetCostume(IEnumerable<StatModifier>)

public void SetCostume(IEnumerable<StatModifier> statModifiers)

Parameters

statModifiers IEnumerable<StatModifier>

SetCostumeStat(IReadOnlyCollection<Costume>, CostumeStatSheet)

public void SetCostumeStat(IReadOnlyCollection<Costume> costumes, CostumeStatSheet costumeStatSheet)

Parameters

costumes IReadOnlyCollection<Costume>
costumeStatSheet CostumeStatSheet

SetEquipments(IEnumerable<Equipment>, EquipmentItemSetEffectSheet, bool)

Set stats based on equipments. Also recalculates stats from consumables and buffs.

public CharacterStats SetEquipments(IEnumerable<Equipment> equipments, EquipmentItemSetEffectSheet sheet, bool updateImmediate = true)

Parameters

equipments IEnumerable<Equipment>
sheet EquipmentItemSetEffectSheet
updateImmediate bool

Returns

CharacterStats

SetRunes(IEnumerable<StatModifier>, bool)

Set stats based on runes.

public CharacterStats SetRunes(IEnumerable<StatModifier> value, bool updateImmediate = true)

Parameters

value IEnumerable<StatModifier>
updateImmediate bool

Returns

CharacterStats

SetStats(int, bool)

Set base stats based on character level.

public CharacterStats SetStats(int level, bool updateImmediate = true)

Parameters

level int
updateImmediate bool

Returns

CharacterStats