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.