public List<string> GetPrimaryStatStrings()
{
List<string> retList = new List<string>();
if (Dexterity > 0) retList.Add(String.Format("+{0} Dexterity", Dexterity));
if (Intelligence > 0) retList.Add(String.Format("+{0} Intelligence", Intelligence));
if (Strength > 0) retList.Add(String.Format("+{0} Strength", Strength));
if (Vitality > 0) retList.Add(String.Format("+{0} Vitality", Vitality));
if (ResistAll > 0) retList.Add(String.Format("+{0} Resistance to All Elements", ResistAll));
if (LifePercent > 0) retList.Add(String.Format("+{0}% Life", LifePercent));
if (LifeOnHit > 0) retList.Add(String.Format("+{0} Life per Hit", LifeOnHit));
if (LifeSteal > 0) retList.Add(String.Format("Life Steal {0}%", LifeSteal));
if (HealthPerSpiritSpent > 0) retList.Add(String.Format("Health Per Spirit Spent {0}", HealthPerSpiritSpent));
if (HealthPerSecond > 0) retList.Add(String.Format("Regenerates {0} Life per Second", HealthPerSecond));
if (MovementSpeed > 0) retList.Add(String.Format("+{0}% Movement Speed", MovementSpeed));
if (Sockets > 0) retList.Add(String.Format("{0} Sockets", Sockets));
if (CritPercent > 0) retList.Add(String.Format("Critical Hit Chance Increased by {0}%", CritPercent));
if (CritDamagePercent > 0) retList.Add(String.Format("Critical Hit Damage Increased by {0}%", CritDamagePercent));
if (MinDamage > 0)
{
//if (MaxDamage > 0) retList.Add(String.Format("MaxDamage {0}", MaxDamage));
retList.Add(String.Format("+{0}-{1} Damage", MinDamage, MaxDamage));
}
else if (MinDamageFire > 0)
{
retList.Add(String.Format("+{0}-{1} Fire Damage", MinDamageFire, MaxDamageFire));
}
else if (MinDamageLightning > 0)
{
retList.Add(String.Format("+{0}-{1} Lightning Damage", MinDamageLightning, MaxDamageLightning));
}
else if (MinDamageCold > 0)
{
retList.Add(String.Format("+{0}-{1} Cold Damage", MinDamageCold, MaxDamageCold));
}
else if (MinDamagePoison > 0)
{
retList.Add(String.Format("+{0}-{1} Poison Damage", MinDamagePoison, MaxDamagePoison));
}
else if (MinDamageArcane > 0)
{
retList.Add(String.Format("+{0}-{1} Arcane Damage", MinDamageArcane, MaxDamageArcane));
}
else if (MinDamageHoly > 0)
{
retList.Add(String.Format("+{0}-{1} Holy Damage", MinDamageHoly, MaxDamageHoly));
}
if (AttackSpeedPercent > 0) retList.Add(String.Format("Attack Speed Increased by {0}%", AttackSpeedPercent));
if (AttackSpeedPercentBonus > 0) retList.Add(String.Format("Increases Attack Speed by {0}%", AttackSpeedPercentBonus));
if (BlockChanceBonus > 0) retList.Add(String.Format("+{0}% Chance to Block", BlockChanceBonus));
if (OnHitAreaDamageProcChance > 0) retList.Add(String.Format("Chance to Deal {0}% Area Damage on Hit", OnHitAreaDamageProcChance));
if (PowerCooldownReductionPercent > 0) retList.Add(String.Format("Reduces cooldown of all skills by {0}%", PowerCooldownReductionPercent));
if (ResourceCostReductionPercent > 0) retList.Add(String.Format("ResourceCostReductionPercent {0}", ResourceCostReductionPercent));
//
if (ArcaneOnCrit > 0) retList.Add(String.Format("Critical hits grant {0} Arcane Power (Wizard Only)", ArcaneOnCrit));
if (ManaRegen > 0) retList.Add(String.Format("Increases Mana Regeneration by {0} per Second", ManaRegen));
if (SpiritRegen > 0) retList.Add(String.Format("Increases Spirit Regeneration by {0} per Second", SpiritRegen));
if (HatredRegen > 0) retList.Add(String.Format("Increases Hatred Regeneration by {0} per second", HatredRegen));
if (ArmorBonus > 0) retList.Add(String.Format("+{0} Armor", ArmorBonus));
if (WeaponDamagePercent > 0) retList.Add(String.Format("WeaponDamagePercent {0}", WeaponDamagePercent));
return retList;
}