diff --git a/NetStone/Model/Parseables/Character/CharacterAttributes.cs b/NetStone/Model/Parseables/Character/CharacterAttributes.cs index 6568a48..a65c407 100644 --- a/NetStone/Model/Parseables/Character/CharacterAttributes.cs +++ b/NetStone/Model/Parseables/Character/CharacterAttributes.cs @@ -83,16 +83,19 @@ public CharacterAttributes(HtmlNode rootNode, CharacterAttributesDefinition defi /// /// This characters' Attack Magic Potency value. /// - public int AttackMagicPotency => int.Parse(Parse(this.definition.AttackMagicPotency)); + /// This value is only set for disciples of war/magic. + public int? AttackMagicPotency => MpGpCpParameterName == "MP" ? int.Parse(Parse(this.definition.AttackMagicPotency)) : null; /// /// This characters' Healing Magic Potency value. /// - public int HealingMagicPotency => int.Parse(Parse(this.definition.HealingMagicPotency)); + /// This value is only set for disciples of war/magic. + public int? HealingMagicPotency => MpGpCpParameterName == "MP" ? int.Parse(Parse(this.definition.HealingMagicPotency)) : null; /// /// This characters' Spell Speed value. /// + /// This value is only set for disciples of war/magic. public int? SpellSpeed => int.TryParse(Parse(this.definition.SpellSpeed), out var result) ? result : null; /// @@ -105,6 +108,30 @@ public CharacterAttributes(HtmlNode rootNode, CharacterAttributesDefinition defi /// public int? Piety => int.TryParse(Parse(this.definition.Piety), out var result) ? result : null; + /// + /// This characters' Craftmanship value. + /// + /// This value is only set for disciples of the hand. + public int? Craftmanship => MpGpCpParameterName == "CP" ? AttackMagicPotencyValue : null; + + /// + /// This characters' Control value. + /// + /// This value is only set for disciples of the hand. + public int? Control => MpGpCpParameterName == "CP" ? HealingMagicPotencyValue : null; + + /// + /// This characters' Gathering value. + /// + /// This value is only set for disciples of the land. + public int? Gathering => MpGpCpParameterName == "GP" ? AttackMagicPotencyValue : null; + + /// + /// This characters' Perception value. + /// + /// This value is only set for disciples of the land. + public int? Perception => MpGpCpParameterName == "GP" ? HealingMagicPotencyValue : null; + /// /// This characters' HP value. /// @@ -119,4 +146,8 @@ public CharacterAttributes(HtmlNode rootNode, CharacterAttributesDefinition defi /// Value indicating which of MP, GP, or CP is indicated by . /// public string MpGpCpParameterName => Parse(this.definition.MpGpCpParameterName); + + private int AttackMagicPotencyValue => int.Parse(Parse(this.definition.AttackMagicPotency)); + + private int HealingMagicPotencyValue => int.Parse(Parse(this.definition.HealingMagicPotency)); } \ No newline at end of file diff --git a/NetStone/NetStone.xml b/NetStone/NetStone.xml index 5569193..d0d68bb 100644 --- a/NetStone/NetStone.xml +++ b/NetStone/NetStone.xml @@ -2001,16 +2001,19 @@ This characters' Attack Magic Potency value. + This value is only set for disciples of war/magic. This characters' Healing Magic Potency value. + This value is only set for disciples of war/magic. This characters' Spell Speed value. + This value is only set for disciples of war/magic. @@ -2022,6 +2025,30 @@ This characters' Piety value. + + + This characters' Craftmanship value. + + This value is only set for disciples of the hand. + + + + This characters' Control value. + + This value is only set for disciples of the hand. + + + + This characters' Gathering value. + + This value is only set for disciples of the land. + + + + This characters' Perception value. + + This value is only set for disciples of the land. + This characters' HP value.